Sources/OSSExtension/Transform/SerdeBucketCors.swift (62 lines of code) (raw):

import AlibabaCloudOSS import Foundation import XMLCoder // MARK: - PutBucketCors extension Serde { static func serializePutBucketCors( _ request: inout PutBucketCorsRequest, _ input: inout OperationInput ) throws { let data: Data = try XMLEncoder().encode(request.corsConfiguration, withRootKey: "CORSConfiguration") input.body = .data(data) } static func deserializePutBucketCors( _: inout PutBucketCorsResult, _: inout OperationOutput ) throws {} } // MARK: - GetBucketCors extension Serde { static func serializeGetBucketCors( _: inout GetBucketCorsRequest, _: inout OperationInput ) throws {} static func deserializeGetBucketCors( _ result: inout GetBucketCorsResult, _ output: inout OperationOutput ) throws { guard let data = try output.body?.readData() else { throw ClientError.parseResponseBodyError(info: "Can not get response body.") } let corsConfiguration = try XMLDecoder().decode(CORSConfiguration.self, from: data) result.corsConfiguration = corsConfiguration } } // MARK: - DeleteBucketCors extension Serde { static func serializeDeleteBucketCors( _: inout DeleteBucketCorsRequest, _: inout OperationInput ) throws {} static func deserializeDeleteBucketCors( _: inout DeleteBucketCorsResult, _: inout OperationOutput ) throws {} } // MARK: - OptionObject extension Serde { static func serializeOptionObject( _ request: inout OptionObjectRequest, _ input: inout OperationInput ) throws { if let value = request.origin { input.headers["Origin"] = value } if let value = request.accessControlRequestMethod { input.headers["Access-Control-Request-Method"] = value } if let value = request.accessControlRequestHeaders { input.headers["Access-Control-Request-Headers"] = value } } static func deserializeOptionObject( _: inout OptionObjectResult, _: inout OperationOutput ) throws {} }