/* Options: Date: 2025-09-14 02:22:17 SwiftVersion: 6.0 Version: 8.52 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://production-eros-platform-apisubscription.azurewebsites.net/api //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True //MakePropertiesOptional: True IncludeTypes: SaveObjectConnection.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: False //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack /** * Inserts an object connection between 2 valid objects. */ // @Api(Description="Inserts an object connection between 2 valid objects.") public class SaveObjectConnection : IReturn, Codable { public typealias Return = ResponseStatus /** * Information to allow retrieval of the object from Eros that will be the 'From' object in the connection. */ // @ApiMember(DataType="SubscriptionObjectModel", Description="Information to allow retrieval of the object from Eros that will be the 'From' object in the connection.", IsRequired=true, Name="FromObject") public var fromObject:SubscriptionObjectModel? /** * Information to allow retrieval of the object from Eros that will be the 'To' object in the connection. */ // @ApiMember(DataType="SubscriptionObjectModel", Description="Information to allow retrieval of the object from Eros that will be the 'To' object in the connection.", IsRequired=true, Name="ToObject") public var toObject:SubscriptionObjectModel? /** * Guid representing the Connection Method to use to connect the objects with. */ // @ApiMember(DataType="Guid", Description="Guid representing the Connection Method to use to connect the objects with.", IsRequired=true, Name="RmsTableCtxIdConnectionMethod") public var rmsTableCtxIdConnectionMethod:String? required public init(){} } public protocol ISubscription { var suiteDataSourceInstanceId:String? { get set } var objectId:String? { get set } var alternateKey:String? { get set } var ignoreValidation:Bool? { get set } } public class SubscriptionObjectModel : ISubscription, Codable { /** * Guid representing the external systems datasource information. */ // @ApiMember(DataType="Guid", Description="Guid representing the external systems datasource information.", IsRequired=true, Name="SuiteDataSourceInstanceId", ParameterType="query") public var suiteDataSourceInstanceId:String? /** * The unique key that represents the object on the external system. */ // @ApiMember(DataType="string", Description="The unique key that represents the object on the external system.", IsRequired=true, Name="AlternateKey", ParameterType="query") public var alternateKey:String? /** * Guid of the object within Eros. If ObjectId is known, the external system may pass this instead of the alternate key. */ // @ApiMember(DataType="Guid", Description="Guid of the object within Eros. If ObjectId is known, the external system may pass this instead of the alternate key.", Name="ObjectId", ParameterType="query") public var objectId:String? /** * Guid of the RmsTableCtx within Eros. This is used if the alternate key is provided to identify the object to update. */ // @ApiMember(DataType="Guid", Description="Guid of the RmsTableCtx within Eros. This is used if the alternate key is provided to identify the object to update.", Name="RmsTableCtxId", ParameterType="query") public var rmsTableCtxId:String? /** * Validation ensures that this object has a value in alternateKey or ObjectId, ignoring validation skips this requirement. */ // @ApiMember(DataType="bool", Description="Validation ensures that this object has a value in alternateKey or ObjectId, ignoring validation skips this requirement.", Name="IgnoreValidation", ParameterType="query") public var ignoreValidation:Bool? required public init(){} }