Sources/OSS/ClientObjectSymlink.swift (46 lines of code) (raw):

import Foundation public extension Client { /// You can create a symbolic link for a target object. /// - Parameters: /// - request: The request parameter to send /// - request: Optional, operation options /// - Returns: The result instance. func putSymlink( _ request: PutSymlinkRequest, _ options: OperationOptions? = nil ) async throws -> PutSymlinkResult { var input = OperationInput( operationName: "PutSymlink", method: "PUT", headers: [ "Content-Type": "application/xml", ], parameters: [ "symlink": "", ] ) input.bucket = try request.bucket.ensureRequired(field: "request.bucket") input.key = try request.key.ensureRequired(field: "request.key") var req = request try Serde.serializeInput(&req, &input, [Serde.serializePutSymlink, Serde.addContentMd5]) var output = try await clientImpl.execute(with: &input, args: options) var result = PutSymlinkResult() try Serde.deserializeOutput(&result, &output, [Serde.deserializePutSymlink]) return result } /// You can call this operation to query a symbolic link of an object. /// - Parameters: /// - request: The request parameter to send /// - request: Optional, operation options /// - Returns: The result instance. func getSymlink( _ request: GetSymlinkRequest, _ options: OperationOptions? = nil ) async throws -> GetSymlinkResult { var input = OperationInput( operationName: "GetSymlink", method: "GET", parameters: [ "symlink": "", ] ) input.bucket = try request.bucket.ensureRequired(field: "request.bucket") input.key = try request.key.ensureRequired(field: "request.key") var req = request try Serde.serializeInput(&req, &input, [Serde.serializeGetSymlink, Serde.addContentMd5]) var output = try await clientImpl.execute(with: &input, args: options) var result = GetSymlinkResult() try Serde.deserializeOutput(&result, &output, [Serde.deserializeGetSymlink]) return result } }