/* tslint:disable */ /* eslint-disable */ /** * Tapis Workflows API * Create and manage pipelines * * The version of the OpenAPI document: 1.6.0 * Contact: cicsupport@tacc.utexas.edu * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import * as runtime from '../runtime'; import { RespPipelineLock, RespPipelineLockFromJSON, RespPipelineLockToJSON, RespPipelineLockList, RespPipelineLockListFromJSON, RespPipelineLockListToJSON, } from '../models'; export interface GetPipelineLockRequest { groupId: string; pipelineId: string; pipelineLockUuid: string; } export interface ListPipelineLocksRequest { groupId: string; pipelineId: string; } export interface ReleasePipelineLockRequest { groupId: string; pipelineId: string; pipelineRunUuid: string; } /** * */ export class PipelineLocksApi extends runtime.BaseAPI { /** * Get a pipeline lock by its UUID * PipelineLocks */ async getPipelineLockRaw(requestParameters: GetPipelineLockRequest, initOverrides?: RequestInit): Promise> { if (requestParameters.groupId === null || requestParameters.groupId === undefined) { throw new runtime.RequiredError('groupId','Required parameter requestParameters.groupId was null or undefined when calling getPipelineLock.'); } if (requestParameters.pipelineId === null || requestParameters.pipelineId === undefined) { throw new runtime.RequiredError('pipelineId','Required parameter requestParameters.pipelineId was null or undefined when calling getPipelineLock.'); } if (requestParameters.pipelineLockUuid === null || requestParameters.pipelineLockUuid === undefined) { throw new runtime.RequiredError('pipelineLockUuid','Required parameter requestParameters.pipelineLockUuid was null or undefined when calling getPipelineLock.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["X-TAPIS-TOKEN"] = this.configuration.apiKey("X-TAPIS-TOKEN"); // TapisJWT authentication } const response = await this.request({ path: `/v3/workflows/groups/{group_id}/pipelines/{pipeline_id}/locks/{pipeline_lock_uuid}`.replace(`{${"group_id"}}`, encodeURIComponent(String(requestParameters.groupId))).replace(`{${"pipeline_id"}}`, encodeURIComponent(String(requestParameters.pipelineId))).replace(`{${"pipeline_lock_uuid"}}`, encodeURIComponent(String(requestParameters.pipelineLockUuid))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => RespPipelineLockFromJSON(jsonValue)); } /** * Get a pipeline lock by its UUID * PipelineLocks */ async getPipelineLock(requestParameters: GetPipelineLockRequest, initOverrides?: RequestInit): Promise { const response = await this.getPipelineLockRaw(requestParameters, initOverrides); return await response.value(); } /** * List all locks for a given pipeline * PipelineLocks */ async listPipelineLocksRaw(requestParameters: ListPipelineLocksRequest, initOverrides?: RequestInit): Promise> { if (requestParameters.groupId === null || requestParameters.groupId === undefined) { throw new runtime.RequiredError('groupId','Required parameter requestParameters.groupId was null or undefined when calling listPipelineLocks.'); } if (requestParameters.pipelineId === null || requestParameters.pipelineId === undefined) { throw new runtime.RequiredError('pipelineId','Required parameter requestParameters.pipelineId was null or undefined when calling listPipelineLocks.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["X-TAPIS-TOKEN"] = this.configuration.apiKey("X-TAPIS-TOKEN"); // TapisJWT authentication } const response = await this.request({ path: `/v3/workflows/groups/{group_id}/pipelines/{pipeline_id}/locks`.replace(`{${"group_id"}}`, encodeURIComponent(String(requestParameters.groupId))).replace(`{${"pipeline_id"}}`, encodeURIComponent(String(requestParameters.pipelineId))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => RespPipelineLockListFromJSON(jsonValue)); } /** * List all locks for a given pipeline * PipelineLocks */ async listPipelineLocks(requestParameters: ListPipelineLocksRequest, initOverrides?: RequestInit): Promise { const response = await this.listPipelineLocksRaw(requestParameters, initOverrides); return await response.value(); } /** * Release a lock on the Pipeline * PipelineLocks */ async releasePipelineLockRaw(requestParameters: ReleasePipelineLockRequest, initOverrides?: RequestInit): Promise> { if (requestParameters.groupId === null || requestParameters.groupId === undefined) { throw new runtime.RequiredError('groupId','Required parameter requestParameters.groupId was null or undefined when calling releasePipelineLock.'); } if (requestParameters.pipelineId === null || requestParameters.pipelineId === undefined) { throw new runtime.RequiredError('pipelineId','Required parameter requestParameters.pipelineId was null or undefined when calling releasePipelineLock.'); } if (requestParameters.pipelineRunUuid === null || requestParameters.pipelineRunUuid === undefined) { throw new runtime.RequiredError('pipelineRunUuid','Required parameter requestParameters.pipelineRunUuid was null or undefined when calling releasePipelineLock.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["X-TAPIS-TOKEN"] = this.configuration.apiKey("X-TAPIS-TOKEN"); // TapisJWT authentication } const response = await this.request({ path: `/v3/workflows/groups/{group_id}/pipelines/{pipeline_id}/runs/{pipeline_run_uuid}/locks`.replace(`{${"group_id"}}`, encodeURIComponent(String(requestParameters.groupId))).replace(`{${"pipeline_id"}}`, encodeURIComponent(String(requestParameters.pipelineId))).replace(`{${"pipeline_run_uuid"}}`, encodeURIComponent(String(requestParameters.pipelineRunUuid))), method: 'DELETE', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Release a lock on the Pipeline * PipelineLocks */ async releasePipelineLock(requestParameters: ReleasePipelineLockRequest, initOverrides?: RequestInit): Promise { await this.releasePipelineLockRaw(requestParameters, initOverrides); } }