Browse Source

Fix error types in IPC package

dev
David Ludwig 4 years ago
parent
commit
69db4566ec
2 changed files with 6 additions and 12 deletions
  1. +4
    -4
      packages/ipc/src/IpcClientService.ts
  2. +2
    -8
      packages/ipc/src/IpcError.ts

+ 4
- 4
packages/ipc/src/IpcClientService.ts View File

@ -123,8 +123,8 @@ export abstract class IpcClientService<M extends Microservice = Microservice> ex
/** /**
* Perform a general request and wait for a response * Perform a general request and wait for a response
*/ */
protected async request<T = any>(method: string, data?: T, timeout: number|null = null) {
return new Promise<IIpcResponse<T>>((resolve, reject) => {
protected async request<T = any>(method: string, data?: any, timeout: number|null = null) {
return new Promise<T>((resolve, reject) => {
// If the client is not connected to a server, reject immediately // If the client is not connected to a server, reject immediately
if (!this.__isConnected || this.__socket === null) { if (!this.__isConnected || this.__socket === null) {
reject(new IpcConnectionError("Not connected")); reject(new IpcConnectionError("Not connected"));
@ -146,10 +146,10 @@ export abstract class IpcClientService<M extends Microservice = Microservice> ex
let respond = (response: IIpcResponse<T>) => { let respond = (response: IIpcResponse<T>) => {
cleanUp(); cleanUp();
if (response.error !== undefined) { if (response.error !== undefined) {
reject(new IpcResponseError<T>(response.error, response.data));
reject(new IpcResponseError<T>(response.error));
return; return;
} }
resolve(response);
resolve(response.data);
}; };
// Abort the request // Abort the request
let abort = (error: IpcError) => { let abort = (error: IpcError) => {


+ 2
- 8
packages/ipc/src/IpcError.ts View File

@ -32,14 +32,8 @@ export class IpcTimeoutError extends IpcError {
* IPC response error type * IPC response error type
*/ */
export class IpcResponseError<T> extends IpcError { export class IpcResponseError<T> extends IpcError {
/**
* Store the response data
*/
public readonly data: T;
constructor(message: string, data: T) {
super(message);
this.data = data;
constructor(...args: any[]) {
super(...args);
Object.setPrototypeOf(this, IpcResponseError.prototype); Object.setPrototypeOf(this, IpcResponseError.prototype);
} }
} }

Loading…
Cancel
Save