@minimaltech/node-infra 0.5.0 → 0.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/base/loopback/@lb/core/index.d.ts +1 -0
- package/dist/base/loopback/@lb/core/index.js +1 -0
- package/dist/base/loopback/@lb/core/index.js.map +1 -1
- package/dist/base/loopback/filter/index.d.ts +2 -0
- package/dist/base/loopback/filter/index.js +18 -0
- package/dist/base/loopback/filter/index.js.map +1 -0
- package/dist/components/authenticate/controllers/oauth2.controller.js +2 -2
- package/dist/components/authenticate/controllers/oauth2.controller.js.map +1 -1
- package/dist/components/authorize/component.js +2 -2
- package/dist/components/authorize/component.js.map +1 -1
- package/dist/components/authorize/services/enforcer.service.js +2 -2
- package/dist/components/authorize/services/enforcer.service.js.map +1 -1
- package/dist/components/authorize/services/generator.service.js +3 -3
- package/dist/components/authorize/services/generator.service.js.map +1 -1
- package/dist/components/grpc/components/server.component.js +2 -2
- package/dist/components/grpc/components/server.component.js.map +1 -1
- package/dist/components/grpc/helpers/grpc-server.js +4 -4
- package/dist/components/grpc/helpers/grpc-server.js.map +1 -1
- package/dist/components/socket-io/component.js +0 -1
- package/dist/components/socket-io/component.js.map +1 -1
- package/dist/components/socket-io/helpers/socket-io-server.helper.d.ts +0 -2
- package/dist/components/socket-io/helpers/socket-io-server.helper.js +7 -15
- package/dist/components/socket-io/helpers/socket-io-server.helper.js.map +1 -1
- package/dist/components/static-asset/controllers/resource.controller.js +7 -7
- package/dist/components/static-asset/controllers/resource.controller.js.map +1 -1
- package/dist/helpers/crypto/algorithms/aes.algorithm.d.ts +1 -1
- package/dist/helpers/crypto/algorithms/aes.algorithm.js +7 -7
- package/dist/helpers/crypto/algorithms/aes.algorithm.js.map +1 -1
- package/dist/helpers/logger/default-logger.js +3 -3
- package/dist/helpers/logger/default-logger.js.map +1 -1
- package/dist/helpers/network/base-tcp-client.helper.d.ts +56 -0
- package/dist/helpers/network/base-tcp-client.helper.js +134 -0
- package/dist/helpers/network/base-tcp-client.helper.js.map +1 -0
- package/dist/helpers/network/base-tcp-server.helper.d.ts +108 -0
- package/dist/helpers/network/base-tcp-server.helper.js +156 -0
- package/dist/helpers/network/base-tcp-server.helper.js.map +1 -0
- package/dist/helpers/network/index.d.ts +2 -0
- package/dist/helpers/network/index.js +2 -0
- package/dist/helpers/network/index.js.map +1 -1
- package/dist/helpers/network/network-tcp-client.helper.d.ts +5 -48
- package/dist/helpers/network/network-tcp-client.helper.js +4 -126
- package/dist/helpers/network/network-tcp-client.helper.js.map +1 -1
- package/dist/helpers/network/network-tcp-server.helper.d.ts +4 -80
- package/dist/helpers/network/network-tcp-server.helper.js +4 -143
- package/dist/helpers/network/network-tcp-server.helper.js.map +1 -1
- package/dist/helpers/network/network-tls-tcp-client.helper.d.ts +6 -0
- package/dist/helpers/network/network-tls-tcp-client.helper.js +16 -0
- package/dist/helpers/network/network-tls-tcp-client.helper.js.map +1 -0
- package/dist/helpers/network/network-tls-tcp-server.helper.d.ts +6 -0
- package/dist/helpers/network/network-tls-tcp-server.helper.js +15 -0
- package/dist/helpers/network/network-tls-tcp-server.helper.js.map +1 -0
- package/dist/helpers/queue/queue.helper.d.ts +13 -7
- package/dist/helpers/queue/queue.helper.js +19 -6
- package/dist/helpers/queue/queue.helper.js.map +1 -1
- package/dist/migrations/base-path.js +2 -2
- package/dist/migrations/base-path.js.map +1 -1
- package/package.json +6 -1
@@ -1,138 +1,16 @@
|
|
1
1
|
"use strict";
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
|
-
};
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
3
|
exports.NetworkTcpClient = void 0;
|
7
|
-
const
|
8
|
-
const
|
9
|
-
|
10
|
-
const DEFAULT_MAX_RETRY = 5;
|
11
|
-
class NetworkTcpClient extends base_helper_1.BaseHelper {
|
4
|
+
const node_net_1 = require("node:net");
|
5
|
+
const base_tcp_client_helper_1 = require("./base-tcp-client.helper");
|
6
|
+
class NetworkTcpClient extends base_tcp_client_helper_1.BaseNetworkTcpClient {
|
12
7
|
constructor(opts) {
|
13
|
-
|
14
|
-
super({ scope: NetworkTcpClient.name, identifier: opts.identifier });
|
15
|
-
this.retry = {
|
16
|
-
maxReconnect: DEFAULT_MAX_RETRY,
|
17
|
-
currentReconnect: 0,
|
18
|
-
};
|
8
|
+
super(Object.assign(Object.assign({}, opts), { scope: NetworkTcpClient.name, createClientFn: node_net_1.connect }));
|
19
9
|
this.options = opts.options;
|
20
|
-
this.retry = {
|
21
|
-
maxReconnect: (_a = opts.maxRetry) !== null && _a !== void 0 ? _a : DEFAULT_MAX_RETRY,
|
22
|
-
currentReconnect: 0,
|
23
|
-
};
|
24
|
-
this.onConnected = (_b = opts === null || opts === void 0 ? void 0 : opts.onConnected) !== null && _b !== void 0 ? _b : this.handleConnected;
|
25
|
-
this.onData = (_c = opts === null || opts === void 0 ? void 0 : opts.onData) !== null && _c !== void 0 ? _c : this.handleData;
|
26
|
-
this.onClosed = (_d = opts === null || opts === void 0 ? void 0 : opts.onClosed) !== null && _d !== void 0 ? _d : this.handleClosed;
|
27
|
-
this.onError = (_e = opts === null || opts === void 0 ? void 0 : opts.onError) !== null && _e !== void 0 ? _e : this.handleError;
|
28
|
-
this.reconnect = (_f = opts === null || opts === void 0 ? void 0 : opts.reconnect) !== null && _f !== void 0 ? _f : false;
|
29
|
-
this.encoding = opts === null || opts === void 0 ? void 0 : opts.encoding;
|
30
10
|
}
|
31
11
|
static newInstance(opts) {
|
32
12
|
return new NetworkTcpClient(opts);
|
33
13
|
}
|
34
|
-
getClient() {
|
35
|
-
return this.client;
|
36
|
-
}
|
37
|
-
handleConnected() {
|
38
|
-
this.logger.info('[handleConnected][%s] Connected to TCP Server | Options: %j', this.identifier, this.options);
|
39
|
-
this.retry.currentReconnect = 0;
|
40
|
-
}
|
41
|
-
handleData(raw) {
|
42
|
-
const { host, port } = this.options;
|
43
|
-
this.logger.info('[handleData][%s][%s:%d][<==] Raw: %s', this.identifier, host, port, raw);
|
44
|
-
}
|
45
|
-
handleClosed() {
|
46
|
-
this.logger.info('[handleClosed][%s] Closed connection TCP Server | Options: %j', this.identifier, this.options);
|
47
|
-
}
|
48
|
-
handleError(error) {
|
49
|
-
this.logger.error('[handleError][%s] Connection error | Options: %j | Error: %s', this.identifier, this.options, error);
|
50
|
-
if (!this.reconnect || this.retry.currentReconnect >= this.retry.maxReconnect) {
|
51
|
-
return;
|
52
|
-
}
|
53
|
-
const { currentReconnect, maxReconnect } = this.retry;
|
54
|
-
if (maxReconnect > -1 && currentReconnect >= maxReconnect) {
|
55
|
-
this.logger.info('[handleData] Exceeded max retry to reconnect! Max: %d | Current: %d', maxReconnect, currentReconnect);
|
56
|
-
return;
|
57
|
-
}
|
58
|
-
this.reconnectTimeout = setTimeout(() => {
|
59
|
-
var _a;
|
60
|
-
(_a = this.client) === null || _a === void 0 ? void 0 : _a.destroy();
|
61
|
-
this.client = null;
|
62
|
-
this.logger.info('[handleClosed][%s] Retrying to establish TCP Connection | Options: %j', this.identifier, this.options);
|
63
|
-
this.connect({ resetReconnectCounter: false });
|
64
|
-
this.retry.currentReconnect++;
|
65
|
-
}, 5000);
|
66
|
-
}
|
67
|
-
connect(opts) {
|
68
|
-
var _a;
|
69
|
-
if (this.isConnected()) {
|
70
|
-
this.logger.info('[connect][%s] NetworkTcpClient is already initialized!', this.identifier);
|
71
|
-
return;
|
72
|
-
}
|
73
|
-
if ((0, isEmpty_1.default)(this.options)) {
|
74
|
-
this.logger.info('[connect][%s] Cannot init TCP Client with null options', this.identifier);
|
75
|
-
return;
|
76
|
-
}
|
77
|
-
this.logger.info('[connect][%s] New network tcp client | Options: %s', this.identifier, this.options);
|
78
|
-
if (opts === null || opts === void 0 ? void 0 : opts.resetReconnectCounter) {
|
79
|
-
this.retry.currentReconnect = 0;
|
80
|
-
}
|
81
|
-
if (this.client !== null && this.client !== undefined) {
|
82
|
-
(_a = this.client) === null || _a === void 0 ? void 0 : _a.destroy();
|
83
|
-
this.client = null;
|
84
|
-
}
|
85
|
-
this.client = new net_1.Socket();
|
86
|
-
if (this.encoding) {
|
87
|
-
this.client.setEncoding(this.encoding);
|
88
|
-
}
|
89
|
-
this.client.connect(this.options, () => {
|
90
|
-
var _a;
|
91
|
-
(_a = this.onConnected) === null || _a === void 0 ? void 0 : _a.call(this);
|
92
|
-
});
|
93
|
-
this.client.on('data', (message) => {
|
94
|
-
this.onData({ identifier: this.identifier, message });
|
95
|
-
});
|
96
|
-
this.client.on('close', () => {
|
97
|
-
var _a;
|
98
|
-
(_a = this.onClosed) === null || _a === void 0 ? void 0 : _a.call(this);
|
99
|
-
});
|
100
|
-
this.client.on('error', error => {
|
101
|
-
var _a;
|
102
|
-
(_a = this.onError) === null || _a === void 0 ? void 0 : _a.call(this, error);
|
103
|
-
});
|
104
|
-
}
|
105
|
-
disconnect() {
|
106
|
-
var _a;
|
107
|
-
if (!this.client) {
|
108
|
-
this.logger.info('[disconnect][%s] NetworkTcpClient is not initialized yet!', this.identifier);
|
109
|
-
return;
|
110
|
-
}
|
111
|
-
(_a = this.client) === null || _a === void 0 ? void 0 : _a.destroy();
|
112
|
-
this.client = null;
|
113
|
-
clearTimeout(this.reconnectTimeout);
|
114
|
-
this.reconnectTimeout = null;
|
115
|
-
this.logger.info('[disconnect][%s] NetworkTcpClient is destroyed!', this.identifier);
|
116
|
-
}
|
117
|
-
forceReconnect() {
|
118
|
-
this.disconnect();
|
119
|
-
this.connect({ resetReconnectCounter: true });
|
120
|
-
}
|
121
|
-
isConnected() {
|
122
|
-
return this.client && this.client.readyState !== 'closed';
|
123
|
-
}
|
124
|
-
emit(opts) {
|
125
|
-
if (!this.client) {
|
126
|
-
this.logger.info('[emit][%s] TPC Client is not configured yet!', this.identifier);
|
127
|
-
return;
|
128
|
-
}
|
129
|
-
const { payload } = opts;
|
130
|
-
if (!(payload === null || payload === void 0 ? void 0 : payload.length)) {
|
131
|
-
this.logger.info('[emit][%s] Invalid payload to write to TCP Socket!', this.identifier);
|
132
|
-
return;
|
133
|
-
}
|
134
|
-
this.client.write(payload);
|
135
|
-
}
|
136
14
|
}
|
137
15
|
exports.NetworkTcpClient = NetworkTcpClient;
|
138
16
|
//# sourceMappingURL=network-tcp-client.helper.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"network-tcp-client.helper.js","sourceRoot":"","sources":["../../../src/helpers/network/network-tcp-client.helper.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"network-tcp-client.helper.js","sourceRoot":"","sources":["../../../src/helpers/network/network-tcp-client.helper.ts"],"names":[],"mappings":";;;AAAA,uCAAiE;AACjE,qEAAwF;AAExF,MAAa,gBAAiB,SAAQ,6CAAkD;IACtF,YAAY,IAAkF;QAC5F,KAAK,iCACA,IAAI,KACP,KAAK,EAAE,gBAAgB,CAAC,IAAI,EAC5B,cAAc,EAAE,kBAAO,IACvB,CAAC;QACH,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IAC9B,CAAC;IAED,MAAM,CAAC,WAAW,CAChB,IAAkF;QAElF,OAAO,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;CACF;AAfD,4CAeC"}
|
@@ -1,81 +1,5 @@
|
|
1
|
-
import {
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
interface ITcpSocketClient {
|
6
|
-
id: string;
|
7
|
-
socket: SocketClient;
|
8
|
-
state: 'unauthorized' | 'authenticating' | 'authenticated';
|
9
|
-
subscriptions: Set<string>;
|
10
|
-
storage: {
|
11
|
-
connectedAt: dayjs.Dayjs;
|
12
|
-
authenticatedAt: dayjs.Dayjs | null;
|
13
|
-
[additionField: symbol | string]: any;
|
14
|
-
};
|
1
|
+
import { BaseNetworkTcpServer, ITcpSocketServerOptions } from './base-tcp-server.helper';
|
2
|
+
export declare class NetworkTcpServer extends BaseNetworkTcpServer {
|
3
|
+
constructor(opts: Omit<ITcpSocketServerOptions, 'createServerFn'>);
|
4
|
+
static newInstance(opts: Omit<ITcpSocketServerOptions, 'createServerFn'>): NetworkTcpServer;
|
15
5
|
}
|
16
|
-
export interface ITcpSocketServerOptions {
|
17
|
-
identifier: string;
|
18
|
-
serverOptions: Partial<ListenOptions>;
|
19
|
-
authenticateOptions: {
|
20
|
-
required: boolean;
|
21
|
-
duration?: number;
|
22
|
-
};
|
23
|
-
extraEvents?: Record<string, (opts: {
|
24
|
-
id: string;
|
25
|
-
socket: SocketClient;
|
26
|
-
args: any;
|
27
|
-
}) => ValueOrPromise<void>>;
|
28
|
-
onServerReady?: (opts: {
|
29
|
-
server: ReturnType<typeof createServer>;
|
30
|
-
}) => void;
|
31
|
-
onClientConnected?: (opts: {
|
32
|
-
id: string;
|
33
|
-
socket: SocketClient;
|
34
|
-
}) => void;
|
35
|
-
onClientData?: (opts: {
|
36
|
-
id: string;
|
37
|
-
socket: SocketClient;
|
38
|
-
data: Buffer | string;
|
39
|
-
}) => void;
|
40
|
-
onClientClose?: (opts: {
|
41
|
-
id: string;
|
42
|
-
socket: SocketClient;
|
43
|
-
}) => void;
|
44
|
-
onClientError?: (opts: {
|
45
|
-
id: string;
|
46
|
-
socket: SocketClient;
|
47
|
-
error: Error;
|
48
|
-
}) => void;
|
49
|
-
}
|
50
|
-
export declare class NetworkTcpServer extends BaseHelper {
|
51
|
-
private serverOptions;
|
52
|
-
private authenticateOptions;
|
53
|
-
private clients;
|
54
|
-
private server;
|
55
|
-
private extraEvents;
|
56
|
-
private onServerReady?;
|
57
|
-
private onClientConnected?;
|
58
|
-
private onClientData?;
|
59
|
-
private onClientClose?;
|
60
|
-
private onClientError?;
|
61
|
-
constructor(opts: ITcpSocketServerOptions);
|
62
|
-
static newInstance(opts: ITcpSocketServerOptions): NetworkTcpServer;
|
63
|
-
configure(): void;
|
64
|
-
onNewConnection(opts: {
|
65
|
-
socket: SocketClient;
|
66
|
-
}): void;
|
67
|
-
getClients(): Record<string, ITcpSocketClient>;
|
68
|
-
getClient(opts: {
|
69
|
-
id: string;
|
70
|
-
}): ITcpSocketClient;
|
71
|
-
getServer(): import("net").Server;
|
72
|
-
doAuthenticate(opts: {
|
73
|
-
id: string;
|
74
|
-
state: 'unauthorized' | 'authenticating' | 'authenticated';
|
75
|
-
}): void;
|
76
|
-
emit(opts: {
|
77
|
-
clientId: string;
|
78
|
-
payload: Buffer | string;
|
79
|
-
}): void;
|
80
|
-
}
|
81
|
-
export {};
|
@@ -1,154 +1,15 @@
|
|
1
1
|
"use strict";
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
|
-
};
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
3
|
exports.NetworkTcpServer = void 0;
|
7
|
-
const
|
8
|
-
const
|
9
|
-
|
10
|
-
const parse_utility_1 = require("../../utilities/parse.utility");
|
11
|
-
const omit_1 = __importDefault(require("lodash/omit"));
|
12
|
-
const net_1 = require("net");
|
13
|
-
class NetworkTcpServer extends base_helper_1.BaseHelper {
|
4
|
+
const node_net_1 = require("node:net");
|
5
|
+
const base_tcp_server_helper_1 = require("./base-tcp-server.helper");
|
6
|
+
class NetworkTcpServer extends base_tcp_server_helper_1.BaseNetworkTcpServer {
|
14
7
|
constructor(opts) {
|
15
|
-
|
16
|
-
super({ scope: NetworkTcpServer.name, identifier: opts.identifier });
|
17
|
-
this.serverOptions = {};
|
18
|
-
this.clients = Object.assign({});
|
19
|
-
this.serverOptions = opts.serverOptions;
|
20
|
-
this.authenticateOptions = opts.authenticateOptions;
|
21
|
-
if (this.authenticateOptions.required &&
|
22
|
-
(!this.authenticateOptions.duration || this.authenticateOptions.duration < 0)) {
|
23
|
-
throw (0, utilities_1.getError)({
|
24
|
-
message: 'TCP Server | Invalid authenticate duration | Required duration for authenticateOptions',
|
25
|
-
});
|
26
|
-
}
|
27
|
-
this.extraEvents = (_a = opts.extraEvents) !== null && _a !== void 0 ? _a : {};
|
28
|
-
this.onServerReady = opts.onServerReady;
|
29
|
-
this.onClientConnected = opts.onClientConnected;
|
30
|
-
this.onClientData = opts.onClientData;
|
31
|
-
this.onClientClose = opts.onClientClose;
|
32
|
-
this.configure();
|
8
|
+
super(Object.assign(Object.assign({}, opts), { scope: NetworkTcpServer.name, createServerFn: node_net_1.createServer }));
|
33
9
|
}
|
34
10
|
static newInstance(opts) {
|
35
11
|
return new NetworkTcpServer(opts);
|
36
12
|
}
|
37
|
-
configure() {
|
38
|
-
this.server = (0, net_1.createServer)((socket) => {
|
39
|
-
this.onNewConnection({ socket });
|
40
|
-
});
|
41
|
-
this.server.listen(this.serverOptions, () => {
|
42
|
-
var _a;
|
43
|
-
this.logger.info('[configure] TCP Socket Server is now listening | Options: %j', this.serverOptions);
|
44
|
-
(_a = this.onServerReady) === null || _a === void 0 ? void 0 : _a.call(this, { server: this.server });
|
45
|
-
});
|
46
|
-
}
|
47
|
-
onNewConnection(opts) {
|
48
|
-
var _a;
|
49
|
-
const { socket } = opts;
|
50
|
-
const id = (0, parse_utility_1.getUID)();
|
51
|
-
socket.on('data', (data) => {
|
52
|
-
var _a;
|
53
|
-
(_a = this.onClientData) === null || _a === void 0 ? void 0 : _a.call(this, { id, socket, data });
|
54
|
-
});
|
55
|
-
socket.on('error', (error) => {
|
56
|
-
var _a;
|
57
|
-
this.logger.error('[onClientConnect][error] ID: %s | Error: %s', id, error);
|
58
|
-
(_a = this.onClientError) === null || _a === void 0 ? void 0 : _a.call(this, { id, socket, error });
|
59
|
-
socket.end();
|
60
|
-
});
|
61
|
-
socket.on('close', (hasError) => {
|
62
|
-
var _a;
|
63
|
-
this.logger.info('[onClientConnect][close] ID: %s | hasError: %s', id, hasError);
|
64
|
-
(_a = this.onClientClose) === null || _a === void 0 ? void 0 : _a.call(this, { id, socket });
|
65
|
-
this.clients = (0, omit_1.default)(this.clients, [id]);
|
66
|
-
});
|
67
|
-
for (const extraEvent in this.extraEvents) {
|
68
|
-
socket.on(extraEvent, args => {
|
69
|
-
this.extraEvents[extraEvent]({ id, socket, args });
|
70
|
-
});
|
71
|
-
}
|
72
|
-
this.clients[id] = {
|
73
|
-
id,
|
74
|
-
socket,
|
75
|
-
state: this.authenticateOptions.required ? 'unauthorized' : 'authenticated',
|
76
|
-
subscriptions: new Set([]),
|
77
|
-
storage: {
|
78
|
-
connectedAt: (0, date_utility_1.dayjs)(),
|
79
|
-
authenticatedAt: this.authenticateOptions.required ? null : (0, date_utility_1.dayjs)(),
|
80
|
-
},
|
81
|
-
};
|
82
|
-
this.logger.info('[onClientConnect] New TCP SocketClient | Client: %s | authenticateOptions: %s %s', `${id} - ${socket.remoteAddress} - ${socket.remotePort} - ${socket.remoteFamily}`, this.authenticateOptions.required, this.authenticateOptions.duration);
|
83
|
-
(_a = this.onClientConnected) === null || _a === void 0 ? void 0 : _a.call(this, { id, socket });
|
84
|
-
// Check client authentication
|
85
|
-
if (this.authenticateOptions.required &&
|
86
|
-
this.authenticateOptions.duration &&
|
87
|
-
this.authenticateOptions.duration > 0) {
|
88
|
-
setTimeout(() => {
|
89
|
-
const client = this.getClient({ id });
|
90
|
-
if (!client) {
|
91
|
-
return;
|
92
|
-
}
|
93
|
-
if (client.state === 'authenticated') {
|
94
|
-
return;
|
95
|
-
}
|
96
|
-
this.emit({ clientId: id, payload: 'Unauthorized Client' });
|
97
|
-
client.socket.end();
|
98
|
-
}, this.authenticateOptions.duration);
|
99
|
-
}
|
100
|
-
}
|
101
|
-
getClients() {
|
102
|
-
return this.clients;
|
103
|
-
}
|
104
|
-
getClient(opts) {
|
105
|
-
var _a;
|
106
|
-
return (_a = this.clients) === null || _a === void 0 ? void 0 : _a[opts.id];
|
107
|
-
}
|
108
|
-
getServer() {
|
109
|
-
return this.server;
|
110
|
-
}
|
111
|
-
doAuthenticate(opts) {
|
112
|
-
const { id, state } = opts;
|
113
|
-
const client = this.getClient({ id });
|
114
|
-
if (!client) {
|
115
|
-
this.logger.error('[authenticateClient][%s] Client %s NOT FOUND', id);
|
116
|
-
return;
|
117
|
-
}
|
118
|
-
client.state = state;
|
119
|
-
switch (state) {
|
120
|
-
case 'unauthorized':
|
121
|
-
case 'authenticating': {
|
122
|
-
client.storage.authenticatedAt = null;
|
123
|
-
break;
|
124
|
-
}
|
125
|
-
case 'authenticated': {
|
126
|
-
client.storage.authenticatedAt = (0, date_utility_1.dayjs)();
|
127
|
-
break;
|
128
|
-
}
|
129
|
-
default: {
|
130
|
-
break;
|
131
|
-
}
|
132
|
-
}
|
133
|
-
}
|
134
|
-
emit(opts) {
|
135
|
-
const { clientId, payload } = opts;
|
136
|
-
const client = this.getClient({ id: clientId });
|
137
|
-
if (!client) {
|
138
|
-
this.logger.error('[emit][%s] Client %s NOT FOUND', clientId);
|
139
|
-
return;
|
140
|
-
}
|
141
|
-
const { socket } = client;
|
142
|
-
if (!socket.writable) {
|
143
|
-
this.logger.error('[emit][%s] Client %s NOT WRITABLE', clientId);
|
144
|
-
return;
|
145
|
-
}
|
146
|
-
if (!(payload === null || payload === void 0 ? void 0 : payload.length)) {
|
147
|
-
this.logger.info('[emit][%s] Client %s | Invalid payload to write to TCP Socket!', this.identifier, clientId);
|
148
|
-
return;
|
149
|
-
}
|
150
|
-
socket.write(payload);
|
151
|
-
}
|
152
13
|
}
|
153
14
|
exports.NetworkTcpServer = NetworkTcpServer;
|
154
15
|
//# sourceMappingURL=network-tcp-server.helper.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"network-tcp-server.helper.js","sourceRoot":"","sources":["../../../src/helpers/network/network-tcp-server.helper.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"network-tcp-server.helper.js","sourceRoot":"","sources":["../../../src/helpers/network/network-tcp-server.helper.ts"],"names":[],"mappings":";;;AAAA,uCAAwC;AACxC,qEAAyF;AAEzF,MAAa,gBAAiB,SAAQ,6CAAoB;IACxD,YAAY,IAAqD;QAC/D,KAAK,iCACA,IAAI,KACP,KAAK,EAAE,gBAAgB,CAAC,IAAI,EAC5B,cAAc,EAAE,uBAAY,IAC5B,CAAC;IACL,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,IAAqD;QACtE,OAAO,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;CACF;AAZD,4CAYC"}
|
@@ -0,0 +1,6 @@
|
|
1
|
+
import { ConnectionOptions, TLSSocket } from 'node:tls';
|
2
|
+
import { BaseNetworkTcpClient, INetworkTcpClientProps } from './base-tcp-client.helper';
|
3
|
+
export declare class NetworkTlsTcpClient extends BaseNetworkTcpClient<ConnectionOptions, TLSSocket> {
|
4
|
+
constructor(opts: Omit<INetworkTcpClientProps<ConnectionOptions, TLSSocket>, 'createClientFn'>);
|
5
|
+
static newInstance(opts: Omit<INetworkTcpClientProps<ConnectionOptions, TLSSocket>, 'createClientFn'>): NetworkTlsTcpClient;
|
6
|
+
}
|
@@ -0,0 +1,16 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.NetworkTlsTcpClient = void 0;
|
4
|
+
const node_tls_1 = require("node:tls");
|
5
|
+
const base_tcp_client_helper_1 = require("./base-tcp-client.helper");
|
6
|
+
class NetworkTlsTcpClient extends base_tcp_client_helper_1.BaseNetworkTcpClient {
|
7
|
+
constructor(opts) {
|
8
|
+
super(Object.assign(Object.assign({}, opts), { scope: NetworkTlsTcpClient.name, createClientFn: node_tls_1.connect }));
|
9
|
+
this.options = opts.options;
|
10
|
+
}
|
11
|
+
static newInstance(opts) {
|
12
|
+
return new NetworkTlsTcpClient(opts);
|
13
|
+
}
|
14
|
+
}
|
15
|
+
exports.NetworkTlsTcpClient = NetworkTlsTcpClient;
|
16
|
+
//# sourceMappingURL=network-tls-tcp-client.helper.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"network-tls-tcp-client.helper.js","sourceRoot":"","sources":["../../../src/helpers/network/network-tls-tcp-client.helper.ts"],"names":[],"mappings":";;;AAAA,uCAAiE;AACjE,qEAAwF;AAExF,MAAa,mBAAoB,SAAQ,6CAAkD;IACzF,YAAY,IAAkF;QAC5F,KAAK,iCACA,IAAI,KACP,KAAK,EAAE,mBAAmB,CAAC,IAAI,EAC/B,cAAc,EAAE,kBAAO,IACvB,CAAC;QACH,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IAC9B,CAAC;IAED,MAAM,CAAC,WAAW,CAChB,IAAkF;QAElF,OAAO,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;CACF;AAfD,kDAeC"}
|
@@ -0,0 +1,6 @@
|
|
1
|
+
import { Server, TLSSocket as SocketClient, TlsOptions } from 'node:tls';
|
2
|
+
import { BaseNetworkTcpServer, ITcpSocketServerOptions } from './base-tcp-server.helper';
|
3
|
+
export declare class NetworkTlsTcpServer extends BaseNetworkTcpServer<TlsOptions, Server, SocketClient> {
|
4
|
+
constructor(opts: Omit<ITcpSocketServerOptions, 'createServer'>);
|
5
|
+
static newInstance(opts: ITcpSocketServerOptions): NetworkTlsTcpServer;
|
6
|
+
}
|
@@ -0,0 +1,15 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.NetworkTlsTcpServer = void 0;
|
4
|
+
const node_tls_1 = require("node:tls");
|
5
|
+
const base_tcp_server_helper_1 = require("./base-tcp-server.helper");
|
6
|
+
class NetworkTlsTcpServer extends base_tcp_server_helper_1.BaseNetworkTcpServer {
|
7
|
+
constructor(opts) {
|
8
|
+
super(Object.assign(Object.assign({}, opts), { scope: NetworkTlsTcpServer.name, createServerFn: node_tls_1.createServer }));
|
9
|
+
}
|
10
|
+
static newInstance(opts) {
|
11
|
+
return new NetworkTlsTcpServer(opts);
|
12
|
+
}
|
13
|
+
}
|
14
|
+
exports.NetworkTlsTcpServer = NetworkTlsTcpServer;
|
15
|
+
//# sourceMappingURL=network-tls-tcp-server.helper.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"network-tls-tcp-server.helper.js","sourceRoot":"","sources":["../../../src/helpers/network/network-tls-tcp-server.helper.ts"],"names":[],"mappings":";;;AAAA,uCAAuF;AACvF,qEAAyF;AAEzF,MAAa,mBAAoB,SAAQ,6CAAsD;IAC7F,YAAY,IAAmD;QAC7D,KAAK,iCACA,IAAI,KACP,KAAK,EAAE,mBAAmB,CAAC,IAAI,EAC/B,cAAc,EAAE,uBAAY,IAC5B,CAAC;IACL,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,IAA6B;QAC9C,OAAO,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;CACF;AAZD,kDAYC"}
|
@@ -27,22 +27,28 @@ interface IQueueCallback<TElementPayload> {
|
|
27
27
|
identifier: string;
|
28
28
|
queueElement: TQueueElement<TElementPayload>;
|
29
29
|
}) => ValueOrPromise<void>;
|
30
|
+
onStateChange?: (opts: {
|
31
|
+
identifier: string;
|
32
|
+
from: TQueueStatus;
|
33
|
+
to: TQueueStatus;
|
34
|
+
}) => ValueOrPromise<void>;
|
30
35
|
}
|
31
36
|
export declare class QueueHelper<TElementPayload> extends BaseHelper {
|
32
37
|
storage: Array<TQueueElement<TElementPayload>>;
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
38
|
+
protected processingEvents: Set<TQueueElement<TElementPayload>>;
|
39
|
+
protected generator: Generator;
|
40
|
+
protected totalEvent: number;
|
41
|
+
protected autoDispatch: boolean;
|
42
|
+
protected state: TQueueStatus;
|
43
|
+
protected isSettleRequested: boolean;
|
39
44
|
private onMessage?;
|
40
45
|
private onDataEnqueue?;
|
41
46
|
private onDataDequeue?;
|
47
|
+
private onStateChange?;
|
42
48
|
constructor(opts: IQueueCallback<TElementPayload> & {
|
43
49
|
identifier: string;
|
44
50
|
});
|
45
|
-
|
51
|
+
protected handleMessage(): Promise<void>;
|
46
52
|
private _messageListener;
|
47
53
|
nextMessage(): void;
|
48
54
|
enqueue(payload: TElementPayload): Promise<void>;
|
@@ -47,10 +47,11 @@ class QueueHelper extends base_helper_1.BaseHelper {
|
|
47
47
|
this.onMessage = opts.onMessage;
|
48
48
|
this.onDataEnqueue = opts.onDataEnqueue;
|
49
49
|
this.onDataDequeue = opts.onDataDequeue;
|
50
|
+
this.onStateChange = opts.onStateChange;
|
50
51
|
}
|
51
52
|
handleMessage() {
|
52
53
|
return __awaiter(this, void 0, void 0, function* () {
|
53
|
-
var _b;
|
54
|
+
var _b, _c, _d, _e;
|
54
55
|
const current = this.getElementAt(0);
|
55
56
|
if (!current) {
|
56
57
|
this.logger.warn('[handleMessage] current: %j | Invalid current message to handle!', current);
|
@@ -62,21 +63,27 @@ class QueueHelper extends base_helper_1.BaseHelper {
|
|
62
63
|
return;
|
63
64
|
}
|
64
65
|
if (this.state !== QueueStatuses.LOCKED && this.state !== QueueStatuses.SETTLED) {
|
66
|
+
const snap = this.state;
|
65
67
|
this.state = QueueStatuses.PROCESSING;
|
68
|
+
yield ((_b = this.onStateChange) === null || _b === void 0 ? void 0 : _b.call(this, { identifier: this.identifier, from: snap, to: this.state }));
|
66
69
|
}
|
67
70
|
this.getElementAt(0).isLocked = true;
|
68
71
|
this.processingEvents.add(this.getElementAt(0));
|
69
|
-
yield ((
|
72
|
+
yield ((_c = this.onMessage) === null || _c === void 0 ? void 0 : _c.call(this, { identifier: this.identifier, queueElement: this.getElementAt(0) }));
|
70
73
|
const doneElement = this.dequeue();
|
71
74
|
if (doneElement) {
|
72
75
|
this.processingEvents.delete(doneElement);
|
73
76
|
}
|
74
77
|
if (this.state !== QueueStatuses.LOCKED && this.state !== QueueStatuses.SETTLED) {
|
78
|
+
const snap = this.state;
|
75
79
|
this.state = QueueStatuses.WAITING;
|
80
|
+
yield ((_d = this.onStateChange) === null || _d === void 0 ? void 0 : _d.call(this, { identifier: this.identifier, from: snap, to: this.state }));
|
76
81
|
}
|
77
82
|
if (!this.storage.length) {
|
78
83
|
if (this.isSettleRequested) {
|
84
|
+
const snap = this.state;
|
79
85
|
this.state = QueueStatuses.SETTLED;
|
86
|
+
yield ((_e = this.onStateChange) === null || _e === void 0 ? void 0 : _e.call(this, { identifier: this.identifier, from: snap, to: this.state }));
|
80
87
|
}
|
81
88
|
return;
|
82
89
|
}
|
@@ -94,10 +101,7 @@ class QueueHelper extends base_helper_1.BaseHelper {
|
|
94
101
|
}
|
95
102
|
nextMessage() {
|
96
103
|
if (this.state !== QueueStatuses.WAITING) {
|
97
|
-
|
98
|
-
'[nextMessage] currentState: %s | Skip request next message | Invalid queue state to request next message!',
|
99
|
-
this.state,
|
100
|
-
); */
|
104
|
+
this.logger.warn('[nextMessage] SKIP request next message | Invalid queue state to request next message | currentState: %s', this.state);
|
101
105
|
return;
|
102
106
|
}
|
103
107
|
this.generator.next();
|
@@ -133,28 +137,37 @@ class QueueHelper extends base_helper_1.BaseHelper {
|
|
133
137
|
return value;
|
134
138
|
}
|
135
139
|
lock() {
|
140
|
+
var _b;
|
136
141
|
if (this.state >= QueueStatuses.LOCKED) {
|
137
142
|
this.logger.error('[lock] isSettled | currentState: %s | Invalid queue state to request lock queue!', this.isSettleRequested, this.state);
|
138
143
|
return;
|
139
144
|
}
|
145
|
+
const snap = this.state;
|
140
146
|
this.state = QueueStatuses.LOCKED;
|
147
|
+
(_b = this.onStateChange) === null || _b === void 0 ? void 0 : _b.call(this, { identifier: this.identifier, from: snap, to: this.state });
|
141
148
|
}
|
142
149
|
unlock(opts) {
|
150
|
+
var _b;
|
143
151
|
if (this.state > QueueStatuses.LOCKED) {
|
144
152
|
this.logger.error('[unlock] isSettled | currentState: %s | Invalid queue state to request unlock queue!', this.isSettleRequested, this.state);
|
145
153
|
return;
|
146
154
|
}
|
147
155
|
const { shouldProcessNextElement = true } = opts;
|
156
|
+
const snap = this.state;
|
148
157
|
this.state = QueueStatuses.WAITING;
|
158
|
+
(_b = this.onStateChange) === null || _b === void 0 ? void 0 : _b.call(this, { identifier: this.identifier, from: snap, to: this.state });
|
149
159
|
if (!shouldProcessNextElement) {
|
150
160
|
return;
|
151
161
|
}
|
152
162
|
this.nextMessage();
|
153
163
|
}
|
154
164
|
settle() {
|
165
|
+
var _b;
|
155
166
|
this.isSettleRequested = true;
|
156
167
|
if (this.state !== QueueStatuses.PROCESSING) {
|
168
|
+
const snap = this.state;
|
157
169
|
this.state = QueueStatuses.SETTLED;
|
170
|
+
(_b = this.onStateChange) === null || _b === void 0 ? void 0 : _b.call(this, { identifier: this.identifier, from: snap, to: this.state });
|
158
171
|
}
|
159
172
|
}
|
160
173
|
isSettled() {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"queue.helper.js","sourceRoot":"","sources":["../../../src/helpers/queue/queue.helper.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAgD;AAEhD,6DAAqC;AAErC,2DAA2D;AAC3D,MAAa,aAAa;IAQxB,MAAM,CAAC,OAAO,CAAC,MAAc;QAC3B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACrC,CAAC;;AAVH,sCAWC;;AAViB,qBAAO,GAAG,aAAa,AAAhB,CAAiB;AACxB,wBAAU,GAAG,gBAAgB,AAAnB,CAAoB;AAC9B,oBAAM,GAAG,YAAY,AAAf,CAAgB;AACtB,qBAAO,GAAG,aAAa,AAAhB,CAAiB;AAExB,wBAAU,GAAG,IAAI,GAAG,CAAC,CAAC,EAAI,CAAC,OAAO,EAAE,EAAI,CAAC,UAAU,EAAE,EAAI,CAAC,MAAM,EAAE,EAAI,CAAC,OAAO,CAAC,CAAC,AAAtE,CAAuE;
|
1
|
+
{"version":3,"file":"queue.helper.js","sourceRoot":"","sources":["../../../src/helpers/queue/queue.helper.ts"],"names":[],"mappings":"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"}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
3
|
exports.basePath = void 0;
|
4
|
-
const
|
5
|
-
exports.basePath = (0,
|
4
|
+
const node_path_1 = require("node:path");
|
5
|
+
exports.basePath = (0, node_path_1.join)(__dirname, './data/');
|
6
6
|
//# sourceMappingURL=base-path.js.map
|