/* Options: Date: 2025-08-04 04:10:06 SwiftVersion: 5.0 Version: 6.110 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://szallitoiportal-be.veolia.hu //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True IncludeTypes: BrowseContractFileContent.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/user/{supplieruserid}/contract/{contractid}/contractversion/{contractversionid}/file/{contractfileid}/content", "GET") public class BrowseContractFileContent : ContractVersionBase, IReturn, IGet { public typealias Return = FileDownloadResult public var contractFileId:Int required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case contractFileId } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) contractFileId = try container.decodeIfPresent(Int.self, forKey: .contractFileId) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if contractFileId != nil { try container.encode(contractFileId, forKey: .contractFileId) } } } public class FileDownloadResult : HttpResult { required public init(){ super.init() } required public init(from decoder: Decoder) throws { try super.init(from: decoder) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) } } public class ContractBase : Codable { public var supplierUserId:Int public var contractId:Int required public init(){} } public class ContractVersionBase : ContractBase { public var contractVersionId:Int required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case contractVersionId } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) contractVersionId = try container.decodeIfPresent(Int.self, forKey: .contractVersionId) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if contractVersionId != nil { try container.encode(contractVersionId, forKey: .contractVersionId) } } } public protocol IVirtualFile { //virtualPathProvider:IVirtualPathProvider ignored. Swift doesn't support interface properties var `extension`:String { get set } var length:Int { get set } } // @Flags() public enum CacheControl : Int, Codable { case None = 0 case Public = 1 case Private = 2 case MustRevalidate = 4 case NoCache = 8 case NoStore = 16 case NoTransform = 32 case ProxyRevalidate = 64 } public protocol IContentTypeWriter { } public protocol IRequest { //originalRequest:Object ignored. Type could not be extended in Swift //response:IResponse ignored. Swift doesn't support interface properties var operationName:String { get set } var verb:String { get set } var requestAttributes:RequestAttributes { get set } //requestPreferences:IRequestPreferences ignored. Swift doesn't support interface properties //dto:Object ignored. Type could not be extended in Swift var contentType:String { get set } var isLocal:Bool { get set } var userAgent:String { get set } var cookies:[String:Cookie] { get set } var responseContentType:String { get set } var hasExplicitResponseContentType:Bool { get set } var items:[String:Object] { get set } var headers:NameValueCollection { get set } var queryString:NameValueCollection { get set } var formData:NameValueCollection { get set } var useBufferedStream:Bool { get set } var rawUrl:String { get set } var absoluteUri:String { get set } var userHostAddress:String { get set } var remoteIp:String { get set } var authorization:String { get set } var isSecureConnection:Bool { get set } var acceptTypes:[String] { get set } var pathInfo:String { get set } var originalPathInfo:String { get set } var inputStream:Data { get set } var contentLength:Int { get set } var files:[IHttpFile] { get set } var urlReferrer:Uri { get set } } public class HttpResult : Codable { public var responseText:String public var responseStream:Data public var fileInfo:FileInfo //virtualFile:IVirtualFile ignored. Swift doesn't support interface properties public var contentType:String public var headers:[String:String] = [:] public var cookies:[Cookie] = [] public var eTag:String @TimeSpan public var age:TimeInterval? @TimeSpan public var maxAge:TimeInterval? public var expires:Date? public var lastModified:Date? public var cacheControl:CacheControl public var resultScope:Func public var allowsPartialResponse:Bool public var options:[String:String] = [:] public var status:Int public var statusCode:HttpStatusCode public var statusDescription:String //response:Object ignored. Type could not be extended in Swift //responseFilter:IContentTypeWriter ignored. Swift doesn't support interface properties //requestContext:IRequest ignored. Swift doesn't support interface properties public var view:String public var template:String public var paddingLength:Int public var isPartialRequest:Bool required public init(){} } public protocol IVirtualDirectory { } public protocol IVirtualPathProvider { //rootDirectory:IVirtualDirectory ignored. Swift doesn't support interface properties var virtualPathSeparator:String { get set } var realPathSeparator:String { get set } } public protocol IResponse { //originalResponse:Object ignored. Type could not be extended in Swift //request:IRequest ignored. Swift doesn't support interface properties var statusCode:Int { get set } var statusDescription:String { get set } var contentType:String { get set } var outputStream:Data { get set } //dto:Object ignored. Type could not be extended in Swift var useBufferedStream:Bool { get set } var isClosed:Bool { get set } var keepAlive:Bool { get set } var hasStarted:Bool { get set } var items:[String:Object] { get set } } // @Flags() public enum RequestAttributes : Int, Codable { case None = 0 case Localhost = 1 case LocalSubnet = 2 case External = 4 case Secure = 8 case InSecure = 16 case AnySecurityMode = 24 case HttpHead = 32 case HttpGet = 64 case HttpPost = 128 case HttpPut = 256 case HttpDelete = 512 case HttpPatch = 1024 case HttpOptions = 2048 case HttpOther = 4096 case AnyHttpMethod = 8160 case OneWay = 8192 case Reply = 16384 case AnyCallStyle = 24576 case Soap11 = 32768 case Soap12 = 65536 case Xml = 131072 case Json = 262144 case Jsv = 524288 case ProtoBuf = 1048576 case Csv = 2097152 case Html = 4194304 case Wire = 8388608 case MsgPack = 16777216 case FormatOther = 33554432 case AnyFormat = 67076096 case Http = 67108864 case MessageQueue = 134217728 case Tcp = 268435456 case Grpc = 536870912 case EndpointOther = 1073741824 case AnyEndpoint = 2080374784 case InProcess = -2147483648 case InternalNetworkAccess = -2147483645 case AnyNetworkAccessType = -2147483641 case Any = -1 } public protocol IRequestPreferences { var acceptsBrotli:Bool { get set } var acceptsDeflate:Bool { get set } var acceptsGzip:Bool { get set } }