UNPKG

appcenter-cli

Version:

Command line tool for Visual Studio App Center

310 lines (299 loc) 9.49 kB
/* * Copyright (c) Microsoft Corporation. * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ import { CodePushDeployments } from "../operationsInterfaces"; import * as coreClient from "@azure/core-client"; import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; import { AppCenterClient } from "../appCenterClient"; import { CodePushDeploymentsPromoteOptionalParams, CodePushDeploymentsPromoteResponse, CodePushDeploymentsDeleteOptionalParams, CodePushDeploymentsGetOptionalParams, CodePushDeploymentsGetResponse, CodePushDeploymentsUpdateOptionalParams, CodePushDeploymentsListOptionalParams, CodePushDeploymentsListResponse, CodePushDeploymentsCreateOptionalParams, CodePushDeploymentsCreateResponse } from "../models"; /** Class containing CodePushDeployments operations. */ export class CodePushDeploymentsImpl implements CodePushDeployments { private readonly client: AppCenterClient; /** * Initialize a new instance of the class CodePushDeployments class. * @param client Reference to the service client */ constructor(client: AppCenterClient) { this.client = client; } /** * Promote one release (default latest one) from one deployment to another * @param deploymentName deployment name * @param promoteDeploymentName deployment name * @param ownerName The name of the owner * @param appName The name of the application * @param options The options parameters. */ promote( deploymentName: string, promoteDeploymentName: string, ownerName: string, appName: string, options?: CodePushDeploymentsPromoteOptionalParams ): Promise<CodePushDeploymentsPromoteResponse> { return this.client.sendOperationRequest( { deploymentName, promoteDeploymentName, ownerName, appName, options }, promoteOperationSpec ); } /** * Deletes a CodePush Deployment for the given app * @param deploymentName deployment name * @param ownerName The name of the owner * @param appName The name of the application * @param options The options parameters. */ delete( deploymentName: string, ownerName: string, appName: string, options?: CodePushDeploymentsDeleteOptionalParams ): Promise<void> { return this.client.sendOperationRequest( { deploymentName, ownerName, appName, options }, deleteOperationSpec ); } /** * Gets a CodePush Deployment for the given app * @param deploymentName deployment name * @param ownerName The name of the owner * @param appName The name of the application * @param options The options parameters. */ get( deploymentName: string, ownerName: string, appName: string, options?: CodePushDeploymentsGetOptionalParams ): Promise<CodePushDeploymentsGetResponse> { return this.client.sendOperationRequest( { deploymentName, ownerName, appName, options }, getOperationSpec ); } /** * Modifies a CodePush Deployment for the given app * @param deploymentName deployment name * @param ownerName The name of the owner * @param appName The name of the application * @param name * @param options The options parameters. */ update( deploymentName: string, ownerName: string, appName: string, name: string, options?: CodePushDeploymentsUpdateOptionalParams ): Promise<void> { return this.client.sendOperationRequest( { deploymentName, ownerName, appName, name, options }, updateOperationSpec ); } /** * Gets a list of CodePush deployments for the given app * @param ownerName The name of the owner * @param appName The name of the application * @param options The options parameters. */ list( ownerName: string, appName: string, options?: CodePushDeploymentsListOptionalParams ): Promise<CodePushDeploymentsListResponse> { return this.client.sendOperationRequest( { ownerName, appName, options }, listOperationSpec ); } /** * Creates a CodePush Deployment for the given app * @param ownerName The name of the owner * @param appName The name of the application * @param name * @param options The options parameters. */ create( ownerName: string, appName: string, name: string, options?: CodePushDeploymentsCreateOptionalParams ): Promise<CodePushDeploymentsCreateResponse> { return this.client.sendOperationRequest( { ownerName, appName, name, options }, createOperationSpec ); } } // Operation Specifications const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); const promoteOperationSpec: coreClient.OperationSpec = { path: "/v0.1/apps/{owner_name}/{app_name}/deployments/{deployment_name}/promote_release/{promote_deployment_name}", httpMethod: "POST", responses: { 200: { bodyMapper: Mappers.Paths1Ou643ZV01AppsOwnerNameAppNameDeploymentsDeploymentNamePromoteReleasePromoteDeploymentNamePostResponses200ContentApplicationJsonSchema }, default: { bodyMapper: Mappers.Paths1Qz2Z0EV01AppsOwnerNameAppNameDeploymentsDeploymentNamePromoteReleasePromoteDeploymentNamePostResponsesDefaultContentApplicationJsonSchema } }, requestBody: Parameters.release1, urlParameters: [ Parameters.$host, Parameters.ownerName, Parameters.appName, Parameters.deploymentName, Parameters.promoteDeploymentName ], headerParameters: [Parameters.contentType, Parameters.accept], mediaType: "json", serializer }; const deleteOperationSpec: coreClient.OperationSpec = { path: "/v0.1/apps/{owner_name}/{app_name}/deployments/{deployment_name}", httpMethod: "DELETE", responses: { 204: {}, default: { bodyMapper: Mappers.Paths3Tai91V01AppsOwnerNameAppNameDeploymentsDeploymentNameDeleteResponsesDefaultContentApplicationJsonSchema } }, requestBody: Parameters.body11, urlParameters: [ Parameters.$host, Parameters.ownerName, Parameters.appName, Parameters.deploymentName ], headerParameters: [Parameters.contentType, Parameters.accept], mediaType: "json", serializer }; const getOperationSpec: coreClient.OperationSpec = { path: "/v0.1/apps/{owner_name}/{app_name}/deployments/{deployment_name}", httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.PathsP17HdtV01AppsOwnerNameAppNameDeploymentsDeploymentNameGetResponses200ContentApplicationJsonSchema }, default: { bodyMapper: Mappers.Paths2Je1MzV01AppsOwnerNameAppNameDeploymentsDeploymentNameGetResponsesDefaultContentApplicationJsonSchema } }, urlParameters: [ Parameters.$host, Parameters.ownerName, Parameters.appName, Parameters.deploymentName ], headerParameters: [Parameters.accept], serializer }; const updateOperationSpec: coreClient.OperationSpec = { path: "/v0.1/apps/{owner_name}/{app_name}/deployments/{deployment_name}", httpMethod: "PATCH", responses: { 204: {}, default: { bodyMapper: Mappers.Paths1O9H9InV01AppsOwnerNameAppNameDeploymentsDeploymentNamePatchResponsesDefaultContentApplicationJsonSchema } }, requestBody: { parameterPath: { name: ["name"] }, mapper: { ...Mappers.PathsUaqn8EV01AppsOwnerNameAppNameDeploymentsDeploymentNamePatchRequestbodyContentApplicationJsonSchema, required: true } }, urlParameters: [ Parameters.$host, Parameters.ownerName, Parameters.appName, Parameters.deploymentName ], headerParameters: [Parameters.contentType, Parameters.accept], mediaType: "json", serializer }; const listOperationSpec: coreClient.OperationSpec = { path: "/v0.1/apps/{owner_name}/{app_name}/deployments", httpMethod: "GET", responses: { 200: { bodyMapper: { type: { name: "Sequence", element: { type: { name: "Composite", className: "Paths1Hq3VntV01AppsOwnerNameAppNameDeploymentsGetResponses200ContentApplicationJsonSchemaItems" } } } } }, default: { bodyMapper: Mappers.PathsBg34XwV01AppsOwnerNameAppNameDeploymentsGetResponsesDefaultContentApplicationJsonSchema } }, urlParameters: [Parameters.$host, Parameters.ownerName, Parameters.appName], headerParameters: [Parameters.accept], serializer }; const createOperationSpec: coreClient.OperationSpec = { path: "/v0.1/apps/{owner_name}/{app_name}/deployments", httpMethod: "POST", responses: { 201: { bodyMapper: Mappers.PathsPwjhi2V01AppsOwnerNameAppNameDeploymentsPostResponses201ContentApplicationJsonSchema }, default: { bodyMapper: Mappers.PathsIui0NlV01AppsOwnerNameAppNameDeploymentsPostResponsesDefaultContentApplicationJsonSchema } }, requestBody: { parameterPath: { key: ["options", "key"], name: ["name"], latestRelease: ["options", "latestRelease"] }, mapper: { ...Mappers.Paths1Fgvm7MV01AppsOwnerNameAppNameDeploymentsPostRequestbodyContentApplicationJsonSchema, required: true } }, urlParameters: [Parameters.$host, Parameters.ownerName, Parameters.appName], headerParameters: [Parameters.contentType, Parameters.accept], mediaType: "json", serializer };