ehpcinstant-20230701/Sources/AlibabacloudEhpcInstant20230701/Client.swift (861 lines of code) (raw):

import Foundation import Tea import TeaUtils import AlibabacloudOpenApi import AlibabaCloudOpenApiUtil import AlibabacloudEndpointUtil open class Client : AlibabacloudOpenApi.Client { public override init(_ config: AlibabacloudOpenApi.Config) throws { try super.init(config) self._endpointRule = "" try checkConfig(config as! AlibabacloudOpenApi.Config) self._endpoint = try getEndpoint("ehpcinstant", self._regionId ?? "", self._endpointRule ?? "", self._network ?? "", self._suffix ?? "", self._endpointMap ?? [:], self._endpoint ?? "") } public func getEndpoint(_ productId: String, _ regionId: String, _ endpointRule: String, _ network: String, _ suffix: String, _ endpointMap: [String: String], _ endpoint: String) throws -> String { if (!TeaUtils.Client.empty(endpoint)) { return endpoint as! String } if (!TeaUtils.Client.isUnset(endpointMap) && !TeaUtils.Client.empty(endpointMap[regionId as! String])) { return endpointMap[regionId as! String] ?? "" } return try AlibabacloudEndpointUtil.Client.getEndpointRules(productId, regionId, endpointRule, network, suffix) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func addImageWithOptions(_ tmpReq: AddImageRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> AddImageResponse { try TeaUtils.Client.validateModel(tmpReq) var request: AddImageShrinkRequest = AddImageShrinkRequest([:]) AlibabaCloudOpenApiUtil.Client.convert(tmpReq, request) if (!TeaUtils.Client.isUnset(tmpReq.containerImageSpec)) { request.containerImageSpecShrink = AlibabaCloudOpenApiUtil.Client.arrayToStringWithSpecifiedStyle(tmpReq.containerImageSpec, "ContainerImageSpec", "json") } if (!TeaUtils.Client.isUnset(tmpReq.VMImageSpec)) { request.VMImageSpecShrink = AlibabaCloudOpenApiUtil.Client.arrayToStringWithSpecifiedStyle(tmpReq.VMImageSpec, "VMImageSpec", "json") } var query: [String: Any] = [:] if (!TeaUtils.Client.isUnset(request.containerImageSpecShrink)) { query["ContainerImageSpec"] = request.containerImageSpecShrink ?? ""; } if (!TeaUtils.Client.isUnset(request.description_)) { query["Description"] = request.description_ ?? ""; } if (!TeaUtils.Client.isUnset(request.imageType)) { query["ImageType"] = request.imageType ?? ""; } if (!TeaUtils.Client.isUnset(request.imageVersion)) { query["ImageVersion"] = request.imageVersion ?? ""; } if (!TeaUtils.Client.isUnset(request.name)) { query["Name"] = request.name ?? ""; } if (!TeaUtils.Client.isUnset(request.VMImageSpecShrink)) { query["VMImageSpec"] = request.VMImageSpecShrink ?? ""; } var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([ "query": AlibabaCloudOpenApiUtil.Client.query(query) ]) var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([ "action": "AddImage", "version": "2023-07-01", "protocol": "HTTPS", "pathname": "/", "method": "POST", "authType": "AK", "style": "RPC", "reqBodyType": "formData", "bodyType": "json" ]) var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions) return Tea.TeaConverter.fromMap(AddImageResponse(), tmp) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func addImage(_ request: AddImageRequest) async throws -> AddImageResponse { var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:]) return try await addImageWithOptions(request as! AddImageRequest, runtime as! TeaUtils.RuntimeOptions) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func createJobWithOptions(_ tmpReq: CreateJobRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> CreateJobResponse { try TeaUtils.Client.validateModel(tmpReq) var request: CreateJobShrinkRequest = CreateJobShrinkRequest([:]) AlibabaCloudOpenApiUtil.Client.convert(tmpReq, request) if (!TeaUtils.Client.isUnset(tmpReq.deploymentPolicy)) { request.deploymentPolicyShrink = AlibabaCloudOpenApiUtil.Client.arrayToStringWithSpecifiedStyle(tmpReq.deploymentPolicy, "DeploymentPolicy", "json") } if (!TeaUtils.Client.isUnset(tmpReq.securityPolicy)) { request.securityPolicyShrink = AlibabaCloudOpenApiUtil.Client.arrayToStringWithSpecifiedStyle(tmpReq.securityPolicy, "SecurityPolicy", "json") } if (!TeaUtils.Client.isUnset(tmpReq.tasks)) { request.tasksShrink = AlibabaCloudOpenApiUtil.Client.arrayToStringWithSpecifiedStyle(tmpReq.tasks, "Tasks", "json") } var query: [String: Any] = [:] if (!TeaUtils.Client.isUnset(request.deploymentPolicyShrink)) { query["DeploymentPolicy"] = request.deploymentPolicyShrink ?? ""; } if (!TeaUtils.Client.isUnset(request.jobDescription)) { query["JobDescription"] = request.jobDescription ?? ""; } if (!TeaUtils.Client.isUnset(request.jobName)) { query["JobName"] = request.jobName ?? ""; } if (!TeaUtils.Client.isUnset(request.jobScheduler)) { query["JobScheduler"] = request.jobScheduler ?? ""; } if (!TeaUtils.Client.isUnset(request.securityPolicyShrink)) { query["SecurityPolicy"] = request.securityPolicyShrink ?? ""; } if (!TeaUtils.Client.isUnset(request.tasksShrink)) { query["Tasks"] = request.tasksShrink ?? ""; } var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([ "query": AlibabaCloudOpenApiUtil.Client.query(query) ]) var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([ "action": "CreateJob", "version": "2023-07-01", "protocol": "HTTPS", "pathname": "/", "method": "POST", "authType": "AK", "style": "RPC", "reqBodyType": "formData", "bodyType": "json" ]) var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions) return Tea.TeaConverter.fromMap(CreateJobResponse(), tmp) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func createJob(_ request: CreateJobRequest) async throws -> CreateJobResponse { var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:]) return try await createJobWithOptions(request as! CreateJobRequest, runtime as! TeaUtils.RuntimeOptions) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func createPoolWithOptions(_ tmpReq: CreatePoolRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> CreatePoolResponse { try TeaUtils.Client.validateModel(tmpReq) var request: CreatePoolShrinkRequest = CreatePoolShrinkRequest([:]) AlibabaCloudOpenApiUtil.Client.convert(tmpReq, request) if (!TeaUtils.Client.isUnset(tmpReq.resourceLimits)) { request.resourceLimitsShrink = AlibabaCloudOpenApiUtil.Client.arrayToStringWithSpecifiedStyle(tmpReq.resourceLimits, "ResourceLimits", "json") } var query: [String: Any] = [:] if (!TeaUtils.Client.isUnset(request.poolName)) { query["PoolName"] = request.poolName ?? ""; } if (!TeaUtils.Client.isUnset(request.priority)) { query["Priority"] = request.priority!; } if (!TeaUtils.Client.isUnset(request.resourceLimitsShrink)) { query["ResourceLimits"] = request.resourceLimitsShrink ?? ""; } var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([ "query": AlibabaCloudOpenApiUtil.Client.query(query) ]) var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([ "action": "CreatePool", "version": "2023-07-01", "protocol": "HTTPS", "pathname": "/", "method": "POST", "authType": "AK", "style": "RPC", "reqBodyType": "formData", "bodyType": "json" ]) var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions) return Tea.TeaConverter.fromMap(CreatePoolResponse(), tmp) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func createPool(_ request: CreatePoolRequest) async throws -> CreatePoolResponse { var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:]) return try await createPoolWithOptions(request as! CreatePoolRequest, runtime as! TeaUtils.RuntimeOptions) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func deleteJobsWithOptions(_ tmpReq: DeleteJobsRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> DeleteJobsResponse { try TeaUtils.Client.validateModel(tmpReq) var request: DeleteJobsShrinkRequest = DeleteJobsShrinkRequest([:]) AlibabaCloudOpenApiUtil.Client.convert(tmpReq, request) if (!TeaUtils.Client.isUnset(tmpReq.executorIds)) { request.executorIdsShrink = AlibabaCloudOpenApiUtil.Client.arrayToStringWithSpecifiedStyle(tmpReq.executorIds, "ExecutorIds", "json") } if (!TeaUtils.Client.isUnset(tmpReq.jobSpec)) { request.jobSpecShrink = AlibabaCloudOpenApiUtil.Client.arrayToStringWithSpecifiedStyle(tmpReq.jobSpec, "JobSpec", "json") } var query: [String: Any] = [:] if (!TeaUtils.Client.isUnset(request.executorIdsShrink)) { query["ExecutorIds"] = request.executorIdsShrink ?? ""; } if (!TeaUtils.Client.isUnset(request.jobSpecShrink)) { query["JobSpec"] = request.jobSpecShrink ?? ""; } var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([ "query": AlibabaCloudOpenApiUtil.Client.query(query) ]) var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([ "action": "DeleteJobs", "version": "2023-07-01", "protocol": "HTTPS", "pathname": "/", "method": "POST", "authType": "AK", "style": "RPC", "reqBodyType": "formData", "bodyType": "json" ]) var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions) return Tea.TeaConverter.fromMap(DeleteJobsResponse(), tmp) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func deleteJobs(_ request: DeleteJobsRequest) async throws -> DeleteJobsResponse { var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:]) return try await deleteJobsWithOptions(request as! DeleteJobsRequest, runtime as! TeaUtils.RuntimeOptions) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func deletePoolWithOptions(_ request: DeletePoolRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> DeletePoolResponse { try TeaUtils.Client.validateModel(request) var query: [String: Any] = [:] if (!TeaUtils.Client.isUnset(request.poolName)) { query["PoolName"] = request.poolName ?? ""; } var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([ "query": AlibabaCloudOpenApiUtil.Client.query(query) ]) var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([ "action": "DeletePool", "version": "2023-07-01", "protocol": "HTTPS", "pathname": "/", "method": "POST", "authType": "AK", "style": "RPC", "reqBodyType": "formData", "bodyType": "json" ]) var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions) return Tea.TeaConverter.fromMap(DeletePoolResponse(), tmp) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func deletePool(_ request: DeletePoolRequest) async throws -> DeletePoolResponse { var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:]) return try await deletePoolWithOptions(request as! DeletePoolRequest, runtime as! TeaUtils.RuntimeOptions) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func describeJobMetricDataWithOptions(_ tmpReq: DescribeJobMetricDataRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> DescribeJobMetricDataResponse { try TeaUtils.Client.validateModel(tmpReq) var request: DescribeJobMetricDataShrinkRequest = DescribeJobMetricDataShrinkRequest([:]) AlibabaCloudOpenApiUtil.Client.convert(tmpReq, request) if (!TeaUtils.Client.isUnset(tmpReq.arrayIndex)) { request.arrayIndexShrink = AlibabaCloudOpenApiUtil.Client.arrayToStringWithSpecifiedStyle(tmpReq.arrayIndex, "ArrayIndex", "json") } var query: [String: Any] = [:] if (!TeaUtils.Client.isUnset(request.arrayIndexShrink)) { query["ArrayIndex"] = request.arrayIndexShrink ?? ""; } if (!TeaUtils.Client.isUnset(request.jobId)) { query["JobId"] = request.jobId ?? ""; } if (!TeaUtils.Client.isUnset(request.metricName)) { query["MetricName"] = request.metricName ?? ""; } if (!TeaUtils.Client.isUnset(request.taskName)) { query["TaskName"] = request.taskName ?? ""; } var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([ "query": AlibabaCloudOpenApiUtil.Client.query(query) ]) var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([ "action": "DescribeJobMetricData", "version": "2023-07-01", "protocol": "HTTPS", "pathname": "/", "method": "POST", "authType": "AK", "style": "RPC", "reqBodyType": "formData", "bodyType": "json" ]) var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions) return Tea.TeaConverter.fromMap(DescribeJobMetricDataResponse(), tmp) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func describeJobMetricData(_ request: DescribeJobMetricDataRequest) async throws -> DescribeJobMetricDataResponse { var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:]) return try await describeJobMetricDataWithOptions(request as! DescribeJobMetricDataRequest, runtime as! TeaUtils.RuntimeOptions) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func describeJobMetricLastWithOptions(_ tmpReq: DescribeJobMetricLastRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> DescribeJobMetricLastResponse { try TeaUtils.Client.validateModel(tmpReq) var request: DescribeJobMetricLastShrinkRequest = DescribeJobMetricLastShrinkRequest([:]) AlibabaCloudOpenApiUtil.Client.convert(tmpReq, request) if (!TeaUtils.Client.isUnset(tmpReq.arrayIndex)) { request.arrayIndexShrink = AlibabaCloudOpenApiUtil.Client.arrayToStringWithSpecifiedStyle(tmpReq.arrayIndex, "ArrayIndex", "json") } var query: [String: Any] = [:] if (!TeaUtils.Client.isUnset(request.arrayIndexShrink)) { query["ArrayIndex"] = request.arrayIndexShrink ?? ""; } if (!TeaUtils.Client.isUnset(request.jobId)) { query["JobId"] = request.jobId ?? ""; } if (!TeaUtils.Client.isUnset(request.taskName)) { query["TaskName"] = request.taskName ?? ""; } var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([ "query": AlibabaCloudOpenApiUtil.Client.query(query) ]) var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([ "action": "DescribeJobMetricLast", "version": "2023-07-01", "protocol": "HTTPS", "pathname": "/", "method": "POST", "authType": "AK", "style": "RPC", "reqBodyType": "formData", "bodyType": "json" ]) var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions) return Tea.TeaConverter.fromMap(DescribeJobMetricLastResponse(), tmp) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func describeJobMetricLast(_ request: DescribeJobMetricLastRequest) async throws -> DescribeJobMetricLastResponse { var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:]) return try await describeJobMetricLastWithOptions(request as! DescribeJobMetricLastRequest, runtime as! TeaUtils.RuntimeOptions) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func getAppVersionsWithOptions(_ request: GetAppVersionsRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> GetAppVersionsResponse { try TeaUtils.Client.validateModel(request) var query: [String: Any] = [:] if (!TeaUtils.Client.isUnset(request.appName)) { query["AppName"] = request.appName ?? ""; } if (!TeaUtils.Client.isUnset(request.imageCategory)) { query["ImageCategory"] = request.imageCategory ?? ""; } if (!TeaUtils.Client.isUnset(request.imageType)) { query["ImageType"] = request.imageType ?? ""; } if (!TeaUtils.Client.isUnset(request.pageNumber)) { query["PageNumber"] = request.pageNumber!; } if (!TeaUtils.Client.isUnset(request.pageSize)) { query["PageSize"] = request.pageSize!; } var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([ "query": AlibabaCloudOpenApiUtil.Client.query(query) ]) var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([ "action": "GetAppVersions", "version": "2023-07-01", "protocol": "HTTPS", "pathname": "/", "method": "POST", "authType": "AK", "style": "RPC", "reqBodyType": "formData", "bodyType": "json" ]) var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions) return Tea.TeaConverter.fromMap(GetAppVersionsResponse(), tmp) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func getAppVersions(_ request: GetAppVersionsRequest) async throws -> GetAppVersionsResponse { var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:]) return try await getAppVersionsWithOptions(request as! GetAppVersionsRequest, runtime as! TeaUtils.RuntimeOptions) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func getImageWithOptions(_ request: GetImageRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> GetImageResponse { try TeaUtils.Client.validateModel(request) var query: [String: Any] = [:] if (!TeaUtils.Client.isUnset(request.imageCategory)) { query["ImageCategory"] = request.imageCategory ?? ""; } if (!TeaUtils.Client.isUnset(request.imageId)) { query["ImageId"] = request.imageId ?? ""; } if (!TeaUtils.Client.isUnset(request.imageType)) { query["ImageType"] = request.imageType ?? ""; } var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([ "query": AlibabaCloudOpenApiUtil.Client.query(query) ]) var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([ "action": "GetImage", "version": "2023-07-01", "protocol": "HTTPS", "pathname": "/", "method": "POST", "authType": "AK", "style": "RPC", "reqBodyType": "formData", "bodyType": "json" ]) var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions) return Tea.TeaConverter.fromMap(GetImageResponse(), tmp) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func getImage(_ request: GetImageRequest) async throws -> GetImageResponse { var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:]) return try await getImageWithOptions(request as! GetImageRequest, runtime as! TeaUtils.RuntimeOptions) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func getJobWithOptions(_ request: GetJobRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> GetJobResponse { try TeaUtils.Client.validateModel(request) var query: [String: Any] = [:] if (!TeaUtils.Client.isUnset(request.jobId)) { query["JobId"] = request.jobId ?? ""; } var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([ "query": AlibabaCloudOpenApiUtil.Client.query(query) ]) var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([ "action": "GetJob", "version": "2023-07-01", "protocol": "HTTPS", "pathname": "/", "method": "POST", "authType": "AK", "style": "RPC", "reqBodyType": "formData", "bodyType": "json" ]) var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions) return Tea.TeaConverter.fromMap(GetJobResponse(), tmp) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func getJob(_ request: GetJobRequest) async throws -> GetJobResponse { var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:]) return try await getJobWithOptions(request as! GetJobRequest, runtime as! TeaUtils.RuntimeOptions) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func getPoolWithOptions(_ request: GetPoolRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> GetPoolResponse { try TeaUtils.Client.validateModel(request) var query: [String: Any] = [:] if (!TeaUtils.Client.isUnset(request.poolName)) { query["PoolName"] = request.poolName ?? ""; } var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([ "query": AlibabaCloudOpenApiUtil.Client.query(query) ]) var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([ "action": "GetPool", "version": "2023-07-01", "protocol": "HTTPS", "pathname": "/", "method": "POST", "authType": "AK", "style": "RPC", "reqBodyType": "formData", "bodyType": "json" ]) var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions) return Tea.TeaConverter.fromMap(GetPoolResponse(), tmp) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func getPool(_ request: GetPoolRequest) async throws -> GetPoolResponse { var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:]) return try await getPoolWithOptions(request as! GetPoolRequest, runtime as! TeaUtils.RuntimeOptions) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func listExecutorsWithOptions(_ tmpReq: ListExecutorsRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> ListExecutorsResponse { try TeaUtils.Client.validateModel(tmpReq) var request: ListExecutorsShrinkRequest = ListExecutorsShrinkRequest([:]) AlibabaCloudOpenApiUtil.Client.convert(tmpReq, request) if (!TeaUtils.Client.isUnset(tmpReq.filter)) { request.filterShrink = AlibabaCloudOpenApiUtil.Client.arrayToStringWithSpecifiedStyle(tmpReq.filter, "Filter", "json") } var query: [String: Any] = [:] if (!TeaUtils.Client.isUnset(request.filterShrink)) { query["Filter"] = request.filterShrink ?? ""; } if (!TeaUtils.Client.isUnset(request.pageNumber)) { query["PageNumber"] = request.pageNumber!; } if (!TeaUtils.Client.isUnset(request.pageSize)) { query["PageSize"] = request.pageSize!; } var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([ "query": AlibabaCloudOpenApiUtil.Client.query(query) ]) var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([ "action": "ListExecutors", "version": "2023-07-01", "protocol": "HTTPS", "pathname": "/", "method": "POST", "authType": "AK", "style": "RPC", "reqBodyType": "formData", "bodyType": "json" ]) var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions) return Tea.TeaConverter.fromMap(ListExecutorsResponse(), tmp) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func listExecutors(_ request: ListExecutorsRequest) async throws -> ListExecutorsResponse { var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:]) return try await listExecutorsWithOptions(request as! ListExecutorsRequest, runtime as! TeaUtils.RuntimeOptions) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func listImagesWithOptions(_ tmpReq: ListImagesRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> ListImagesResponse { try TeaUtils.Client.validateModel(tmpReq) var request: ListImagesShrinkRequest = ListImagesShrinkRequest([:]) AlibabaCloudOpenApiUtil.Client.convert(tmpReq, request) if (!TeaUtils.Client.isUnset(tmpReq.imageIds)) { request.imageIdsShrink = AlibabaCloudOpenApiUtil.Client.arrayToStringWithSpecifiedStyle(tmpReq.imageIds, "ImageIds", "json") } if (!TeaUtils.Client.isUnset(tmpReq.imageNames)) { request.imageNamesShrink = AlibabaCloudOpenApiUtil.Client.arrayToStringWithSpecifiedStyle(tmpReq.imageNames, "ImageNames", "json") } var query: [String: Any] = [:] if (!TeaUtils.Client.isUnset(request.imageCategory)) { query["ImageCategory"] = request.imageCategory ?? ""; } if (!TeaUtils.Client.isUnset(request.imageIdsShrink)) { query["ImageIds"] = request.imageIdsShrink ?? ""; } if (!TeaUtils.Client.isUnset(request.imageNamesShrink)) { query["ImageNames"] = request.imageNamesShrink ?? ""; } if (!TeaUtils.Client.isUnset(request.imageType)) { query["ImageType"] = request.imageType ?? ""; } if (!TeaUtils.Client.isUnset(request.mode)) { query["Mode"] = request.mode ?? ""; } if (!TeaUtils.Client.isUnset(request.pageNumber)) { query["PageNumber"] = request.pageNumber!; } if (!TeaUtils.Client.isUnset(request.pageSize)) { query["PageSize"] = request.pageSize!; } var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([ "query": AlibabaCloudOpenApiUtil.Client.query(query) ]) var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([ "action": "ListImages", "version": "2023-07-01", "protocol": "HTTPS", "pathname": "/", "method": "POST", "authType": "AK", "style": "RPC", "reqBodyType": "formData", "bodyType": "json" ]) var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions) return Tea.TeaConverter.fromMap(ListImagesResponse(), tmp) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func listImages(_ request: ListImagesRequest) async throws -> ListImagesResponse { var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:]) return try await listImagesWithOptions(request as! ListImagesRequest, runtime as! TeaUtils.RuntimeOptions) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func listJobExecutorsWithOptions(_ request: ListJobExecutorsRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> ListJobExecutorsResponse { try TeaUtils.Client.validateModel(request) var query: [String: Any] = [:] if (!TeaUtils.Client.isUnset(request.jobId)) { query["JobId"] = request.jobId ?? ""; } if (!TeaUtils.Client.isUnset(request.pageNumber)) { query["PageNumber"] = request.pageNumber!; } if (!TeaUtils.Client.isUnset(request.pageSize)) { query["PageSize"] = request.pageSize!; } if (!TeaUtils.Client.isUnset(request.taskName)) { query["TaskName"] = request.taskName ?? ""; } var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([ "query": AlibabaCloudOpenApiUtil.Client.query(query) ]) var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([ "action": "ListJobExecutors", "version": "2023-07-01", "protocol": "HTTPS", "pathname": "/", "method": "POST", "authType": "AK", "style": "RPC", "reqBodyType": "formData", "bodyType": "json" ]) var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions) return Tea.TeaConverter.fromMap(ListJobExecutorsResponse(), tmp) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func listJobExecutors(_ request: ListJobExecutorsRequest) async throws -> ListJobExecutorsResponse { var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:]) return try await listJobExecutorsWithOptions(request as! ListJobExecutorsRequest, runtime as! TeaUtils.RuntimeOptions) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func listJobsWithOptions(_ tmpReq: ListJobsRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> ListJobsResponse { try TeaUtils.Client.validateModel(tmpReq) var request: ListJobsShrinkRequest = ListJobsShrinkRequest([:]) AlibabaCloudOpenApiUtil.Client.convert(tmpReq, request) if (!TeaUtils.Client.isUnset(tmpReq.filter)) { request.filterShrink = AlibabaCloudOpenApiUtil.Client.arrayToStringWithSpecifiedStyle(tmpReq.filter, "Filter", "json") } if (!TeaUtils.Client.isUnset(tmpReq.sortBy)) { request.sortByShrink = AlibabaCloudOpenApiUtil.Client.arrayToStringWithSpecifiedStyle(tmpReq.sortBy, "SortBy", "json") } var query: [String: Any] = [:] if (!TeaUtils.Client.isUnset(request.filterShrink)) { query["Filter"] = request.filterShrink ?? ""; } if (!TeaUtils.Client.isUnset(request.pageNumber)) { query["PageNumber"] = request.pageNumber!; } if (!TeaUtils.Client.isUnset(request.pageSize)) { query["PageSize"] = request.pageSize!; } if (!TeaUtils.Client.isUnset(request.sortByShrink)) { query["SortBy"] = request.sortByShrink ?? ""; } var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([ "query": AlibabaCloudOpenApiUtil.Client.query(query) ]) var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([ "action": "ListJobs", "version": "2023-07-01", "protocol": "HTTPS", "pathname": "/", "method": "POST", "authType": "AK", "style": "RPC", "reqBodyType": "formData", "bodyType": "json" ]) var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions) return Tea.TeaConverter.fromMap(ListJobsResponse(), tmp) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func listJobs(_ request: ListJobsRequest) async throws -> ListJobsResponse { var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:]) return try await listJobsWithOptions(request as! ListJobsRequest, runtime as! TeaUtils.RuntimeOptions) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func listPoolsWithOptions(_ tmpReq: ListPoolsRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> ListPoolsResponse { try TeaUtils.Client.validateModel(tmpReq) var request: ListPoolsShrinkRequest = ListPoolsShrinkRequest([:]) AlibabaCloudOpenApiUtil.Client.convert(tmpReq, request) if (!TeaUtils.Client.isUnset(tmpReq.filter)) { request.filterShrink = AlibabaCloudOpenApiUtil.Client.arrayToStringWithSpecifiedStyle(tmpReq.filter, "Filter", "json") } var query: [String: Any] = [:] if (!TeaUtils.Client.isUnset(request.filterShrink)) { query["Filter"] = request.filterShrink ?? ""; } if (!TeaUtils.Client.isUnset(request.pageNumber)) { query["PageNumber"] = request.pageNumber!; } if (!TeaUtils.Client.isUnset(request.pageSize)) { query["PageSize"] = request.pageSize!; } var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([ "query": AlibabaCloudOpenApiUtil.Client.query(query) ]) var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([ "action": "ListPools", "version": "2023-07-01", "protocol": "HTTPS", "pathname": "/", "method": "POST", "authType": "AK", "style": "RPC", "reqBodyType": "formData", "bodyType": "json" ]) var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions) return Tea.TeaConverter.fromMap(ListPoolsResponse(), tmp) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func listPools(_ request: ListPoolsRequest) async throws -> ListPoolsResponse { var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:]) return try await listPoolsWithOptions(request as! ListPoolsRequest, runtime as! TeaUtils.RuntimeOptions) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func listTagResourcesWithOptions(_ request: ListTagResourcesRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> ListTagResourcesResponse { try TeaUtils.Client.validateModel(request) var query: [String: Any] = [:] if (!TeaUtils.Client.isUnset(request.maxResult)) { query["MaxResult"] = request.maxResult!; } if (!TeaUtils.Client.isUnset(request.nextToken)) { query["NextToken"] = request.nextToken ?? ""; } if (!TeaUtils.Client.isUnset(request.resourceId)) { query["ResourceId"] = request.resourceId ?? []; } if (!TeaUtils.Client.isUnset(request.resourceType)) { query["ResourceType"] = request.resourceType ?? ""; } if (!TeaUtils.Client.isUnset(request.tag)) { query["Tag"] = request.tag ?? []; } var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([ "query": AlibabaCloudOpenApiUtil.Client.query(query) ]) var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([ "action": "ListTagResources", "version": "2023-07-01", "protocol": "HTTPS", "pathname": "/", "method": "POST", "authType": "AK", "style": "RPC", "reqBodyType": "formData", "bodyType": "json" ]) var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions) return Tea.TeaConverter.fromMap(ListTagResourcesResponse(), tmp) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func listTagResources(_ request: ListTagResourcesRequest) async throws -> ListTagResourcesResponse { var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:]) return try await listTagResourcesWithOptions(request as! ListTagResourcesRequest, runtime as! TeaUtils.RuntimeOptions) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func removeImageWithOptions(_ request: RemoveImageRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> RemoveImageResponse { try TeaUtils.Client.validateModel(request) var query: [String: Any] = [:] if (!TeaUtils.Client.isUnset(request.imageId)) { query["ImageId"] = request.imageId ?? ""; } if (!TeaUtils.Client.isUnset(request.imageType)) { query["ImageType"] = request.imageType ?? ""; } var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([ "query": AlibabaCloudOpenApiUtil.Client.query(query) ]) var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([ "action": "RemoveImage", "version": "2023-07-01", "protocol": "HTTPS", "pathname": "/", "method": "POST", "authType": "AK", "style": "RPC", "reqBodyType": "formData", "bodyType": "json" ]) var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions) return Tea.TeaConverter.fromMap(RemoveImageResponse(), tmp) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func removeImage(_ request: RemoveImageRequest) async throws -> RemoveImageResponse { var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:]) return try await removeImageWithOptions(request as! RemoveImageRequest, runtime as! TeaUtils.RuntimeOptions) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func tagResourcesWithOptions(_ request: TagResourcesRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> TagResourcesResponse { try TeaUtils.Client.validateModel(request) var query: [String: Any] = [:] if (!TeaUtils.Client.isUnset(request.resourceId)) { query["ResourceId"] = request.resourceId ?? []; } if (!TeaUtils.Client.isUnset(request.resourceType)) { query["ResourceType"] = request.resourceType ?? ""; } if (!TeaUtils.Client.isUnset(request.tag)) { query["Tag"] = request.tag ?? []; } var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([ "query": AlibabaCloudOpenApiUtil.Client.query(query) ]) var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([ "action": "TagResources", "version": "2023-07-01", "protocol": "HTTPS", "pathname": "/", "method": "POST", "authType": "AK", "style": "RPC", "reqBodyType": "formData", "bodyType": "json" ]) var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions) return Tea.TeaConverter.fromMap(TagResourcesResponse(), tmp) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func tagResources(_ request: TagResourcesRequest) async throws -> TagResourcesResponse { var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:]) return try await tagResourcesWithOptions(request as! TagResourcesRequest, runtime as! TeaUtils.RuntimeOptions) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func unTagResourcesWithOptions(_ request: UnTagResourcesRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> UnTagResourcesResponse { try TeaUtils.Client.validateModel(request) var query: [String: Any] = [:] if (!TeaUtils.Client.isUnset(request.all)) { query["All"] = request.all!; } if (!TeaUtils.Client.isUnset(request.resourceId)) { query["ResourceId"] = request.resourceId ?? []; } if (!TeaUtils.Client.isUnset(request.resourceType)) { query["ResourceType"] = request.resourceType ?? ""; } if (!TeaUtils.Client.isUnset(request.tagKey)) { query["TagKey"] = request.tagKey ?? []; } var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([ "query": AlibabaCloudOpenApiUtil.Client.query(query) ]) var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([ "action": "UnTagResources", "version": "2023-07-01", "protocol": "HTTPS", "pathname": "/", "method": "POST", "authType": "AK", "style": "RPC", "reqBodyType": "formData", "bodyType": "json" ]) var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions) return Tea.TeaConverter.fromMap(UnTagResourcesResponse(), tmp) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func unTagResources(_ request: UnTagResourcesRequest) async throws -> UnTagResourcesResponse { var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:]) return try await unTagResourcesWithOptions(request as! UnTagResourcesRequest, runtime as! TeaUtils.RuntimeOptions) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func updatePoolWithOptions(_ tmpReq: UpdatePoolRequest, _ runtime: TeaUtils.RuntimeOptions) async throws -> UpdatePoolResponse { try TeaUtils.Client.validateModel(tmpReq) var request: UpdatePoolShrinkRequest = UpdatePoolShrinkRequest([:]) AlibabaCloudOpenApiUtil.Client.convert(tmpReq, request) if (!TeaUtils.Client.isUnset(tmpReq.resourceLimits)) { request.resourceLimitsShrink = AlibabaCloudOpenApiUtil.Client.arrayToStringWithSpecifiedStyle(tmpReq.resourceLimits, "ResourceLimits", "json") } var query: [String: Any] = [:] if (!TeaUtils.Client.isUnset(request.poolName)) { query["PoolName"] = request.poolName ?? ""; } if (!TeaUtils.Client.isUnset(request.priority)) { query["Priority"] = request.priority!; } if (!TeaUtils.Client.isUnset(request.resourceLimitsShrink)) { query["ResourceLimits"] = request.resourceLimitsShrink ?? ""; } var req: AlibabacloudOpenApi.OpenApiRequest = AlibabacloudOpenApi.OpenApiRequest([ "query": AlibabaCloudOpenApiUtil.Client.query(query) ]) var params: AlibabacloudOpenApi.Params = AlibabacloudOpenApi.Params([ "action": "UpdatePool", "version": "2023-07-01", "protocol": "HTTPS", "pathname": "/", "method": "POST", "authType": "AK", "style": "RPC", "reqBodyType": "formData", "bodyType": "json" ]) var tmp: [String: Any] = try await callApi(params as! AlibabacloudOpenApi.Params, req as! AlibabacloudOpenApi.OpenApiRequest, runtime as! TeaUtils.RuntimeOptions) return Tea.TeaConverter.fromMap(UpdatePoolResponse(), tmp) } @available(macOS 10.15, iOS 13, tvOS 13, watchOS 6, *) public func updatePool(_ request: UpdatePoolRequest) async throws -> UpdatePoolResponse { var runtime: TeaUtils.RuntimeOptions = TeaUtils.RuntimeOptions([:]) return try await updatePoolWithOptions(request as! UpdatePoolRequest, runtime as! TeaUtils.RuntimeOptions) } }