UNPKG

cwmsjs

Version:

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

332 lines (271 loc) 11.4 kB
/* tslint:disable */ /* eslint-disable */ /** * CWMS Data API * CWMS REST API for Data Retrieval * * The version of the OpenAPI document: 2.3.2-2025.03.19 * * * 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 type { CdaError, DeleteMethod, Stream, } from '../models/index'; import { CdaErrorFromJSON, CdaErrorToJSON, DeleteMethodFromJSON, DeleteMethodToJSON, StreamFromJSON, StreamToJSON, } from '../models/index'; 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 cwmsData streams with name */ async deleteStreamsWithNameRaw(requestParameters: DeleteStreamsWithNameRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> { if (requestParameters['name'] == null) { throw new runtime.RequiredError( 'name', 'Required parameter "name" was null or undefined when calling deleteStreamsWithName().' ); } if (requestParameters['office'] == null) { throw new runtime.RequiredError( 'office', 'Required parameter "office" was null or undefined when calling deleteStreamsWithName().' ); } const queryParameters: any = {}; if (requestParameters['office'] != null) { queryParameters['office'] = requestParameters['office']; } if (requestParameters['method'] != null) { queryParameters['method'] = requestParameters['method']; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await 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 cwmsData streams with name */ async deleteStreamsWithName(requestParameters: DeleteStreamsWithNameRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> { await this.deleteStreamsWithNameRaw(requestParameters, initOverrides); } /** * Returns matching CWMS Stream Data for a Reservoir Project. * Get cwmsData streams */ async getStreamsRaw(requestParameters: GetStreamsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<Stream>>> { const queryParameters: any = {}; if (requestParameters['officeMask'] != null) { queryParameters['office-mask'] = requestParameters['officeMask']; } if (requestParameters['streamIdMask'] != null) { queryParameters['stream-id-mask'] = requestParameters['streamIdMask']; } if (requestParameters['divertsFromStreamIdMask'] != null) { queryParameters['diverts-from-stream-id-mask'] = requestParameters['divertsFromStreamIdMask']; } if (requestParameters['flowsIntoStreamIdMask'] != null) { queryParameters['flows-into-stream-id-mask'] = requestParameters['flowsIntoStreamIdMask']; } if (requestParameters['stationUnit'] != null) { queryParameters['station-unit'] = requestParameters['stationUnit']; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await 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 cwmsData streams */ async getStreams(requestParameters: GetStreamsRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<Stream>> { const response = await this.getStreamsRaw(requestParameters, initOverrides); return await response.value(); } /** * Returns CWMS Stream Data * Get cwmsData streams with name */ async getStreamsWithNameRaw(requestParameters: GetStreamsWithNameRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<Stream>>> { if (requestParameters['name'] == null) { throw new runtime.RequiredError( 'name', 'Required parameter "name" was null or undefined when calling getStreamsWithName().' ); } if (requestParameters['office'] == null) { throw new runtime.RequiredError( 'office', 'Required parameter "office" was null or undefined when calling getStreamsWithName().' ); } const queryParameters: any = {}; if (requestParameters['office'] != null) { queryParameters['office'] = requestParameters['office']; } if (requestParameters['stationUnit'] != null) { queryParameters['station-unit'] = requestParameters['stationUnit']; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await 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 cwmsData streams with name */ async getStreamsWithName(requestParameters: GetStreamsWithNameRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<Stream>> { const response = await this.getStreamsWithNameRaw(requestParameters, initOverrides); return await response.value(); } /** * Rename CWMS Stream * Patch cwmsData streams with name */ async patchStreamsWithNameRaw(requestParameters: PatchStreamsWithNameRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> { if (requestParameters['name'] == null) { throw new runtime.RequiredError( 'name', 'Required parameter "name" was null or undefined when calling patchStreamsWithName().' ); } if (requestParameters['name2'] == null) { throw new runtime.RequiredError( 'name2', 'Required parameter "name2" was null or undefined when calling patchStreamsWithName().' ); } if (requestParameters['office'] == null) { throw new runtime.RequiredError( 'office', 'Required parameter "office" was null or undefined when calling patchStreamsWithName().' ); } const queryParameters: any = {}; if (requestParameters['name2'] != null) { queryParameters['name'] = requestParameters['name2']; } if (requestParameters['office'] != null) { queryParameters['office'] = requestParameters['office']; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["Authorization"] = await 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 cwmsData streams with name */ async patchStreamsWithName(requestParameters: PatchStreamsWithNameRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> { await this.patchStreamsWithNameRaw(requestParameters, initOverrides); } /** * Create CWMS Stream * Post cwmsData streams */ async postStreamsRaw(requestParameters: PostStreamsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> { if (requestParameters['stream'] == null) { throw new runtime.RequiredError( 'stream', 'Required parameter "stream" was null or undefined when calling postStreams().' ); } const queryParameters: any = {}; if (requestParameters['failIfExists'] != null) { 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"] = await 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 cwmsData streams */ async postStreams(requestParameters: PostStreamsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> { await this.postStreamsRaw(requestParameters, initOverrides); } }