//---------------------- // // Generated using the NSwag toolchain v14.3.0.0 (NJsonSchema v11.2.0.0 (Newtonsoft.Json v13.0.0.0)) (http://NSwag.org) // //---------------------- /* tslint:disable */ /* eslint-disable */ // ReSharper disable InconsistentNaming export class Client { private http: { fetch(url: RequestInfo, init?: RequestInit): Promise }; private baseUrl: string; protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined; constructor(baseUrl?: string, http?: { fetch(url: RequestInfo, init?: RequestInit): Promise }) { this.http = http ? http : window as any; this.baseUrl = baseUrl ?? "http://localhost:5000"; } get(): Promise { let url_ = this.baseUrl + "/"; url_ = url_.replace(/[?&]$/, ""); let options_: RequestInit = { method: "GET", headers: { } }; return this.http.fetch(url_, options_).then((_response: Response) => { return this.processGet(_response); }); } protected processGet(response: Response): Promise { const status = response.status; let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); }; if (status === 200) { return response.text().then((_responseText) => { return; }); } else if (status !== 200 && status !== 204) { return response.text().then((_responseText) => { return throwException("An unexpected server error occurred.", status, _responseText, _headers); }); } return Promise.resolve(null as any); } } export class UDPClient { private http: { fetch(url: RequestInfo, init?: RequestInit): Promise }; private baseUrl: string; protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined; constructor(baseUrl?: string, http?: { fetch(url: RequestInfo, init?: RequestInit): Promise }) { this.http = http ? http : window as any; this.baseUrl = baseUrl ?? "http://localhost:5000"; } /** * 页面 */ index(): Promise { let url_ = this.baseUrl + "/api/UDP"; url_ = url_.replace(/[?&]$/, ""); let options_: RequestInit = { method: "GET", headers: { "Accept": "application/json" } }; return this.http.fetch(url_, options_).then((_response: Response) => { return this.processIndex(_response); }); } protected processIndex(response: Response): Promise { const status = response.status; let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); }; if (status === 200) { return response.text().then((_responseText) => { let result200: any = null; let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver); result200 = resultData200 !== undefined ? resultData200 : null; return result200; }); } else if (status !== 200 && status !== 204) { return response.text().then((_responseText) => { return throwException("An unexpected server error occurred.", status, _responseText, _headers); }); } return Promise.resolve(null as any); } /** * 发送字符串 * @param address (optional) IPV4 或者 IPV6 地址 * @param port (optional) 设备端口号 * @param text (optional) 发送的文本 * @return 发送成功 */ sendString(address: string | undefined, port: number | undefined, text: string | undefined): Promise { let url_ = this.baseUrl + "/api/UDP/SendString?"; if (address === null) throw new Error("The parameter 'address' cannot be null."); else if (address !== undefined) url_ += "address=" + encodeURIComponent("" + address) + "&"; if (port === null) throw new Error("The parameter 'port' cannot be null."); else if (port !== undefined) url_ += "port=" + encodeURIComponent("" + port) + "&"; if (text === null) throw new Error("The parameter 'text' cannot be null."); else if (text !== undefined) url_ += "text=" + encodeURIComponent("" + text) + "&"; url_ = url_.replace(/[?&]$/, ""); let options_: RequestInit = { method: "POST", headers: { } }; return this.http.fetch(url_, options_).then((_response: Response) => { return this.processSendString(_response); }); } protected processSendString(response: Response): Promise { const status = response.status; let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); }; if (status === 200) { return response.text().then((_responseText) => { return; }); } else if (status === 500) { return response.text().then((_responseText) => { return throwException("\u53d1\u9001\u5931\u8d25", status, _responseText, _headers); }); } else if (status !== 200 && status !== 204) { return response.text().then((_responseText) => { return throwException("An unexpected server error occurred.", status, _responseText, _headers); }); } return Promise.resolve(null as any); } /** * 发送二进制数据 * @param address (optional) IPV4 或者 IPV6 地址 * @param port (optional) 设备端口号 * @param bytes (optional) 16进制文本 */ sendBytes(address: string | undefined, port: number | undefined, bytes: string | undefined): Promise { let url_ = this.baseUrl + "/api/UDP/SendBytes?"; if (address === null) throw new Error("The parameter 'address' cannot be null."); else if (address !== undefined) url_ += "address=" + encodeURIComponent("" + address) + "&"; if (port === null) throw new Error("The parameter 'port' cannot be null."); else if (port !== undefined) url_ += "port=" + encodeURIComponent("" + port) + "&"; if (bytes === null) throw new Error("The parameter 'bytes' cannot be null."); else if (bytes !== undefined) url_ += "bytes=" + encodeURIComponent("" + bytes) + "&"; url_ = url_.replace(/[?&]$/, ""); let options_: RequestInit = { method: "POST", headers: { } }; return this.http.fetch(url_, options_).then((_response: Response) => { return this.processSendBytes(_response); }); } protected processSendBytes(response: Response): Promise { const status = response.status; let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); }; if (status === 200) { return response.text().then((_responseText) => { return; }); } else if (status === 500) { return response.text().then((_responseText) => { return throwException("A server side error occurred.", status, _responseText, _headers); }); } else if (status !== 200 && status !== 204) { return response.text().then((_responseText) => { return throwException("An unexpected server error occurred.", status, _responseText, _headers); }); } return Promise.resolve(null as any); } /** * 发送地址包 * @param address (optional) IP地址 * @param port (optional) UDP 端口号 * @param opts 地址包选项 */ sendAddrPackage(address: string | undefined, port: number | undefined, opts: SendAddrPackOptions): Promise { let url_ = this.baseUrl + "/api/UDP/SendAddrPackage?"; if (address === null) throw new Error("The parameter 'address' cannot be null."); else if (address !== undefined) url_ += "address=" + encodeURIComponent("" + address) + "&"; if (port === null) throw new Error("The parameter 'port' cannot be null."); else if (port !== undefined) url_ += "port=" + encodeURIComponent("" + port) + "&"; url_ = url_.replace(/[?&]$/, ""); const content_ = JSON.stringify(opts); let options_: RequestInit = { body: content_, method: "POST", headers: { "Content-Type": "application/json", } }; return this.http.fetch(url_, options_).then((_response: Response) => { return this.processSendAddrPackage(_response); }); } protected processSendAddrPackage(response: Response): Promise { const status = response.status; let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); }; if (status === 200) { return response.text().then((_responseText) => { return; }); } else if (status === 500) { return response.text().then((_responseText) => { return throwException("A server side error occurred.", status, _responseText, _headers); }); } else if (status !== 200 && status !== 204) { return response.text().then((_responseText) => { return throwException("An unexpected server error occurred.", status, _responseText, _headers); }); } return Promise.resolve(null as any); } /** * 发送数据包 * @param address (optional) IP地址 * @param port (optional) UDP 端口号 * @param data (optional) 16进制数据 */ sendDataPackage(address: string | undefined, port: number | undefined, data: string | undefined): Promise { let url_ = this.baseUrl + "/api/UDP/SendDataPackage?"; if (address === null) throw new Error("The parameter 'address' cannot be null."); else if (address !== undefined) url_ += "address=" + encodeURIComponent("" + address) + "&"; if (port === null) throw new Error("The parameter 'port' cannot be null."); else if (port !== undefined) url_ += "port=" + encodeURIComponent("" + port) + "&"; if (data === null) throw new Error("The parameter 'data' cannot be null."); else if (data !== undefined) url_ += "data=" + encodeURIComponent("" + data) + "&"; url_ = url_.replace(/[?&]$/, ""); let options_: RequestInit = { method: "POST", headers: { } }; return this.http.fetch(url_, options_).then((_response: Response) => { return this.processSendDataPackage(_response); }); } protected processSendDataPackage(response: Response): Promise { const status = response.status; let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); }; if (status === 200) { return response.text().then((_responseText) => { return; }); } else if (status === 500) { return response.text().then((_responseText) => { return throwException("A server side error occurred.", status, _responseText, _headers); }); } else if (status !== 200 && status !== 204) { return response.text().then((_responseText) => { return throwException("An unexpected server error occurred.", status, _responseText, _headers); }); } return Promise.resolve(null as any); } /** * 获取指定IP地址接受的数据列表 * @param address (optional) IP地址 */ getRecvDataArray(address: string | undefined): Promise { let url_ = this.baseUrl + "/api/UDP/GetRecvDataArray?"; if (address === null) throw new Error("The parameter 'address' cannot be null."); else if (address !== undefined) url_ += "address=" + encodeURIComponent("" + address) + "&"; url_ = url_.replace(/[?&]$/, ""); let options_: RequestInit = { method: "GET", headers: { "Accept": "application/json" } }; return this.http.fetch(url_, options_).then((_response: Response) => { return this.processGetRecvDataArray(_response); }); } protected processGetRecvDataArray(response: Response): Promise { const status = response.status; let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); }; if (status === 200) { return response.text().then((_responseText) => { let result200: any = null; let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver); if (Array.isArray(resultData200)) { result200 = [] as any; for (let item of resultData200) result200!.push(UDPData.fromJS(item)); } else { result200 = null; } return result200; }); } else if (status === 500) { return response.text().then((_responseText) => { return throwException("A server side error occurred.", status, _responseText, _headers); }); } else if (status !== 200 && status !== 204) { return response.text().then((_responseText) => { return throwException("An unexpected server error occurred.", status, _responseText, _headers); }); } return Promise.resolve(null as any); } } export class JtagClient { private http: { fetch(url: RequestInfo, init?: RequestInit): Promise }; private baseUrl: string; protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined; constructor(baseUrl?: string, http?: { fetch(url: RequestInfo, init?: RequestInit): Promise }) { this.http = http ? http : window as any; this.baseUrl = baseUrl ?? "http://localhost:5000"; } /** * 页面 */ index(): Promise { let url_ = this.baseUrl + "/api/Jtag"; url_ = url_.replace(/[?&]$/, ""); let options_: RequestInit = { method: "GET", headers: { "Accept": "application/json" } }; return this.http.fetch(url_, options_).then((_response: Response) => { return this.processIndex(_response); }); } protected processIndex(response: Response): Promise { const status = response.status; let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); }; if (status === 200) { return response.text().then((_responseText) => { let result200: any = null; let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver); result200 = resultData200 !== undefined ? resultData200 : null; return result200; }); } else if (status !== 200 && status !== 204) { return response.text().then((_responseText) => { return throwException("An unexpected server error occurred.", status, _responseText, _headers); }); } return Promise.resolve(null as any); } /** * 执行一个Jtag命令 * @param address (optional) 设备地址 * @param port (optional) 设备端口 * @param hexDevAddr (optional) 16进制设备目的地址(Jtag) * @param hexCmd (optional) 16进制命令 */ runCommand(address: string | undefined, port: number | undefined, hexDevAddr: string | undefined, hexCmd: string | undefined): Promise { let url_ = this.baseUrl + "/api/Jtag/RunCommand?"; if (address === null) throw new Error("The parameter 'address' cannot be null."); else if (address !== undefined) url_ += "address=" + encodeURIComponent("" + address) + "&"; if (port === null) throw new Error("The parameter 'port' cannot be null."); else if (port !== undefined) url_ += "port=" + encodeURIComponent("" + port) + "&"; if (hexDevAddr === null) throw new Error("The parameter 'hexDevAddr' cannot be null."); else if (hexDevAddr !== undefined) url_ += "hexDevAddr=" + encodeURIComponent("" + hexDevAddr) + "&"; if (hexCmd === null) throw new Error("The parameter 'hexCmd' cannot be null."); else if (hexCmd !== undefined) url_ += "hexCmd=" + encodeURIComponent("" + hexCmd) + "&"; url_ = url_.replace(/[?&]$/, ""); let options_: RequestInit = { method: "POST", headers: { } }; return this.http.fetch(url_, options_).then((_response: Response) => { return this.processRunCommand(_response); }); } protected processRunCommand(response: Response): Promise { const status = response.status; let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); }; if (status === 200) { return response.text().then((_responseText) => { return; }); } else if (status === 500) { return response.text().then((_responseText) => { return throwException("A server side error occurred.", status, _responseText, _headers); }); } else if (status !== 200 && status !== 204) { return response.text().then((_responseText) => { return throwException("An unexpected server error occurred.", status, _responseText, _headers); }); } return Promise.resolve(null as any); } /** * 获取Jtag ID Code * @param address (optional) 设备地址 * @param port (optional) 设备端口 */ getDeviceIDCode(address: string | undefined, port: number | undefined): Promise { let url_ = this.baseUrl + "/api/Jtag/GetDeviceIDCode?"; if (address === null) throw new Error("The parameter 'address' cannot be null."); else if (address !== undefined) url_ += "address=" + encodeURIComponent("" + address) + "&"; if (port === null) throw new Error("The parameter 'port' cannot be null."); else if (port !== undefined) url_ += "port=" + encodeURIComponent("" + port) + "&"; url_ = url_.replace(/[?&]$/, ""); let options_: RequestInit = { method: "GET", headers: { } }; return this.http.fetch(url_, options_).then((_response: Response) => { return this.processGetDeviceIDCode(_response); }); } protected processGetDeviceIDCode(response: Response): Promise { const status = response.status; let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); }; if (status === 200) { return response.text().then((_responseText) => { return; }); } else if (status === 500) { return response.text().then((_responseText) => { return throwException("A server side error occurred.", status, _responseText, _headers); }); } else if (status !== 200 && status !== 204) { return response.text().then((_responseText) => { return throwException("An unexpected server error occurred.", status, _responseText, _headers); }); } return Promise.resolve(null as any); } /** * 上传比特流文件 * @param address (optional) 设备地址 * @param file (optional) */ uploadBitstream(address: string | undefined, file: FileParameter | null | undefined): Promise { let url_ = this.baseUrl + "/api/Jtag/UploadBitstream?"; if (address === null) throw new Error("The parameter 'address' cannot be null."); else if (address !== undefined) url_ += "address=" + encodeURIComponent("" + address) + "&"; url_ = url_.replace(/[?&]$/, ""); const content_ = new FormData(); if (file !== null && file !== undefined) content_.append("file", file.data, file.fileName ? file.fileName : "file"); let options_: RequestInit = { body: content_, method: "POST", headers: { } }; return this.http.fetch(url_, options_).then((_response: Response) => { return this.processUploadBitstream(_response); }); } protected processUploadBitstream(response: Response): Promise { const status = response.status; let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); }; if (status === 200) { return response.text().then((_responseText) => { return; }); } else if (status === 400) { return response.text().then((_responseText) => { let result400: any = null; let resultData400 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver); result400 = ProblemDetails.fromJS(resultData400); return throwException("A server side error occurred.", status, _responseText, _headers, result400); }); } else if (status !== 200 && status !== 204) { return response.text().then((_responseText) => { return throwException("An unexpected server error occurred.", status, _responseText, _headers); }); } return Promise.resolve(null as any); } /** * 通过Jtag下载比特流文件 * @param address (optional) 设备地址 * @param port (optional) 设备端口 */ downloadBitstream(address: string | undefined, port: number | undefined): Promise { let url_ = this.baseUrl + "/api/Jtag/DownloadBitstream?"; if (address === null) throw new Error("The parameter 'address' cannot be null."); else if (address !== undefined) url_ += "address=" + encodeURIComponent("" + address) + "&"; if (port === null) throw new Error("The parameter 'port' cannot be null."); else if (port !== undefined) url_ += "port=" + encodeURIComponent("" + port) + "&"; url_ = url_.replace(/[?&]$/, ""); let options_: RequestInit = { method: "POST", headers: { } }; return this.http.fetch(url_, options_).then((_response: Response) => { return this.processDownloadBitstream(_response); }); } protected processDownloadBitstream(response: Response): Promise { const status = response.status; let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); }; if (status === 200) { return response.text().then((_responseText) => { return; }); } else if (status === 400) { return response.text().then((_responseText) => { let result400: any = null; let resultData400 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver); result400 = ProblemDetails.fromJS(resultData400); return throwException("A server side error occurred.", status, _responseText, _headers, result400); }); } else if (status === 500) { return response.text().then((_responseText) => { return throwException("A server side error occurred.", status, _responseText, _headers); }); } else if (status !== 200 && status !== 204) { return response.text().then((_responseText) => { return throwException("An unexpected server error occurred.", status, _responseText, _headers); }); } return Promise.resolve(null as any); } } /** Package options which to send address to read or write */ export class SendAddrPackOptions implements ISendAddrPackOptions { /** 突发类型 */ burstType?: BurstType; /** 任务ID */ commandID?: number; /** 标识写入还是读取 */ isWrite?: boolean; /** 突发长度:0是32bits,255是32bits x 256 */ burstLength?: number; /** 目标地址 */ address?: number; constructor(data?: ISendAddrPackOptions) { if (data) { for (var property in data) { if (data.hasOwnProperty(property)) (this)[property] = (data)[property]; } } } init(_data?: any) { if (_data) { this.burstType = _data["burstType"]; this.commandID = _data["commandID"]; this.isWrite = _data["isWrite"]; this.burstLength = _data["burstLength"]; this.address = _data["address"]; } } static fromJS(data: any): SendAddrPackOptions { data = typeof data === 'object' ? data : {}; let result = new SendAddrPackOptions(); result.init(data); return result; } toJSON(data?: any) { data = typeof data === 'object' ? data : {}; data["burstType"] = this.burstType; data["commandID"] = this.commandID; data["isWrite"] = this.isWrite; data["burstLength"] = this.burstLength; data["address"] = this.address; return data; } } /** Package options which to send address to read or write */ export interface ISendAddrPackOptions { /** 突发类型 */ burstType?: BurstType; /** 任务ID */ commandID?: number; /** 标识写入还是读取 */ isWrite?: boolean; /** 突发长度:0是32bits,255是32bits x 256 */ burstLength?: number; /** 目标地址 */ address?: number; } /** Package Burst Type */ export enum BurstType { ExtendBurst = 0, FixedBurst = 1, } /** UDP接受数据包格式 */ export class UDPData implements IUDPData { /** 接受到的时间 */ dateTime?: Date; /** 发送来源的IP地址 */ address?: string; /** 发送来源的端口号 */ port?: number; /** 接受到的数据 */ data?: string; /** 是否被读取过 */ hasRead?: boolean; constructor(data?: IUDPData) { if (data) { for (var property in data) { if (data.hasOwnProperty(property)) (this)[property] = (data)[property]; } } } init(_data?: any) { if (_data) { this.dateTime = _data["dateTime"] ? new Date(_data["dateTime"].toString()) : undefined; this.address = _data["address"]; this.port = _data["port"]; this.data = _data["data"]; this.hasRead = _data["hasRead"]; } } static fromJS(data: any): UDPData { data = typeof data === 'object' ? data : {}; let result = new UDPData(); result.init(data); return result; } toJSON(data?: any) { data = typeof data === 'object' ? data : {}; data["dateTime"] = this.dateTime ? this.dateTime.toISOString() : undefined; data["address"] = this.address; data["port"] = this.port; data["data"] = this.data; data["hasRead"] = this.hasRead; return data; } } /** UDP接受数据包格式 */ export interface IUDPData { /** 接受到的时间 */ dateTime?: Date; /** 发送来源的IP地址 */ address?: string; /** 发送来源的端口号 */ port?: number; /** 接受到的数据 */ data?: string; /** 是否被读取过 */ hasRead?: boolean; } export class ProblemDetails implements IProblemDetails { type?: string | undefined; title?: string | undefined; status?: number | undefined; detail?: string | undefined; instance?: string | undefined; extensions?: { [key: string]: any; }; [key: string]: any; constructor(data?: IProblemDetails) { if (data) { for (var property in data) { if (data.hasOwnProperty(property)) (this)[property] = (data)[property]; } } } init(_data?: any) { if (_data) { for (var property in _data) { if (_data.hasOwnProperty(property)) this[property] = _data[property]; } this.type = _data["type"]; this.title = _data["title"]; this.status = _data["status"]; this.detail = _data["detail"]; this.instance = _data["instance"]; if (_data["extensions"]) { this.extensions = {} as any; for (let key in _data["extensions"]) { if (_data["extensions"].hasOwnProperty(key)) (this.extensions)![key] = _data["extensions"][key]; } } } } static fromJS(data: any): ProblemDetails { data = typeof data === 'object' ? data : {}; let result = new ProblemDetails(); result.init(data); return result; } toJSON(data?: any) { data = typeof data === 'object' ? data : {}; for (var property in this) { if (this.hasOwnProperty(property)) data[property] = this[property]; } data["type"] = this.type; data["title"] = this.title; data["status"] = this.status; data["detail"] = this.detail; data["instance"] = this.instance; if (this.extensions) { data["extensions"] = {}; for (let key in this.extensions) { if (this.extensions.hasOwnProperty(key)) (data["extensions"])[key] = (this.extensions)[key]; } } return data; } } export interface IProblemDetails { type?: string | undefined; title?: string | undefined; status?: number | undefined; detail?: string | undefined; instance?: string | undefined; extensions?: { [key: string]: any; }; [key: string]: any; } export interface FileParameter { data: any; fileName: string; } export class ApiException extends Error { message: string; status: number; response: string; headers: { [key: string]: any; }; result: any; constructor(message: string, status: number, response: string, headers: { [key: string]: any; }, result: any) { super(); this.message = message; this.status = status; this.response = response; this.headers = headers; this.result = result; } protected isApiException = true; static isApiException(obj: any): obj is ApiException { return obj.isApiException === true; } } function throwException(message: string, status: number, response: string, headers: { [key: string]: any; }, result?: any): any { if (result !== null && result !== undefined) throw result; else throw new ApiException(message, status, response, headers, null); }