diff --git a/components.d.ts b/components.d.ts
index 20e9056..dca5943 100644
--- a/components.d.ts
+++ b/components.d.ts
@@ -13,6 +13,7 @@ declare module 'vue' {
BaseBoard: typeof import('./src/components/equipments/BaseBoard.vue')['default']
BaseInputField: typeof import('./src/components/InputField/BaseInputField.vue')['default']
Canvas: typeof import('./src/components/Canvas.vue')['default']
+ ChannelConfig: typeof import('./src/components/LogicAnalyzer/ChannelConfig.vue')['default']
CollapsibleSection: typeof import('./src/components/CollapsibleSection.vue')['default']
ComponentSelector: typeof import('./src/components/LabCanvas/ComponentSelector.vue')['default']
DDR: typeof import('./src/components/equipments/DDR.vue')['default']
@@ -67,6 +68,7 @@ declare module 'vue' {
TabsTrigger: typeof import('reka-ui')['TabsTrigger']
ThemeControlButton: typeof import('./src/components/ThemeControlButton.vue')['default']
ThemeControlToggle: typeof import('./src/components/ThemeControlToggle.vue')['default']
+ TriggerSettings: typeof import('./src/components/LogicAnalyzer/TriggerSettings.vue')['default']
TutorialCarousel: typeof import('./src/components/TutorialCarousel.vue')['default']
UploadCard: typeof import('./src/components/UploadCard.vue')['default']
WaveformDisplay: typeof import('./src/components/Oscilloscope/WaveformDisplay.vue')['default']
diff --git a/server/src/UdpServer.cs b/server/src/UdpServer.cs
index 1c89e01..3f4e915 100644
--- a/server/src/UdpServer.cs
+++ b/server/src/UdpServer.cs
@@ -346,25 +346,28 @@ public class UDPServer
return retPack.Value;
}
- private void ReceiveHandler(byte[] data, IPEndPoint endPoint)
+ private async Task ReceiveHandler(byte[] data, IPEndPoint endPoint, DateTime time)
{
- // Handle RemoteEP
- if (endPoint is null)
+ // 异步锁保护 udpData
+ await Task.Run(() =>
{
- logger.Debug($"Receive Data from Unknown at {DateTime.Now.ToString()}:");
- logger.Debug($" Original Data : {BitConverter.ToString(data).Replace("-", " ")}");
- return;
- }
+ lock (udpData)
+ {
+ // Handle RemoteEP
+ if (endPoint is null)
+ {
+ logger.Debug($"Receive Data from Unknown at {DateTime.Now.ToString()}:");
+ logger.Debug($" Original Data : {BitConverter.ToString(data).Replace("-", " ")}");
+ return;
+ }
- // 异步处理数据包
- Task.Run(() =>
- {
- var udpData = RecordUDPData(data, endPoint, Convert.ToInt32(data[1]));
- PrintData(udpData);
+ var udpDataObj = RecordUDPData(data, endPoint, time, Convert.ToInt32(data[1]));
+ PrintData(udpDataObj);
+ }
});
}
- private UDPData RecordUDPData(byte[] bytes, IPEndPoint remoteEP, int taskID)
+ private UDPData RecordUDPData(byte[] bytes, IPEndPoint remoteEP, DateTime time, int taskID)
{
var remoteAddress = remoteEP.Address.ToString();
var remotePort = remoteEP.Port;
@@ -374,7 +377,7 @@ public class UDPServer
Port = remotePort,
TaskID = taskID,
Data = bytes,
- DateTime = DateTime.Now,
+ DateTime = time,
HasRead = false,
};
@@ -482,7 +485,7 @@ public class UDPServer
try
{
UdpReceiveResult result = await client.ReceiveAsync();
- ReceiveHandler(result.Buffer, result.RemoteEndPoint);
+ ReceiveHandler(result.Buffer, result.RemoteEndPoint, DateTime.Now);
}
catch (Exception ex)
{
@@ -510,6 +513,7 @@ public class UDPServer
item.Close();
}
this.isRunning = false;
+
}
}
diff --git a/src/APIClient.ts b/src/APIClient.ts
index 2bd17a3..8c88e3b 100644
--- a/src/APIClient.ts
+++ b/src/APIClient.ts
@@ -1,3470 +1,4147 @@
-//----------------------
-//
-// 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 VideoStreamClient {
- 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";
- }
-
- /**
- * 获取 HTTP 视频流服务状态
- * @return 服务状态信息
- */
- getStatus(): Promise {
- let url_ = this.baseUrl + "/api/VideoStream/Status";
- url_ = url_.replace(/[?&]$/, "");
-
- let options_: RequestInit = {
- method: "GET",
- headers: {
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processGetStatus(_response);
- });
- }
-
- protected processGetStatus(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 === 500) {
- return response.text().then((_responseText) => {
- let result500: any = null;
- let resultData500 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result500 = Exception.fromJS(resultData500);
- return throwException("A server side error occurred.", status, _responseText, _headers, result500);
- });
- } 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);
- }
-
- /**
- * 获取 HTTP 视频流信息
- * @return 流信息
- */
- getStreamInfo(): Promise {
- let url_ = this.baseUrl + "/api/VideoStream/StreamInfo";
- url_ = url_.replace(/[?&]$/, "");
-
- let options_: RequestInit = {
- method: "GET",
- headers: {
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processGetStreamInfo(_response);
- });
- }
-
- protected processGetStreamInfo(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 === 500) {
- return response.text().then((_responseText) => {
- let result500: any = null;
- let resultData500 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result500 = Exception.fromJS(resultData500);
- return throwException("A server side error occurred.", status, _responseText, _headers, result500);
- });
- } 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 config 摄像头配置
- * @return 配置结果
- */
- configureCamera(config: CameraConfigRequest): Promise {
- let url_ = this.baseUrl + "/api/VideoStream/ConfigureCamera";
- url_ = url_.replace(/[?&]$/, "");
-
- const content_ = JSON.stringify(config);
-
- let options_: RequestInit = {
- body: content_,
- method: "POST",
- headers: {
- "Content-Type": "application/json",
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processConfigureCamera(_response);
- });
- }
-
- protected processConfigureCamera(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 === 400) {
- return response.text().then((_responseText) => {
- let result400: any = null;
- let resultData400 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result400 = resultData400 !== undefined ? resultData400 : null;
-
- return throwException("A server side error occurred.", status, _responseText, _headers, result400);
- });
- } else if (status === 500) {
- return response.text().then((_responseText) => {
- let result500: any = null;
- let resultData500 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result500 = Exception.fromJS(resultData500);
- return throwException("A server side error occurred.", status, _responseText, _headers, result500);
- });
- } 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);
- }
-
- /**
- * 获取当前摄像头配置
- * @return 摄像头配置信息
- */
- getCameraConfig(): Promise {
- let url_ = this.baseUrl + "/api/VideoStream/CameraConfig";
- url_ = url_.replace(/[?&]$/, "");
-
- let options_: RequestInit = {
- method: "GET",
- headers: {
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processGetCameraConfig(_response);
- });
- }
-
- protected processGetCameraConfig(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 === 500) {
- return response.text().then((_responseText) => {
- let result500: any = null;
- let resultData500 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result500 = Exception.fromJS(resultData500);
- return throwException("A server side error occurred.", status, _responseText, _headers, result500);
- });
- } 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);
- }
-
- /**
- * 控制 HTTP 视频流服务开关
- * @param enabled (optional) 是否启用服务
- * @return 操作结果
- */
- setEnabled(enabled: boolean | undefined): Promise {
- let url_ = this.baseUrl + "/api/VideoStream/SetEnabled?";
- if (enabled === null)
- throw new Error("The parameter 'enabled' cannot be null.");
- else if (enabled !== undefined)
- url_ += "enabled=" + encodeURIComponent("" + enabled) + "&";
- url_ = url_.replace(/[?&]$/, "");
-
- let options_: RequestInit = {
- method: "POST",
- headers: {
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processSetEnabled(_response);
- });
- }
-
- protected processSetEnabled(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 === 500) {
- return response.text().then((_responseText) => {
- let result500: any = null;
- let resultData500 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result500 = Exception.fromJS(resultData500);
- return throwException("A server side error occurred.", status, _responseText, _headers, result500);
- });
- } 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);
- }
-
- /**
- * 测试 HTTP 视频流连接
- * @return 连接测试结果
- */
- testConnection(): Promise {
- let url_ = this.baseUrl + "/api/VideoStream/TestConnection";
- url_ = url_.replace(/[?&]$/, "");
-
- let options_: RequestInit = {
- method: "POST",
- headers: {
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processTestConnection(_response);
- });
- }
-
- protected processTestConnection(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 === 500) {
- return response.text().then((_responseText) => {
- let result500: any = null;
- let resultData500 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result500 = Exception.fromJS(resultData500);
- return throwException("A server side error occurred.", status, _responseText, _headers, result500);
- });
- } 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 request 分辨率配置请求
- * @return 设置结果
- */
- setResolution(request: ResolutionConfigRequest): Promise {
- let url_ = this.baseUrl + "/api/VideoStream/Resolution";
- url_ = url_.replace(/[?&]$/, "");
-
- const content_ = JSON.stringify(request);
-
- let options_: RequestInit = {
- body: content_,
- method: "POST",
- headers: {
- "Content-Type": "application/json",
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processSetResolution(_response);
- });
- }
-
- protected processSetResolution(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 === 400) {
- return response.text().then((_responseText) => {
- let result400: any = null;
- let resultData400 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result400 = resultData400 !== undefined ? resultData400 : null;
-
- return throwException("A server side error occurred.", status, _responseText, _headers, result400);
- });
- } else if (status === 500) {
- return response.text().then((_responseText) => {
- let result500: any = null;
- let resultData500 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result500 = resultData500 !== undefined ? resultData500 : null;
-
- return throwException("A server side error occurred.", status, _responseText, _headers, result500);
- });
- } 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);
- }
-
- /**
- * 获取当前分辨率
- * @return 当前分辨率信息
- */
- getCurrentResolution(): Promise {
- let url_ = this.baseUrl + "/api/VideoStream/Resolution";
- url_ = url_.replace(/[?&]$/, "");
-
- let options_: RequestInit = {
- method: "GET",
- headers: {
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processGetCurrentResolution(_response);
- });
- }
-
- protected processGetCurrentResolution(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 === 500) {
- return response.text().then((_responseText) => {
- let result500: any = null;
- let resultData500 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result500 = resultData500 !== undefined ? resultData500 : null;
-
- return throwException("A server side error occurred.", status, _responseText, _headers, result500);
- });
- } 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);
- }
-
- /**
- * 获取支持的分辨率列表
- * @return 支持的分辨率列表
- */
- getSupportedResolutions(): Promise {
- let url_ = this.baseUrl + "/api/VideoStream/SupportedResolutions";
- url_ = url_.replace(/[?&]$/, "");
-
- let options_: RequestInit = {
- method: "GET",
- headers: {
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processGetSupportedResolutions(_response);
- });
- }
-
- protected processGetSupportedResolutions(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 === 500) {
- return response.text().then((_responseText) => {
- let result500: any = null;
- let resultData500 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result500 = resultData500 !== undefined ? resultData500 : null;
-
- return throwException("A server side error occurred.", status, _responseText, _headers, result500);
- });
- } 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 BsdlParserClient {
- 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";
- }
-
- /**
- * [TODO:description]
- * @return [TODO:return]
- */
- getBoundaryLogicalPorts(): Promise {
- let url_ = this.baseUrl + "/api/BsdlParser/GetBoundaryLogicalPorts";
- url_ = url_.replace(/[?&]$/, "");
-
- let options_: RequestInit = {
- method: "GET",
- headers: {
- "Accept": "application/octet-stream"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processGetBoundaryLogicalPorts(_response);
- });
- }
-
- protected processGetBoundaryLogicalPorts(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 || status === 206) {
- const contentDisposition = response.headers ? response.headers.get("content-disposition") : undefined;
- let fileNameMatch = contentDisposition ? /filename\*=(?:(\\?['"])(.*?)\1|(?:[^\s]+'.*?')?([^;\n]*))/g.exec(contentDisposition) : undefined;
- let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;
- if (fileName) {
- fileName = decodeURIComponent(fileName);
- } else {
- fileNameMatch = contentDisposition ? /filename="?([^"]*?)"?(;|$)/g.exec(contentDisposition) : undefined;
- fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;
- }
- return response.blob().then(blob => { return { fileName: fileName, data: blob, status: status, headers: _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 DataClient {
- 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";
- }
-
- /**
- * 用户登录,获取 JWT 令牌
- * @param name (optional) 用户名
- * @param password (optional) 用户密码
- * @return JWT 令牌字符串
- */
- login(name: string | undefined, password: string | undefined): Promise {
- let url_ = this.baseUrl + "/api/Data/Login?";
- if (name === null)
- throw new Error("The parameter 'name' cannot be null.");
- else if (name !== undefined)
- url_ += "name=" + encodeURIComponent("" + name) + "&";
- if (password === null)
- throw new Error("The parameter 'password' cannot be null.");
- else if (password !== undefined)
- url_ += "password=" + encodeURIComponent("" + password) + "&";
- url_ = url_.replace(/[?&]$/, "");
-
- let options_: RequestInit = {
- method: "POST",
- headers: {
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processLogin(_response);
- });
- }
-
- protected processLogin(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 === 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);
- }
-
- /**
- * 测试用户认证,需携带有效 JWT
- * @return 认证成功信息
- */
- testAuth(): Promise {
- let url_ = this.baseUrl + "/api/Data/TestAuth";
- url_ = url_.replace(/[?&]$/, "");
-
- let options_: RequestInit = {
- method: "GET",
- headers: {
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processTestAuth(_response);
- });
- }
-
- protected processTestAuth(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 === 401) {
- return response.text().then((_responseText) => {
- let result401: any = null;
- let resultData401 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result401 = ProblemDetails.fromJS(resultData401);
- return throwException("A server side error occurred.", status, _responseText, _headers, result401);
- });
- } 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);
- }
-
- /**
- * 测试管理员用户认证,需携带有效 JWT
- * @return 认证成功信息
- */
- testAdminAuth(): Promise {
- let url_ = this.baseUrl + "/api/Data/TestAdminAuth";
- url_ = url_.replace(/[?&]$/, "");
-
- let options_: RequestInit = {
- method: "GET",
- headers: {
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processTestAdminAuth(_response);
- });
- }
-
- protected processTestAdminAuth(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 === 401) {
- return response.text().then((_responseText) => {
- let result401: any = null;
- let resultData401 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result401 = ProblemDetails.fromJS(resultData401);
- return throwException("A server side error occurred.", status, _responseText, _headers, result401);
- });
- } 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);
- }
-
- /**
- * 获取当前用户信息
- * @return 用户信息,包括ID、用户名、邮箱和板卡ID
- */
- getUserInfo(): Promise {
- let url_ = this.baseUrl + "/api/Data/GetUserInfo";
- url_ = url_.replace(/[?&]$/, "");
-
- let options_: RequestInit = {
- method: "GET",
- headers: {
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processGetUserInfo(_response);
- });
- }
-
- protected processGetUserInfo(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 = UserInfo.fromJS(resultData200);
- return result200;
- });
- } 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 === 401) {
- return response.text().then((_responseText) => {
- let result401: any = null;
- let resultData401 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result401 = ProblemDetails.fromJS(resultData401);
- return throwException("A server side error occurred.", status, _responseText, _headers, result401);
- });
- } 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 name (optional) 用户名(不超过255个字符)
- * @param email (optional) 邮箱地址
- * @param password (optional) 用户密码
- * @return 操作结果,成功返回 true,失败返回错误信息
- */
- signUpUser(name: string | undefined, email: string | undefined, password: string | undefined): Promise {
- let url_ = this.baseUrl + "/api/Data/SignUpUser?";
- if (name === null)
- throw new Error("The parameter 'name' cannot be null.");
- else if (name !== undefined)
- url_ += "name=" + encodeURIComponent("" + name) + "&";
- if (email === null)
- throw new Error("The parameter 'email' cannot be null.");
- else if (email !== undefined)
- url_ += "email=" + encodeURIComponent("" + email) + "&";
- if (password === null)
- throw new Error("The parameter 'password' cannot be null.");
- else if (password !== undefined)
- url_ += "password=" + encodeURIComponent("" + password) + "&";
- url_ = url_.replace(/[?&]$/, "");
-
- let options_: RequestInit = {
- method: "POST",
- headers: {
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processSignUpUser(_response);
- });
- }
-
- protected processSignUpUser(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 === 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);
- }
-
- /**
- * 获取一个空闲的实验板(普通用户权限)
- * @param durationHours (optional) 绑定持续时间(小时),默认为1小时
- */
- getAvailableBoard(durationHours: number | undefined): Promise {
- let url_ = this.baseUrl + "/api/Data/GetAvailableBoard?";
- if (durationHours === null)
- throw new Error("The parameter 'durationHours' cannot be null.");
- else if (durationHours !== undefined)
- url_ += "durationHours=" + encodeURIComponent("" + durationHours) + "&";
- url_ = url_.replace(/[?&]$/, "");
-
- let options_: RequestInit = {
- method: "GET",
- headers: {
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processGetAvailableBoard(_response);
- });
- }
-
- protected processGetAvailableBoard(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 = Board.fromJS(resultData200);
- return result200;
- });
- } else if (status === 404) {
- return response.text().then((_responseText) => {
- let result404: any = null;
- let resultData404 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result404 = ProblemDetails.fromJS(resultData404);
- return throwException("A server side error occurred.", status, _responseText, _headers, result404);
- });
- } 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);
- }
-
- /**
- * 解除当前用户绑定的实验板(普通用户权限)
- */
- unbindBoard(): Promise {
- let url_ = this.baseUrl + "/api/Data/UnbindBoard";
- url_ = url_.replace(/[?&]$/, "");
-
- let options_: RequestInit = {
- method: "POST",
- headers: {
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processUnbindBoard(_response);
- });
- }
-
- protected processUnbindBoard(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 === 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);
- }
-
- /**
- * 用户根据实验板ID获取实验板信息(普通用户权限)
- * @param id (optional)
- */
- getBoardByID(id: string | undefined): Promise {
- let url_ = this.baseUrl + "/api/Data/GetBoardByID?";
- if (id === null)
- throw new Error("The parameter 'id' cannot be null.");
- else if (id !== undefined)
- url_ += "id=" + encodeURIComponent("" + id) + "&";
- url_ = url_.replace(/[?&]$/, "");
-
- let options_: RequestInit = {
- method: "GET",
- headers: {
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processGetBoardByID(_response);
- });
- }
-
- protected processGetBoardByID(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 = Board.fromJS(resultData200);
- return result200;
- });
- } else if (status === 404) {
- return response.text().then((_responseText) => {
- let result404: any = null;
- let resultData404 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result404 = ProblemDetails.fromJS(resultData404);
- return throwException("A server side error occurred.", status, _responseText, _headers, result404);
- });
- } 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 name (optional)
- * @param ipAddr (optional)
- * @param port (optional)
- */
- addBoard(name: string | undefined, ipAddr: string | undefined, port: number | undefined): Promise {
- let url_ = this.baseUrl + "/api/Data/AddBoard?";
- if (name === null)
- throw new Error("The parameter 'name' cannot be null.");
- else if (name !== undefined)
- url_ += "name=" + encodeURIComponent("" + name) + "&";
- if (ipAddr === null)
- throw new Error("The parameter 'ipAddr' cannot be null.");
- else if (ipAddr !== undefined)
- url_ += "ipAddr=" + encodeURIComponent("" + ipAddr) + "&";
- 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: {
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processAddBoard(_response);
- });
- }
-
- protected processAddBoard(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 === 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);
- }
-
- /**
- * 删除板子(管理员权限)
- * @param id (optional)
- */
- deleteBoard(id: string | undefined): Promise {
- let url_ = this.baseUrl + "/api/Data/DeleteBoard?";
- if (id === null)
- throw new Error("The parameter 'id' cannot be null.");
- else if (id !== undefined)
- url_ += "id=" + encodeURIComponent("" + id) + "&";
- url_ = url_.replace(/[?&]$/, "");
-
- let options_: RequestInit = {
- method: "DELETE",
- headers: {
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processDeleteBoard(_response);
- });
- }
-
- protected processDeleteBoard(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 === 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);
- }
-
- /**
- * 获取全部板子(管理员权限)
- */
- getAllBoards(): Promise {
- let url_ = this.baseUrl + "/api/Data/GetAllBoards";
- url_ = url_.replace(/[?&]$/, "");
-
- let options_: RequestInit = {
- method: "GET",
- headers: {
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processGetAllBoards(_response);
- });
- }
-
- protected processGetAllBoards(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(Board.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 DDSClient {
- 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";
- }
-
- /**
- * [TODO:description]
- * @param address (optional) [TODO:parameter]
- * @param port (optional) [TODO:parameter]
- * @param channelNum (optional) [TODO:parameter]
- * @param waveNum (optional) [TODO:parameter]
- * @return [TODO:return]
- */
- setWaveNum(address: string | undefined, port: number | undefined, channelNum: number | undefined, waveNum: number | undefined): Promise {
- let url_ = this.baseUrl + "/api/DDS/SetWaveNum?";
- 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 (channelNum === null)
- throw new Error("The parameter 'channelNum' cannot be null.");
- else if (channelNum !== undefined)
- url_ += "channelNum=" + encodeURIComponent("" + channelNum) + "&";
- if (waveNum === null)
- throw new Error("The parameter 'waveNum' cannot be null.");
- else if (waveNum !== undefined)
- url_ += "waveNum=" + encodeURIComponent("" + waveNum) + "&";
- url_ = url_.replace(/[?&]$/, "");
-
- let options_: RequestInit = {
- method: "POST",
- headers: {
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processSetWaveNum(_response);
- });
- }
-
- protected processSetWaveNum(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 === 400) {
- return response.text().then((_responseText) => {
- let result400: any = null;
- let resultData400 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result400 = ArgumentException.fromJS(resultData400);
- return throwException("A server side error occurred.", status, _responseText, _headers, result400);
- });
- } else if (status === 500) {
- return response.text().then((_responseText) => {
- let result500: any = null;
- let resultData500 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result500 = Exception.fromJS(resultData500);
- return throwException("A server side error occurred.", status, _responseText, _headers, result500);
- });
- } 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);
- }
-
- /**
- * [TODO:description]
- * @param address (optional) [TODO:parameter]
- * @param port (optional) [TODO:parameter]
- * @param channelNum (optional) [TODO:parameter]
- * @param waveNum (optional) [TODO:parameter]
- * @param step (optional) [TODO:parameter]
- * @return [TODO:return]
- */
- setFreq(address: string | undefined, port: number | undefined, channelNum: number | undefined, waveNum: number | undefined, step: number | undefined): Promise {
- let url_ = this.baseUrl + "/api/DDS/SetFreq?";
- 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 (channelNum === null)
- throw new Error("The parameter 'channelNum' cannot be null.");
- else if (channelNum !== undefined)
- url_ += "channelNum=" + encodeURIComponent("" + channelNum) + "&";
- if (waveNum === null)
- throw new Error("The parameter 'waveNum' cannot be null.");
- else if (waveNum !== undefined)
- url_ += "waveNum=" + encodeURIComponent("" + waveNum) + "&";
- if (step === null)
- throw new Error("The parameter 'step' cannot be null.");
- else if (step !== undefined)
- url_ += "step=" + encodeURIComponent("" + step) + "&";
- url_ = url_.replace(/[?&]$/, "");
-
- let options_: RequestInit = {
- method: "POST",
- headers: {
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processSetFreq(_response);
- });
- }
-
- protected processSetFreq(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 === 400) {
- return response.text().then((_responseText) => {
- let result400: any = null;
- let resultData400 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result400 = ArgumentException.fromJS(resultData400);
- return throwException("A server side error occurred.", status, _responseText, _headers, result400);
- });
- } else if (status === 500) {
- return response.text().then((_responseText) => {
- let result500: any = null;
- let resultData500 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result500 = Exception.fromJS(resultData500);
- return throwException("A server side error occurred.", status, _responseText, _headers, result500);
- });
- } 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);
- }
-
- /**
- * [TODO:description]
- * @param address (optional) [TODO:parameter]
- * @param port (optional) [TODO:parameter]
- * @param channelNum (optional) [TODO:parameter]
- * @param waveNum (optional) [TODO:parameter]
- * @param phase (optional) [TODO:parameter]
- * @return [TODO:return]
- */
- setPhase(address: string | undefined, port: number | undefined, channelNum: number | undefined, waveNum: number | undefined, phase: number | undefined): Promise {
- let url_ = this.baseUrl + "/api/DDS/SetPhase?";
- 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 (channelNum === null)
- throw new Error("The parameter 'channelNum' cannot be null.");
- else if (channelNum !== undefined)
- url_ += "channelNum=" + encodeURIComponent("" + channelNum) + "&";
- if (waveNum === null)
- throw new Error("The parameter 'waveNum' cannot be null.");
- else if (waveNum !== undefined)
- url_ += "waveNum=" + encodeURIComponent("" + waveNum) + "&";
- if (phase === null)
- throw new Error("The parameter 'phase' cannot be null.");
- else if (phase !== undefined)
- url_ += "phase=" + encodeURIComponent("" + phase) + "&";
- url_ = url_.replace(/[?&]$/, "");
-
- let options_: RequestInit = {
- method: "POST",
- headers: {
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processSetPhase(_response);
- });
- }
-
- protected processSetPhase(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 === 400) {
- return response.text().then((_responseText) => {
- let result400: any = null;
- let resultData400 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result400 = ArgumentException.fromJS(resultData400);
- return throwException("A server side error occurred.", status, _responseText, _headers, result400);
- });
- } else if (status === 500) {
- return response.text().then((_responseText) => {
- let result500: any = null;
- let resultData500 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result500 = Exception.fromJS(resultData500);
- return throwException("A server side error occurred.", status, _responseText, _headers, result500);
- });
- } 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";
- }
-
- /**
- * 控制器首页信息
- * @return 控制器描述信息
- */
- 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 设备的 ID Code
- * @param address (optional) JTAG 设备地址
- * @param port (optional) JTAG 设备端口
- * @return 设备的 ID Code
- */
- 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: {
- "Accept": "application/json"
- }
- };
-
- 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) => {
- let result200: any = null;
- let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result200 = resultData200 !== undefined ? resultData200 : null;
-
- return result200;
- });
- } else if (status === 500) {
- return response.text().then((_responseText) => {
- let result500: any = null;
- let resultData500 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result500 = Exception.fromJS(resultData500);
- return throwException("A server side error occurred.", status, _responseText, _headers, result500);
- });
- } else if (status === 401) {
- return response.text().then((_responseText) => {
- let result401: any = null;
- let resultData401 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result401 = ProblemDetails.fromJS(resultData401);
- return throwException("A server side error occurred.", status, _responseText, _headers, result401);
- });
- } 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) JTAG 设备地址
- * @param port (optional) JTAG 设备端口
- * @return 状态寄存器的原始值、二进制表示和解码值
- */
- readStatusReg(address: string | undefined, port: number | undefined): Promise {
- let url_ = this.baseUrl + "/api/Jtag/ReadStatusReg?";
- 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.processReadStatusReg(_response);
- });
- }
-
- protected processReadStatusReg(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 === 401) {
- return response.text().then((_responseText) => {
- let result401: any = null;
- let resultData401 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result401 = ProblemDetails.fromJS(resultData401);
- return throwException("A server side error occurred.", status, _responseText, _headers, result401);
- });
- } 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) 比特流文件
- * @return 上传结果
- */
- uploadBitstream(address: string | undefined, file: FileParameter | 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)
- throw new Error("The parameter 'file' cannot be null.");
- else
- content_.append("file", file.data, file.fileName ? file.fileName : "file");
-
- let options_: RequestInit = {
- body: content_,
- method: "POST",
- headers: {
- "Accept": "application/json"
- }
- };
-
- 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) => {
- let result200: any = null;
- let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result200 = resultData200 !== undefined ? resultData200 : null;
-
- return result200;
- });
- } else if (status === 400) {
- return response.text().then((_responseText) => {
- let result400: any = null;
- let resultData400 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result400 = resultData400 !== undefined ? resultData400 : null;
-
- return throwException("A server side error occurred.", status, _responseText, _headers, result400);
- });
- } else if (status === 401) {
- return response.text().then((_responseText) => {
- let result401: any = null;
- let resultData401 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result401 = ProblemDetails.fromJS(resultData401);
- return throwException("A server side error occurred.", status, _responseText, _headers, result401);
- });
- } 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 下载比特流文件到 FPGA 设备
- * @param address (optional) JTAG 设备地址
- * @param port (optional) JTAG 设备端口
- * @return 下载结果
- */
- 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: {
- "Accept": "application/json"
- }
- };
-
- 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) => {
- let result200: any = null;
- let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result200 = resultData200 !== undefined ? resultData200 : null;
-
- return result200;
- });
- } else if (status === 400) {
- return response.text().then((_responseText) => {
- let result400: any = null;
- let resultData400 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result400 = resultData400 !== undefined ? resultData400 : null;
-
- return throwException("A server side error occurred.", status, _responseText, _headers, result400);
- });
- } else if (status === 500) {
- return response.text().then((_responseText) => {
- let result500: any = null;
- let resultData500 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result500 = Exception.fromJS(resultData500);
- return throwException("A server side error occurred.", status, _responseText, _headers, result500);
- });
- } else if (status === 401) {
- return response.text().then((_responseText) => {
- let result401: any = null;
- let resultData401 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result401 = ProblemDetails.fromJS(resultData401);
- return throwException("A server side error occurred.", status, _responseText, _headers, result401);
- });
- } 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) JTAG 设备地址
- * @param port (optional) JTAG 设备端口
- * @return 边界扫描结果
- */
- boundaryScanAllPorts(address: string | undefined, port: number | undefined): Promise {
- let url_ = this.baseUrl + "/api/Jtag/BoundaryScanAllPorts?";
- 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: {
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processBoundaryScanAllPorts(_response);
- });
- }
-
- protected processBoundaryScanAllPorts(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 === 400) {
- return response.text().then((_responseText) => {
- let result400: any = null;
- let resultData400 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result400 = resultData400 !== undefined ? resultData400 : null;
-
- return throwException("A server side error occurred.", status, _responseText, _headers, result400);
- });
- } else if (status === 500) {
- return response.text().then((_responseText) => {
- let result500: any = null;
- let resultData500 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result500 = Exception.fromJS(resultData500);
- return throwException("A server side error occurred.", status, _responseText, _headers, result500);
- });
- } else if (status === 401) {
- return response.text().then((_responseText) => {
- let result401: any = null;
- let resultData401 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result401 = ProblemDetails.fromJS(resultData401);
- return throwException("A server side error occurred.", status, _responseText, _headers, result401);
- });
- } 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) JTAG 设备地址
- * @param port (optional) JTAG 设备端口
- * @return 逻辑端口状态字典
- */
- boundaryScanLogicalPorts(address: string | undefined, port: number | undefined): Promise<{ [key: string]: boolean; }> {
- let url_ = this.baseUrl + "/api/Jtag/BoundaryScanLogicalPorts?";
- 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: {
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processBoundaryScanLogicalPorts(_response);
- });
- }
-
- protected processBoundaryScanLogicalPorts(response: Response): Promise<{ [key: string]: boolean; }> {
- 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 (resultData200) {
- result200 = {} as any;
- for (let key in resultData200) {
- if (resultData200.hasOwnProperty(key))
- (result200)![key] = resultData200[key] !== undefined ? resultData200[key] : null;
- }
- }
- else {
- result200 = null;
- }
- return result200;
- });
- } else if (status === 500) {
- return response.text().then((_responseText) => {
- let result500: any = null;
- let resultData500 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result500 = Exception.fromJS(resultData500);
- return throwException("A server side error occurred.", status, _responseText, _headers, result500);
- });
- } else if (status === 401) {
- return response.text().then((_responseText) => {
- let result401: any = null;
- let resultData401 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result401 = ProblemDetails.fromJS(resultData401);
- return throwException("A server side error occurred.", status, _responseText, _headers, result401);
- });
- } else if (status !== 200 && status !== 204) {
- return response.text().then((_responseText) => {
- return throwException("An unexpected server error occurred.", status, _responseText, _headers);
- });
- }
- return Promise.resolve<{ [key: string]: boolean; }>(null as any);
- }
-
- /**
- * 设置 JTAG 时钟速度
- * @param address (optional) JTAG 设备地址
- * @param port (optional) JTAG 设备端口
- * @param speed (optional) 时钟速度 (Hz)
- * @return 设置结果
- */
- setSpeed(address: string | undefined, port: number | undefined, speed: number | undefined): Promise {
- let url_ = this.baseUrl + "/api/Jtag/SetSpeed?";
- 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 (speed === null)
- throw new Error("The parameter 'speed' cannot be null.");
- else if (speed !== undefined)
- url_ += "speed=" + encodeURIComponent("" + speed) + "&";
- url_ = url_.replace(/[?&]$/, "");
-
- let options_: RequestInit = {
- method: "POST",
- headers: {
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processSetSpeed(_response);
- });
- }
-
- protected processSetSpeed(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 === 500) {
- return response.text().then((_responseText) => {
- let result500: any = null;
- let resultData500 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result500 = Exception.fromJS(resultData500);
- return throwException("A server side error occurred.", status, _responseText, _headers, result500);
- });
- } else if (status === 401) {
- return response.text().then((_responseText) => {
- let result401: any = null;
- let resultData401 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result401 = ProblemDetails.fromJS(resultData401);
- return throwException("A server side error occurred.", status, _responseText, _headers, result401);
- });
- } 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 MatrixKeyClient {
- 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";
- }
-
- /**
- * 启用矩阵键控制。
- * @param address (optional) 设备的IP地址
- * @param port (optional) 设备的端口号
- * @return 返回操作结果的状态码
- */
- enabelMatrixKey(address: string | undefined, port: number | undefined): Promise {
- let url_ = this.baseUrl + "/api/MatrixKey/EnabelMatrixKey?";
- 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: {
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processEnabelMatrixKey(_response);
- });
- }
-
- protected processEnabelMatrixKey(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 === 500) {
- return response.text().then((_responseText) => {
- let result500: any = null;
- let resultData500 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result500 = Exception.fromJS(resultData500);
- return throwException("A server side error occurred.", status, _responseText, _headers, result500);
- });
- } 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) 设备的端口号
- * @return 返回操作结果的状态码
- */
- disableMatrixKey(address: string | undefined, port: number | undefined): Promise {
- let url_ = this.baseUrl + "/api/MatrixKey/DisableMatrixKey?";
- 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: {
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processDisableMatrixKey(_response);
- });
- }
-
- protected processDisableMatrixKey(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 === 500) {
- return response.text().then((_responseText) => {
- let result500: any = null;
- let resultData500 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result500 = Exception.fromJS(resultData500);
- return throwException("A server side error occurred.", status, _responseText, _headers, result500);
- });
- } 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) 设备的端口号
- * @param keyStates 矩阵键的状态数组,长度应为16
- * @return 返回操作结果的状态码
- */
- setMatrixKeyStatus(address: string | undefined, port: number | undefined, keyStates: boolean[]): Promise {
- let url_ = this.baseUrl + "/api/MatrixKey/SetMatrixKeyStatus?";
- 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(keyStates);
-
- let options_: RequestInit = {
- body: content_,
- method: "POST",
- headers: {
- "Content-Type": "application/json",
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processSetMatrixKeyStatus(_response);
- });
- }
-
- protected processSetMatrixKeyStatus(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 === 500) {
- return response.text().then((_responseText) => {
- let result500: any = null;
- let resultData500 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result500 = Exception.fromJS(resultData500);
- return throwException("A server side error occurred.", status, _responseText, _headers, result500);
- });
- } 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 PowerClient {
- 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";
- }
-
- /**
- * [TODO:description]
- * @param address (optional) [TODO:parameter]
- * @param port (optional) [TODO:parameter]
- * @param enable (optional) [TODO:parameter]
- * @return [TODO:return]
- */
- setPowerOnOff(address: string | undefined, port: number | undefined, enable: boolean | undefined): Promise {
- let url_ = this.baseUrl + "/api/Power/SetPowerOnOff?";
- 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 (enable === null)
- throw new Error("The parameter 'enable' cannot be null.");
- else if (enable !== undefined)
- url_ += "enable=" + encodeURIComponent("" + enable) + "&";
- url_ = url_.replace(/[?&]$/, "");
-
- let options_: RequestInit = {
- method: "POST",
- headers: {
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processSetPowerOnOff(_response);
- });
- }
-
- protected processSetPowerOnOff(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 === 500) {
- return response.text().then((_responseText) => {
- let result500: any = null;
- let resultData500 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result500 = Exception.fromJS(resultData500);
- return throwException("A server side error occurred.", status, _responseText, _headers, result500);
- });
- } 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 RemoteUpdateClient {
- 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";
- }
-
- /**
- * 上传远程更新比特流文件
- * @param address (optional) 设备地址
- * @param goldenBitream (optional) 黄金比特流文件
- * @param bitstream1 (optional) 比特流文件1
- * @param bitstream2 (optional) 比特流文件2
- * @param bitstream3 (optional) 比特流文件3
- * @return 上传结果
- */
- uploadBitstreams(address: string | undefined, goldenBitream: FileParameter | null | undefined, bitstream1: FileParameter | null | undefined, bitstream2: FileParameter | null | undefined, bitstream3: FileParameter | null | undefined): Promise {
- let url_ = this.baseUrl + "/api/RemoteUpdate/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 (goldenBitream !== null && goldenBitream !== undefined)
- content_.append("goldenBitream", goldenBitream.data, goldenBitream.fileName ? goldenBitream.fileName : "goldenBitream");
- if (bitstream1 !== null && bitstream1 !== undefined)
- content_.append("bitstream1", bitstream1.data, bitstream1.fileName ? bitstream1.fileName : "bitstream1");
- if (bitstream2 !== null && bitstream2 !== undefined)
- content_.append("bitstream2", bitstream2.data, bitstream2.fileName ? bitstream2.fileName : "bitstream2");
- if (bitstream3 !== null && bitstream3 !== undefined)
- content_.append("bitstream3", bitstream3.data, bitstream3.fileName ? bitstream3.fileName : "bitstream3");
-
- let options_: RequestInit = {
- body: content_,
- method: "POST",
- headers: {
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processUploadBitstreams(_response);
- });
- }
-
- protected processUploadBitstreams(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 === 400) {
- return response.text().then((_responseText) => {
- let result400: any = null;
- let resultData400 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result400 = ArgumentException.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);
- }
-
- /**
- * 远程更新单个比特流文件
- * @param address (optional) 设备地址
- * @param port (optional) 设备端口
- * @param bitstreamNum (optional) 比特流位号
- */
- updateBitstream(address: string | undefined, port: number | undefined, bitstreamNum: number | undefined): Promise {
- let url_ = this.baseUrl + "/api/RemoteUpdate/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) + "&";
- if (bitstreamNum === null)
- throw new Error("The parameter 'bitstreamNum' cannot be null.");
- else if (bitstreamNum !== undefined)
- url_ += "bitstreamNum=" + encodeURIComponent("" + bitstreamNum) + "&";
- url_ = url_.replace(/[?&]$/, "");
-
- let options_: RequestInit = {
- method: "POST",
- headers: {
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processUpdateBitstream(_response);
- });
- }
-
- protected processUpdateBitstream(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 === 400) {
- return response.text().then((_responseText) => {
- let result400: any = null;
- let resultData400 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result400 = ArgumentException.fromJS(resultData400);
- return throwException("A server side error occurred.", status, _responseText, _headers, result400);
- });
- } else if (status === 500) {
- return response.text().then((_responseText) => {
- let result500: any = null;
- let resultData500 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result500 = Exception.fromJS(resultData500);
- return throwException("A server side error occurred.", status, _responseText, _headers, result500);
- });
- } 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 port (optional) 设备端口
- * @param bitstreamNum (optional) 比特流编号
- * @return 总共上传比特流的数量
- */
- downloadMultiBitstreams(address: string | undefined, port: number | undefined, bitstreamNum: number | null | undefined): Promise {
- let url_ = this.baseUrl + "/api/RemoteUpdate/DownloadMultiBitstreams?";
- 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 (bitstreamNum !== undefined && bitstreamNum !== null)
- url_ += "bitstreamNum=" + encodeURIComponent("" + bitstreamNum) + "&";
- url_ = url_.replace(/[?&]$/, "");
-
- let options_: RequestInit = {
- method: "POST",
- headers: {
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processDownloadMultiBitstreams(_response);
- });
- }
-
- protected processDownloadMultiBitstreams(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 === 400) {
- return response.text().then((_responseText) => {
- let result400: any = null;
- let resultData400 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result400 = ArgumentException.fromJS(resultData400);
- return throwException("A server side error occurred.", status, _responseText, _headers, result400);
- });
- } else if (status === 500) {
- return response.text().then((_responseText) => {
- let result500: any = null;
- let resultData500 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result500 = Exception.fromJS(resultData500);
- return throwException("A server side error occurred.", status, _responseText, _headers, result500);
- });
- } 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 port (optional) 设备端口
- * @param bitstreamNum (optional) 比特流编号
- * @return 操作结果
- */
- hotResetBitstream(address: string | undefined, port: number | undefined, bitstreamNum: number | undefined): Promise {
- let url_ = this.baseUrl + "/api/RemoteUpdate/HotResetBitstream?";
- 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 (bitstreamNum === null)
- throw new Error("The parameter 'bitstreamNum' cannot be null.");
- else if (bitstreamNum !== undefined)
- url_ += "bitstreamNum=" + encodeURIComponent("" + bitstreamNum) + "&";
- url_ = url_.replace(/[?&]$/, "");
-
- let options_: RequestInit = {
- method: "POST",
- headers: {
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processHotResetBitstream(_response);
- });
- }
-
- protected processHotResetBitstream(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 === 400) {
- return response.text().then((_responseText) => {
- let result400: any = null;
- let resultData400 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result400 = ArgumentException.fromJS(resultData400);
- return throwException("A server side error occurred.", status, _responseText, _headers, result400);
- });
- } else if (status === 500) {
- return response.text().then((_responseText) => {
- let result500: any = null;
- let resultData500 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result500 = Exception.fromJS(resultData500);
- return throwException("A server side error occurred.", status, _responseText, _headers, result500);
- });
- } 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);
- }
-
- /**
- * [TODO:description]
- * @param address (optional) [TODO:parameter]
- * @param port (optional) [TODO:parameter]
- * @return [TODO:return]
- */
- getFirmwareVersion(address: string | undefined, port: number | undefined): Promise {
- let url_ = this.baseUrl + "/api/RemoteUpdate/GetFirmwareVersion?";
- 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: {
- "Accept": "application/json"
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processGetFirmwareVersion(_response);
- });
- }
-
- protected processGetFirmwareVersion(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 === 400) {
- return response.text().then((_responseText) => {
- let result400: any = null;
- let resultData400 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result400 = ArgumentException.fromJS(resultData400);
- return throwException("A server side error occurred.", status, _responseText, _headers, result400);
- });
- } else if (status === 500) {
- return response.text().then((_responseText) => {
- let result500: any = null;
- let resultData500 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
- result500 = Exception.fromJS(resultData500);
- return throwException("A server side error occurred.", status, _responseText, _headers, result500);
- });
- } 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 TutorialClient {
- 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";
- }
-
- /**
- * 获取所有可用的教程目录
- * @return 教程目录列表
- */
- getTutorials(): Promise {
- let url_ = this.baseUrl + "/api/Tutorial";
- url_ = url_.replace(/[?&]$/, "");
-
- let options_: RequestInit = {
- method: "GET",
- headers: {
- }
- };
-
- return this.http.fetch(url_, options_).then((_response: Response) => {
- return this.processGetTutorials(_response);
- });
- }
-
- protected processGetTutorials(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);
- }
-}
-
-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地址
- * @param taskID (optional) 任务ID
- */
- getRecvDataArray(address: string | undefined, taskID: number | 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) + "&";
- if (taskID === null)
- throw new Error("The parameter 'taskID' cannot be null.");
- else if (taskID !== undefined)
- url_ += "taskID=" + encodeURIComponent("" + taskID) + "&";
- 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 Exception implements IException {
- message!: string;
- innerException?: Exception | undefined;
- source?: string | undefined;
- stackTrace?: string | undefined;
-
- constructor(data?: IException) {
- if (data) {
- for (var property in data) {
- if (data.hasOwnProperty(property))
- (this)[property] = (data)[property];
- }
- }
- }
-
- init(_data?: any) {
- if (_data) {
- this.message = _data["Message"];
- this.innerException = _data["InnerException"] ? Exception.fromJS(_data["InnerException"]) : undefined;
- this.source = _data["Source"];
- this.stackTrace = _data["StackTrace"];
- }
- }
-
- static fromJS(data: any): Exception {
- data = typeof data === 'object' ? data : {};
- let result = new Exception();
- result.init(data);
- return result;
- }
-
- toJSON(data?: any) {
- data = typeof data === 'object' ? data : {};
- data["Message"] = this.message;
- data["InnerException"] = this.innerException ? this.innerException.toJSON() : undefined;
- data["Source"] = this.source;
- data["StackTrace"] = this.stackTrace;
- return data;
- }
-}
-
-export interface IException {
- message: string;
- innerException?: Exception | undefined;
- source?: string | undefined;
- stackTrace?: string | undefined;
-}
-
-/** 摄像头配置请求模型 */
-export class CameraConfigRequest implements ICameraConfigRequest {
- /** 摄像头地址 */
- address!: string;
- /** 摄像头端口 */
- port!: number;
-
- constructor(data?: ICameraConfigRequest) {
- if (data) {
- for (var property in data) {
- if (data.hasOwnProperty(property))
- (this)[property] = (data)[property];
- }
- }
- }
-
- init(_data?: any) {
- if (_data) {
- this.address = _data["address"];
- this.port = _data["port"];
- }
- }
-
- static fromJS(data: any): CameraConfigRequest {
- data = typeof data === 'object' ? data : {};
- let result = new CameraConfigRequest();
- result.init(data);
- return result;
- }
-
- toJSON(data?: any) {
- data = typeof data === 'object' ? data : {};
- data["address"] = this.address;
- data["port"] = this.port;
- return data;
- }
-}
-
-/** 摄像头配置请求模型 */
-export interface ICameraConfigRequest {
- /** 摄像头地址 */
- address: string;
- /** 摄像头端口 */
- port: number;
-}
-
-/** 分辨率配置请求模型 */
-export class ResolutionConfigRequest implements IResolutionConfigRequest {
- /** 宽度 */
- width!: number;
- /** 高度 */
- height!: number;
-
- constructor(data?: IResolutionConfigRequest) {
- if (data) {
- for (var property in data) {
- if (data.hasOwnProperty(property))
- (this)[property] = (data)[property];
- }
- }
- }
-
- init(_data?: any) {
- if (_data) {
- this.width = _data["width"];
- this.height = _data["height"];
- }
- }
-
- static fromJS(data: any): ResolutionConfigRequest {
- data = typeof data === 'object' ? data : {};
- let result = new ResolutionConfigRequest();
- result.init(data);
- return result;
- }
-
- toJSON(data?: any) {
- data = typeof data === 'object' ? data : {};
- data["width"] = this.width;
- data["height"] = this.height;
- return data;
- }
-}
-
-/** 分辨率配置请求模型 */
-export interface IResolutionConfigRequest {
- /** 宽度 */
- width: number;
- /** 高度 */
- height: number;
-}
-
-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];
- }
- }
- if (!data) {
- this.extensions = {};
- }
- }
-
- 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;
-}
-
-/** [TODO:description] */
-export class UserInfo implements IUserInfo {
- /** 用户的唯一标识符 */
- id!: string;
- /** 用户的名称 */
- name!: string;
- /** 用户的电子邮箱 */
- eMail!: string;
- /** 用户关联的板卡ID */
- boardID!: string;
- /** 用户绑定板子的过期时间 */
- boardExpireTime?: Date | undefined;
-
- constructor(data?: IUserInfo) {
- if (data) {
- for (var property in data) {
- if (data.hasOwnProperty(property))
- (this)[property] = (data)[property];
- }
- }
- }
-
- init(_data?: any) {
- if (_data) {
- this.id = _data["id"];
- this.name = _data["name"];
- this.eMail = _data["eMail"];
- this.boardID = _data["boardID"];
- this.boardExpireTime = _data["boardExpireTime"] ? new Date(_data["boardExpireTime"].toString()) : undefined;
- }
- }
-
- static fromJS(data: any): UserInfo {
- data = typeof data === 'object' ? data : {};
- let result = new UserInfo();
- result.init(data);
- return result;
- }
-
- toJSON(data?: any) {
- data = typeof data === 'object' ? data : {};
- data["id"] = this.id;
- data["name"] = this.name;
- data["eMail"] = this.eMail;
- data["boardID"] = this.boardID;
- data["boardExpireTime"] = this.boardExpireTime ? this.boardExpireTime.toISOString() : undefined;
- return data;
- }
-}
-
-/** [TODO:description] */
-export interface IUserInfo {
- /** 用户的唯一标识符 */
- id: string;
- /** 用户的名称 */
- name: string;
- /** 用户的电子邮箱 */
- eMail: string;
- /** 用户关联的板卡ID */
- boardID: string;
- /** 用户绑定板子的过期时间 */
- boardExpireTime?: Date | undefined;
-}
-
-/** FPGA 板子类,表示板子信息 */
-export class Board implements IBoard {
- /** FPGA 板子的唯一标识符 */
- id!: string;
- /** FPGA 板子的名称 */
- boardName!: string;
- /** FPGA 板子的IP地址 */
- ipAddr!: string;
- /** FPGA 板子的通信端口 */
- port!: number;
- /** FPGA 板子的当前状态 */
- status!: BoardStatus;
- /** 占用该板子的用户的唯一标识符 */
- occupiedUserID!: string;
- /** 占用该板子的用户的用户名 */
- occupiedUserName?: string | undefined;
- /** FPGA 板子的固件版本号 */
- firmVersion!: string;
-
- constructor(data?: IBoard) {
- if (data) {
- for (var property in data) {
- if (data.hasOwnProperty(property))
- (this)[property] = (data)[property];
- }
- }
- }
-
- init(_data?: any) {
- if (_data) {
- this.id = _data["id"];
- this.boardName = _data["boardName"];
- this.ipAddr = _data["ipAddr"];
- this.port = _data["port"];
- this.status = _data["status"];
- this.occupiedUserID = _data["occupiedUserID"];
- this.occupiedUserName = _data["occupiedUserName"];
- this.firmVersion = _data["firmVersion"];
- }
- }
-
- static fromJS(data: any): Board {
- data = typeof data === 'object' ? data : {};
- let result = new Board();
- result.init(data);
- return result;
- }
-
- toJSON(data?: any) {
- data = typeof data === 'object' ? data : {};
- data["id"] = this.id;
- data["boardName"] = this.boardName;
- data["ipAddr"] = this.ipAddr;
- data["port"] = this.port;
- data["status"] = this.status;
- data["occupiedUserID"] = this.occupiedUserID;
- data["occupiedUserName"] = this.occupiedUserName;
- data["firmVersion"] = this.firmVersion;
- return data;
- }
-}
-
-/** FPGA 板子类,表示板子信息 */
-export interface IBoard {
- /** FPGA 板子的唯一标识符 */
- id: string;
- /** FPGA 板子的名称 */
- boardName: string;
- /** FPGA 板子的IP地址 */
- ipAddr: string;
- /** FPGA 板子的通信端口 */
- port: number;
- /** FPGA 板子的当前状态 */
- status: BoardStatus;
- /** 占用该板子的用户的唯一标识符 */
- occupiedUserID: string;
- /** 占用该板子的用户的用户名 */
- occupiedUserName?: string | undefined;
- /** FPGA 板子的固件版本号 */
- firmVersion: string;
-}
-
-/** FPGA 板子状态枚举 */
-export enum BoardStatus {
- Busy = 0,
- Available = 1,
-}
-
-export class SystemException extends Exception implements ISystemException {
-
- constructor(data?: ISystemException) {
- super(data);
- }
-
- init(_data?: any) {
- super.init(_data);
- }
-
- static fromJS(data: any): SystemException {
- data = typeof data === 'object' ? data : {};
- let result = new SystemException();
- result.init(data);
- return result;
- }
-
- toJSON(data?: any) {
- data = typeof data === 'object' ? data : {};
- super.toJSON(data);
- return data;
- }
-}
-
-export interface ISystemException extends IException {
-}
-
-export class ArgumentException extends SystemException implements IArgumentException {
- declare message: string;
- paramName?: string | undefined;
-
- constructor(data?: IArgumentException) {
- super(data);
- }
-
- init(_data?: any) {
- super.init(_data);
- if (_data) {
- this.message = _data["Message"];
- this.paramName = _data["ParamName"];
- }
- }
-
- static fromJS(data: any): ArgumentException {
- data = typeof data === 'object' ? data : {};
- let result = new ArgumentException();
- result.init(data);
- return result;
- }
-
- toJSON(data?: any) {
- data = typeof data === 'object' ? data : {};
- data["Message"] = this.message;
- data["ParamName"] = this.paramName;
- super.toJSON(data);
- return data;
- }
-}
-
-export interface IArgumentException extends ISystemException {
- message: string;
- paramName?: string | undefined;
-}
-
-/** 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 {
- FixedBurst = 0,
- ExtendBurst = 1,
-}
-
-/** UDP接受数据包格式 */
-export class UDPData implements IUDPData {
- /** 接受到的时间 */
- dateTime!: Date;
- /** 发送来源的IP地址 */
- address!: string;
- /** 发送来源的端口号 */
- port!: number;
- /** 任务ID */
- taskID!: 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.taskID = _data["taskID"];
- 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["taskID"] = this.taskID;
- data["data"] = this.data;
- data["hasRead"] = this.hasRead;
- return data;
- }
-}
-
-/** UDP接受数据包格式 */
-export interface IUDPData {
- /** 接受到的时间 */
- dateTime: Date;
- /** 发送来源的IP地址 */
- address: string;
- /** 发送来源的端口号 */
- port: number;
- /** 任务ID */
- taskID: number;
- /** 接受到的数据 */
- data: string;
- /** 是否被读取过 */
- hasRead: boolean;
-}
-
-export interface FileParameter {
- data: any;
- fileName: string;
-}
-
-export interface FileResponse {
- data: Blob;
- status: number;
- fileName?: string;
- headers?: { [name: string]: any };
-}
-
-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);
+//----------------------
+//
+// 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 VideoStreamClient {
+ 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";
+ }
+
+ /**
+ * 获取 HTTP 视频流服务状态
+ * @return 服务状态信息
+ */
+ getStatus(): Promise {
+ let url_ = this.baseUrl + "/api/VideoStream/Status";
+ url_ = url_.replace(/[?&]$/, "");
+
+ let options_: RequestInit = {
+ method: "GET",
+ headers: {
+ "Accept": "application/json"
+ }
+ };
+
+ return this.http.fetch(url_, options_).then((_response: Response) => {
+ return this.processGetStatus(_response);
+ });
+ }
+
+ protected processGetStatus(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 === 500) {
+ return response.text().then((_responseText) => {
+ let result500: any = null;
+ let resultData500 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
+ result500 = Exception.fromJS(resultData500);
+ return throwException("A server side error occurred.", status, _responseText, _headers, result500);
+ });
+ } 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);
+ }
+
+ /**
+ * 获取 HTTP 视频流信息
+ * @return 流信息
+ */
+ getStreamInfo(): Promise {
+ let url_ = this.baseUrl + "/api/VideoStream/StreamInfo";
+ url_ = url_.replace(/[?&]$/, "");
+
+ let options_: RequestInit = {
+ method: "GET",
+ headers: {
+ "Accept": "application/json"
+ }
+ };
+
+ return this.http.fetch(url_, options_).then((_response: Response) => {
+ return this.processGetStreamInfo(_response);
+ });
+ }
+
+ protected processGetStreamInfo(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 === 500) {
+ return response.text().then((_responseText) => {
+ let result500: any = null;
+ let resultData500 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
+ result500 = Exception.fromJS(resultData500);
+ return throwException("A server side error occurred.", status, _responseText, _headers, result500);
+ });
+ } 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 config 摄像头配置
+ * @return 配置结果
+ */
+ configureCamera(config: CameraConfigRequest): Promise {
+ let url_ = this.baseUrl + "/api/VideoStream/ConfigureCamera";
+ url_ = url_.replace(/[?&]$/, "");
+
+ const content_ = JSON.stringify(config);
+
+ let options_: RequestInit = {
+ body: content_,
+ method: "POST",
+ headers: {
+ "Content-Type": "application/json",
+ "Accept": "application/json"
+ }
+ };
+
+ return this.http.fetch(url_, options_).then((_response: Response) => {
+ return this.processConfigureCamera(_response);
+ });
+ }
+
+ protected processConfigureCamera(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 === 400) {
+ return response.text().then((_responseText) => {
+ let result400: any = null;
+ let resultData400 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
+ result400 = resultData400 !== undefined ? resultData400 : null;
+
+ return throwException("A server side error occurred.", status, _responseText, _headers, result400);
+ });
+ } else if (status === 500) {
+ return response.text().then((_responseText) => {
+ let result500: any = null;
+ let resultData500 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
+ result500 = Exception.fromJS(resultData500);
+ return throwException("A server side error occurred.", status, _responseText, _headers, result500);
+ });
+ } 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);
+ }
+
+ /**
+ * 获取当前摄像头配置
+ * @return 摄像头配置信息
+ */
+ getCameraConfig(): Promise {
+ let url_ = this.baseUrl + "/api/VideoStream/CameraConfig";
+ url_ = url_.replace(/[?&]$/, "");
+
+ let options_: RequestInit = {
+ method: "GET",
+ headers: {
+ "Accept": "application/json"
+ }
+ };
+
+ return this.http.fetch(url_, options_).then((_response: Response) => {
+ return this.processGetCameraConfig(_response);
+ });
+ }
+
+ protected processGetCameraConfig(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 === 500) {
+ return response.text().then((_responseText) => {
+ let result500: any = null;
+ let resultData500 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
+ result500 = Exception.fromJS(resultData500);
+ return throwException("A server side error occurred.", status, _responseText, _headers, result500);
+ });
+ } 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);
+ }
+
+ /**
+ * 控制 HTTP 视频流服务开关
+ * @param enabled (optional) 是否启用服务
+ * @return 操作结果
+ */
+ setEnabled(enabled: boolean | undefined): Promise {
+ let url_ = this.baseUrl + "/api/VideoStream/SetEnabled?";
+ if (enabled === null)
+ throw new Error("The parameter 'enabled' cannot be null.");
+ else if (enabled !== undefined)
+ url_ += "enabled=" + encodeURIComponent("" + enabled) + "&";
+ url_ = url_.replace(/[?&]$/, "");
+
+ let options_: RequestInit = {
+ method: "POST",
+ headers: {
+ "Accept": "application/json"
+ }
+ };
+
+ return this.http.fetch(url_, options_).then((_response: Response) => {
+ return this.processSetEnabled(_response);
+ });
+ }
+
+ protected processSetEnabled(response: Response): Promise