cwmsjs
Version:
CWMS Data API Library for JavaScript/TypeScript created with OpenAPI generator for use with browser webapps
412 lines (337 loc) • 14.9 kB
text/typescript
/* 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,
TextTimeSeries,
} from '../models/index';
import {
CdaErrorFromJSON,
CdaErrorToJSON,
TextTimeSeriesFromJSON,
TextTimeSeriesToJSON,
} from '../models/index';
export interface DeleteTimeSeriesTextWithNameRequest {
name: string;
office: string;
textMask: string;
begin: string;
end: string;
timezone?: string;
versionDate?: string;
}
export interface GetTimeSeriesTextRequest {
office: string;
name: string;
begin: string;
end: string;
timezone?: string;
}
export interface GetTimeSeriesTextWithNameValueRequest {
name: string;
office: string;
date: string;
timezone?: string;
versionDate?: string;
clobId?: string;
}
export interface PatchTimeSeriesTextWithNameRequest {
name: string;
textTimeSeries: TextTimeSeries;
replaceAll?: boolean;
}
export interface PostTimeSeriesTextRequest {
textTimeSeries: TextTimeSeries;
replaceAll?: boolean;
}
/**
*
*/
export class TextTimeSeriesApi extends runtime.BaseAPI {
/**
* Deletes requested text timeseries id
* Delete cwmsData timeseries text with name
*/
async deleteTimeSeriesTextWithNameRaw(requestParameters: DeleteTimeSeriesTextWithNameRequest, 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 deleteTimeSeriesTextWithName().'
);
}
if (requestParameters['office'] == null) {
throw new runtime.RequiredError(
'office',
'Required parameter "office" was null or undefined when calling deleteTimeSeriesTextWithName().'
);
}
if (requestParameters['textMask'] == null) {
throw new runtime.RequiredError(
'textMask',
'Required parameter "textMask" was null or undefined when calling deleteTimeSeriesTextWithName().'
);
}
if (requestParameters['begin'] == null) {
throw new runtime.RequiredError(
'begin',
'Required parameter "begin" was null or undefined when calling deleteTimeSeriesTextWithName().'
);
}
if (requestParameters['end'] == null) {
throw new runtime.RequiredError(
'end',
'Required parameter "end" was null or undefined when calling deleteTimeSeriesTextWithName().'
);
}
const queryParameters: any = {};
if (requestParameters['office'] != null) {
queryParameters['office'] = requestParameters['office'];
}
if (requestParameters['textMask'] != null) {
queryParameters['text-mask'] = requestParameters['textMask'];
}
if (requestParameters['timezone'] != null) {
queryParameters['timezone'] = requestParameters['timezone'];
}
if (requestParameters['begin'] != null) {
queryParameters['begin'] = requestParameters['begin'];
}
if (requestParameters['end'] != null) {
queryParameters['end'] = requestParameters['end'];
}
if (requestParameters['versionDate'] != null) {
queryParameters['version-date'] = requestParameters['versionDate'];
}
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: `/timeseries/text/{name}`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters['name']))),
method: 'DELETE',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Deletes requested text timeseries id
* Delete cwmsData timeseries text with name
*/
async deleteTimeSeriesTextWithName(requestParameters: DeleteTimeSeriesTextWithNameRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.deleteTimeSeriesTextWithNameRaw(requestParameters, initOverrides);
}
/**
* Retrieve text time series values for a provided time window and date version.If individual values exceed 64 kilobytes, a URL to a separate download is provided instead of being included in the returned payload from this request.
*/
async getTimeSeriesTextRaw(requestParameters: GetTimeSeriesTextRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<TextTimeSeries>> {
if (requestParameters['office'] == null) {
throw new runtime.RequiredError(
'office',
'Required parameter "office" was null or undefined when calling getTimeSeriesText().'
);
}
if (requestParameters['name'] == null) {
throw new runtime.RequiredError(
'name',
'Required parameter "name" was null or undefined when calling getTimeSeriesText().'
);
}
if (requestParameters['begin'] == null) {
throw new runtime.RequiredError(
'begin',
'Required parameter "begin" was null or undefined when calling getTimeSeriesText().'
);
}
if (requestParameters['end'] == null) {
throw new runtime.RequiredError(
'end',
'Required parameter "end" was null or undefined when calling getTimeSeriesText().'
);
}
const queryParameters: any = {};
if (requestParameters['office'] != null) {
queryParameters['office'] = requestParameters['office'];
}
if (requestParameters['name'] != null) {
queryParameters['name'] = requestParameters['name'];
}
if (requestParameters['timezone'] != null) {
queryParameters['timezone'] = requestParameters['timezone'];
}
if (requestParameters['begin'] != null) {
queryParameters['begin'] = requestParameters['begin'];
}
if (requestParameters['end'] != null) {
queryParameters['end'] = requestParameters['end'];
}
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: `/timeseries/text`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => TextTimeSeriesFromJSON(jsonValue));
}
/**
* Retrieve text time series values for a provided time window and date version.If individual values exceed 64 kilobytes, a URL to a separate download is provided instead of being included in the returned payload from this request.
*/
async getTimeSeriesText(requestParameters: GetTimeSeriesTextRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<TextTimeSeries> {
const response = await this.getTimeSeriesTextRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Get cwmsData timeseries text with name value
*/
async getTimeSeriesTextWithNameValueRaw(requestParameters: GetTimeSeriesTextWithNameValueRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<string>> {
if (requestParameters['name'] == null) {
throw new runtime.RequiredError(
'name',
'Required parameter "name" was null or undefined when calling getTimeSeriesTextWithNameValue().'
);
}
if (requestParameters['office'] == null) {
throw new runtime.RequiredError(
'office',
'Required parameter "office" was null or undefined when calling getTimeSeriesTextWithNameValue().'
);
}
if (requestParameters['date'] == null) {
throw new runtime.RequiredError(
'date',
'Required parameter "date" was null or undefined when calling getTimeSeriesTextWithNameValue().'
);
}
const queryParameters: any = {};
if (requestParameters['office'] != null) {
queryParameters['office'] = requestParameters['office'];
}
if (requestParameters['timezone'] != null) {
queryParameters['timezone'] = requestParameters['timezone'];
}
if (requestParameters['date'] != null) {
queryParameters['date'] = requestParameters['date'];
}
if (requestParameters['versionDate'] != null) {
queryParameters['version-date'] = requestParameters['versionDate'];
}
if (requestParameters['clobId'] != null) {
queryParameters['clob-id'] = requestParameters['clobId'];
}
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: `/timeseries/text/{name}/value`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters['name']))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
if (this.isJsonMime(response.headers.get('content-type'))) {
return new runtime.JSONApiResponse<string>(response);
} else {
return new runtime.TextApiResponse(response) as any;
}
}
/**
* Get cwmsData timeseries text with name value
*/
async getTimeSeriesTextWithNameValue(requestParameters: GetTimeSeriesTextWithNameValueRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<string> {
const response = await this.getTimeSeriesTextWithNameValueRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* Updates a text timeseries
* Patch cwmsData timeseries text with name
*/
async patchTimeSeriesTextWithNameRaw(requestParameters: PatchTimeSeriesTextWithNameRequest, 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 patchTimeSeriesTextWithName().'
);
}
if (requestParameters['textTimeSeries'] == null) {
throw new runtime.RequiredError(
'textTimeSeries',
'Required parameter "textTimeSeries" was null or undefined when calling patchTimeSeriesTextWithName().'
);
}
const queryParameters: any = {};
if (requestParameters['replaceAll'] != null) {
queryParameters['replace-all'] = requestParameters['replaceAll'];
}
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/json;version=2';
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication
}
const response = await this.request({
path: `/timeseries/text/{name}`.replace(`{${"name"}}`, encodeURIComponent(String(requestParameters['name']))),
method: 'PATCH',
headers: headerParameters,
query: queryParameters,
body: TextTimeSeriesToJSON(requestParameters['textTimeSeries']),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Updates a text timeseries
* Patch cwmsData timeseries text with name
*/
async patchTimeSeriesTextWithName(requestParameters: PatchTimeSeriesTextWithNameRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.patchTimeSeriesTextWithNameRaw(requestParameters, initOverrides);
}
/**
* Create new TextTimeSeries
* Post cwmsData timeseries text
*/
async postTimeSeriesTextRaw(requestParameters: PostTimeSeriesTextRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
if (requestParameters['textTimeSeries'] == null) {
throw new runtime.RequiredError(
'textTimeSeries',
'Required parameter "textTimeSeries" was null or undefined when calling postTimeSeriesText().'
);
}
const queryParameters: any = {};
if (requestParameters['replaceAll'] != null) {
queryParameters['replace-all'] = requestParameters['replaceAll'];
}
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/json;version=2';
if (this.configuration && this.configuration.apiKey) {
headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKey authentication
}
const response = await this.request({
path: `/timeseries/text`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: TextTimeSeriesToJSON(requestParameters['textTimeSeries']),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
* Create new TextTimeSeries
* Post cwmsData timeseries text
*/
async postTimeSeriesText(requestParameters: PostTimeSeriesTextRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.postTimeSeriesTextRaw(requestParameters, initOverrides);
}
}