UNPKG

cwmsjs

Version:

CWMS Data API Library for JavaScript/TypeScript created with OpenAPI generator for use with browser webapps

306 lines (245 loc) 10.9 kB
/* tslint:disable */ /* eslint-disable */ /** * CWMS Data API * CWMS REST API for Data Retrieval * * The version of the OpenAPI document: 2.4.0-2026.3.16 * * * 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 { CdaError, CdaErrorFromJSON, CdaErrorToJSON, DeleteMethod, DeleteMethodFromJSON, DeleteMethodToJSON, Stream, StreamFromJSON, StreamToJSON, } from '../models'; export interface DeleteStreamsWithNameRequest { name: string; office: string; method?: DeleteMethod; } export interface GetStreamsRequest { officeMask?: string; streamIdMask?: string; divertsFromStreamIdMask?: string; flowsIntoStreamIdMask?: string; stationUnit?: string; } export interface GetStreamsWithNameRequest { name: string; office: string; stationUnit?: string; } export interface PatchStreamsWithNameRequest { name: string; name2: string; office: string; } export interface PostStreamsRequest { stream: Stream; failIfExists?: boolean; } /** * */ export class StreamsApi extends runtime.BaseAPI { /** * Delete CWMS Stream * Delete streams with name */ async deleteStreamsWithNameRaw(requestParameters: DeleteStreamsWithNameRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<void>> { if (requestParameters.name === null || requestParameters.name === undefined) { throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling deleteStreamsWithName.'); } if (requestParameters.office === null || requestParameters.office === undefined) { throw new runtime.RequiredError('office','Required parameter requestParameters.office was null or undefined when calling deleteStreamsWithName.'); } const queryParameters: any = {}; if (requestParameters.office !== undefined) { queryParameters['office'] = requestParameters.office; } if (requestParameters.method !== undefined) { queryParameters['method'] = requestParameters.method; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/streams/{name}`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))), method: 'DELETE', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Delete CWMS Stream * Delete streams with name */ async deleteStreamsWithName(requestParameters: DeleteStreamsWithNameRequest, initOverrides?: RequestInit): Promise<void> { await this.deleteStreamsWithNameRaw(requestParameters, initOverrides); } /** * Returns matching CWMS Stream Data for a Reservoir Project. * Get streams */ async getStreamsRaw(requestParameters: GetStreamsRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<Array<Stream>>> { const queryParameters: any = {}; if (requestParameters.officeMask !== undefined) { queryParameters['office-mask'] = requestParameters.officeMask; } if (requestParameters.streamIdMask !== undefined) { queryParameters['stream-id-mask'] = requestParameters.streamIdMask; } if (requestParameters.divertsFromStreamIdMask !== undefined) { queryParameters['diverts-from-stream-id-mask'] = requestParameters.divertsFromStreamIdMask; } if (requestParameters.flowsIntoStreamIdMask !== undefined) { queryParameters['flows-into-stream-id-mask'] = requestParameters.flowsIntoStreamIdMask; } if (requestParameters.stationUnit !== undefined) { queryParameters['station-unit'] = requestParameters.stationUnit; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/streams`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(StreamFromJSON)); } /** * Returns matching CWMS Stream Data for a Reservoir Project. * Get streams */ async getStreams(requestParameters: GetStreamsRequest = {}, initOverrides?: RequestInit): Promise<Array<Stream>> { const response = await this.getStreamsRaw(requestParameters, initOverrides); return await response.value(); } /** * Returns CWMS Stream Data * Get streams with name */ async getStreamsWithNameRaw(requestParameters: GetStreamsWithNameRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<Array<Stream>>> { if (requestParameters.name === null || requestParameters.name === undefined) { throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling getStreamsWithName.'); } if (requestParameters.office === null || requestParameters.office === undefined) { throw new runtime.RequiredError('office','Required parameter requestParameters.office was null or undefined when calling getStreamsWithName.'); } const queryParameters: any = {}; if (requestParameters.office !== undefined) { queryParameters['office'] = requestParameters.office; } if (requestParameters.stationUnit !== undefined) { queryParameters['station-unit'] = requestParameters.stationUnit; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/streams/{name}`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(StreamFromJSON)); } /** * Returns CWMS Stream Data * Get streams with name */ async getStreamsWithName(requestParameters: GetStreamsWithNameRequest, initOverrides?: RequestInit): Promise<Array<Stream>> { const response = await this.getStreamsWithNameRaw(requestParameters, initOverrides); return await response.value(); } /** * Rename CWMS Stream * Patch streams with name */ async patchStreamsWithNameRaw(requestParameters: PatchStreamsWithNameRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<void>> { if (requestParameters.name === null || requestParameters.name === undefined) { throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling patchStreamsWithName.'); } if (requestParameters.name2 === null || requestParameters.name2 === undefined) { throw new runtime.RequiredError('name2','Required parameter requestParameters.name2 was null or undefined when calling patchStreamsWithName.'); } if (requestParameters.office === null || requestParameters.office === undefined) { throw new runtime.RequiredError('office','Required parameter requestParameters.office was null or undefined when calling patchStreamsWithName.'); } const queryParameters: any = {}; if (requestParameters.name2 !== undefined) { queryParameters['name'] = requestParameters.name2; } if (requestParameters.office !== undefined) { queryParameters['office'] = requestParameters.office; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/streams/{name}`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters.name))), method: 'PATCH', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Rename CWMS Stream * Patch streams with name */ async patchStreamsWithName(requestParameters: PatchStreamsWithNameRequest, initOverrides?: RequestInit): Promise<void> { await this.patchStreamsWithNameRaw(requestParameters, initOverrides); } /** * Create CWMS Stream * Post streams */ async postStreamsRaw(requestParameters: PostStreamsRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<void>> { if (requestParameters.stream === null || requestParameters.stream === undefined) { throw new runtime.RequiredError('stream','Required parameter requestParameters.stream was null or undefined when calling postStreams.'); } const queryParameters: any = {}; if (requestParameters.failIfExists !== undefined) { queryParameters['fail-if-exists'] = requestParameters.failIfExists; } const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json;version=1'; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = this.configuration.apiKey("Authorization"); // ApiKey authentication } const response = await this.request({ path: `/streams`, method: 'POST', headers: headerParameters, query: queryParameters, body: StreamToJSON(requestParameters.stream), }, initOverrides); return new runtime.VoidApiResponse(response); } /** * Create CWMS Stream * Post streams */ async postStreams(requestParameters: PostStreamsRequest, initOverrides?: RequestInit): Promise<void> { await this.postStreamsRaw(requestParameters, initOverrides); } }