@futdevpro/nts-dynamo 1.6.13 → 1.6.15

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.
@@ -36,185 +36,246 @@ class DynamoNTS_SocketServerService extends singleton_service_1.DynamoNTS_Single
36
36
  this.incomingEvents = (_a = this.getIncomingEvents()) !== null && _a !== void 0 ? _a : [];
37
37
  this.prepareEvents();
38
38
  if (this.log)
39
- console.log(`Socket Controller setup done: ${this.params.name} (${this.params.port}) serurity: ${this.params.security}\n`);
39
+ console.log(`Socket Server Service setup done: ${this.params.name} (${this.params.port}) serurity: ${this.params.security}\n`);
40
40
  }
41
41
  catch (error) {
42
- fsm_dynamo_1.Dynamo_Log.error(`Socket Controller setup failed: ${(_b = this.params) === null || _b === void 0 ? void 0 : _b.name} (${(_c = this.params) === null || _c === void 0 ? void 0 : _c.port})`, error);
42
+ fsm_dynamo_1.Dynamo_Log.error(`Socket Server Service setup failed: ${(_b = this.params) === null || _b === void 0 ? void 0 : _b.name} (${(_c = this.params) === null || _c === void 0 ? void 0 : _c.port})`, error);
43
43
  }
44
44
  }
45
45
  /**
46
46
  * You must setup events and required services for this function
47
47
  */
48
48
  prepareEvents() {
49
- const connectEventIndex = this.incomingEvents.findIndex((event) => event.eventType === socket_event_type_enum_1.DynamoNTS_SocketEventType.connection);
50
- if (0 <= connectEventIndex) {
51
- this.connectEvent = this.incomingEvents.splice(connectEventIndex)[0];
52
- }
53
- else {
54
- this.connectEvent = new socket_event_control_model_1.DynamoNTS_SocketEvent({
55
- eventType: socket_event_type_enum_1.DynamoNTS_SocketEventType.connection,
56
- tasks: []
57
- });
58
- }
59
- this.connectEvent.socketName = this.params.name;
60
- if (this.getPresenceFromSubscrioptionEventContent) {
61
- const subscriptionEventIndex = this.incomingEvents.findIndex((event) => event.eventType === socket_event_type_enum_1.DynamoNTS_SocketEventType.subscribe);
62
- if (0 <= subscriptionEventIndex) {
63
- this.subscriptionEvent = this.incomingEvents.splice(subscriptionEventIndex)[0];
64
- fsm_dynamo_1.Dynamo_Log.error(`You should not set the subscription event, but the subscriptions tasks, ` +
65
- `in case you need additional steps for your subscripotions.`, `${this.params.name} (${this.params.port})`);
49
+ var _a, _b;
50
+ try {
51
+ const connectEventIndex = this.incomingEvents.findIndex((event) => event.eventType === socket_event_type_enum_1.DynamoNTS_SocketEventType.connection);
52
+ if (0 <= connectEventIndex) {
53
+ this.connectEvent = this.incomingEvents.splice(connectEventIndex)[0];
66
54
  }
67
55
  else {
68
- this.subscriptionEvent = new socket_event_control_model_1.DynamoNTS_SocketEvent({
69
- eventType: socket_event_type_enum_1.DynamoNTS_SocketEventType.subscribe
56
+ this.connectEvent = new socket_event_control_model_1.DynamoNTS_SocketEvent({
57
+ eventType: socket_event_type_enum_1.DynamoNTS_SocketEventType.connection,
58
+ tasks: []
70
59
  });
71
60
  }
72
- if (this.getSubscriptionPreProcessess) {
73
- this.subscriptionEvent.preProcessess.push(...this.getSubscriptionPreProcessess());
74
- }
75
- if (this.getSubscriptionTasks) {
76
- this.subscriptionEvent.tasks.push(...this.getSubscriptionTasks());
77
- }
78
- const disconnectEventIndex = this.incomingEvents.findIndex((event) => event.eventType === socket_event_type_enum_1.DynamoNTS_SocketEventType.disconnect);
79
- if (0 <= disconnectEventIndex) {
80
- this.incomingEvents[disconnectEventIndex].tasks.push(this.removeSubscriptionOnDisconnect);
81
- }
82
- else {
83
- this.incomingEvents.push(new socket_event_control_model_1.DynamoNTS_SocketEvent({
84
- eventType: socket_event_type_enum_1.DynamoNTS_SocketEventType.disconnect,
85
- tasks: [
86
- this.removeSubscriptionOnDisconnect
87
- ]
88
- }));
89
- }
90
- const errorEventIndex = this.incomingEvents.findIndex((event) => event.eventType === socket_event_type_enum_1.DynamoNTS_SocketEventType.error);
91
- if (errorEventIndex == -1 && this.errorHandling) {
92
- this.incomingEvents.push(new socket_event_control_model_1.DynamoNTS_SocketEvent({
93
- eventType: socket_event_type_enum_1.DynamoNTS_SocketEventType.error,
94
- tasks: [
95
- this.errorHandling
96
- ]
97
- }));
98
- }
99
- this.subscriptionEvent.socketName = this.params.name;
100
- }
101
- this.incomingEvents.forEach((event) => {
102
- event.socketName = this.params.name;
103
- });
104
- }
105
- setupSocketServer(newSocketServer) {
106
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
107
- this.socketServer = newSocketServer;
108
- this.socketServer.on(socket_event_type_enum_1.DynamoNTS_SocketEventType.connection, (socket) => tslib_1.__awaiter(this, void 0, void 0, function* () {
109
- let issuer;
110
- for (let i = 0; i < this.connectEvent.preProcessess.length; i++) {
111
- yield this.connectEvent.preProcessess[i](socket);
61
+ this.connectEvent.socketName = this.params.name;
62
+ if (this.getPresenceFromSubscrioptionEventContent) {
63
+ const subscriptionEventIndex = this.incomingEvents.findIndex((event) => event.eventType === socket_event_type_enum_1.DynamoNTS_SocketEventType.subscribe);
64
+ if (0 <= subscriptionEventIndex) {
65
+ this.subscriptionEvent = this.incomingEvents.splice(subscriptionEventIndex)[0];
66
+ fsm_dynamo_1.Dynamo_Log.error(`You should not set the subscription event, but the subscriptions tasks, ` +
67
+ `in case you need additional steps for your subscripotions.`, `${this.params.name} (${this.params.port})`);
112
68
  }
113
- for (let i = 0; i < this.connectEvent.tasks.length; i++) {
114
- yield this.connectEvent.tasks[i](socket);
69
+ else {
70
+ this.subscriptionEvent = new socket_event_control_model_1.DynamoNTS_SocketEvent({
71
+ eventType: socket_event_type_enum_1.DynamoNTS_SocketEventType.subscribe
72
+ });
115
73
  }
116
- if (this.getPresenceFromSubscrioptionEventContent) {
117
- socket.on(socket_event_type_enum_1.DynamoNTS_SocketEventType.subscribe, (content) => tslib_1.__awaiter(this, void 0, void 0, function* () {
118
- try {
119
- const presence = yield this.getPresenceFromSubscrioptionEventContent(content, socket);
120
- issuer = presence.issuerId;
121
- this.socketSubscription(presence);
122
- yield this.subscriptionEvent.executeEventTasks(content, issuer);
123
- console.log(`socket subscription successfull (${issuer})`);
124
- }
125
- catch (error) {
126
- fsm_dynamo_1.Dynamo_Log.error(`Socket Subscription failed: ${this.params.name} (${this.params.port}) will disconnect now...`, error);
127
- socket.emit(socket_event_type_enum_1.DynamoNTS_SocketEventType.error, error);
128
- socket.disconnect();
129
- }
74
+ if (this.getSubscriptionPreProcessess) {
75
+ this.subscriptionEvent.preProcessess.push(...this.getSubscriptionPreProcessess());
76
+ }
77
+ if (this.getSubscriptionTasks) {
78
+ this.subscriptionEvent.tasks.push(...this.getSubscriptionTasks());
79
+ }
80
+ const disconnectEventIndex = this.incomingEvents.findIndex((event) => event.eventType === socket_event_type_enum_1.DynamoNTS_SocketEventType.disconnect);
81
+ if (0 <= disconnectEventIndex) {
82
+ this.incomingEvents[disconnectEventIndex].tasks.push(this.removeSubscriptionOnDisconnect);
83
+ }
84
+ else {
85
+ this.incomingEvents.push(new socket_event_control_model_1.DynamoNTS_SocketEvent({
86
+ eventType: socket_event_type_enum_1.DynamoNTS_SocketEventType.disconnect,
87
+ tasks: [
88
+ this.removeSubscriptionOnDisconnect
89
+ ]
130
90
  }));
131
91
  }
132
- this.incomingEvents.forEach((event) => {
133
- socket.on(event.eventType, (content) => tslib_1.__awaiter(this, void 0, void 0, function* () {
134
- try {
135
- yield event.executeEventTasks(content, issuer);
136
- }
137
- catch (error) {
138
- fsm_dynamo_1.Dynamo_Log.error(`Socket Event failed: ${this.params.name} (${this.params.port})`, error);
139
- socket.emit(socket_event_type_enum_1.DynamoNTS_SocketEventType.error, error);
140
- }
92
+ const errorEventIndex = this.incomingEvents.findIndex((event) => event.eventType === socket_event_type_enum_1.DynamoNTS_SocketEventType.error);
93
+ if (errorEventIndex == -1 && this.errorHandling) {
94
+ this.incomingEvents.push(new socket_event_control_model_1.DynamoNTS_SocketEvent({
95
+ eventType: socket_event_type_enum_1.DynamoNTS_SocketEventType.error,
96
+ tasks: [
97
+ this.errorHandling
98
+ ]
141
99
  }));
142
- });
143
- }));
144
- this.socketServer.listen(this.params.port);
145
- console.log(`\nsocket service setup finished: ${this.params.name}` +
146
- `\nsocket server listening on port: ${this.params.port}`);
100
+ }
101
+ this.subscriptionEvent.socketName = this.params.name;
102
+ }
103
+ this.incomingEvents.forEach((event) => {
104
+ event.socketName = this.params.name;
105
+ });
106
+ }
107
+ catch (error) {
108
+ fsm_dynamo_1.Dynamo_Log.error(`Socket Server Service - Event Preparation setup failed: ${(_a = this.params) === null || _a === void 0 ? void 0 : _a.name} (${(_b = this.params) === null || _b === void 0 ? void 0 : _b.port})`, error);
109
+ }
110
+ }
111
+ setupSocketServer(newSocketServer) {
112
+ var _a, _b;
113
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
114
+ try {
115
+ this.socketServer = newSocketServer;
116
+ this.socketServer.on(socket_event_type_enum_1.DynamoNTS_SocketEventType.connection, (socket) => tslib_1.__awaiter(this, void 0, void 0, function* () {
117
+ let issuer;
118
+ for (let i = 0; i < this.connectEvent.preProcessess.length; i++) {
119
+ yield this.connectEvent.preProcessess[i](socket);
120
+ }
121
+ for (let i = 0; i < this.connectEvent.tasks.length; i++) {
122
+ yield this.connectEvent.tasks[i](socket);
123
+ }
124
+ if (this.getPresenceFromSubscrioptionEventContent) {
125
+ socket.on(socket_event_type_enum_1.DynamoNTS_SocketEventType.subscribe, (content) => tslib_1.__awaiter(this, void 0, void 0, function* () {
126
+ try {
127
+ const presence = yield this.getPresenceFromSubscrioptionEventContent(content, socket);
128
+ issuer = presence.issuerId;
129
+ this.socketSubscription(presence);
130
+ yield this.subscriptionEvent.executeEventTasks(content, issuer);
131
+ console.log(`socket subscription successfull (${issuer})`);
132
+ }
133
+ catch (error) {
134
+ fsm_dynamo_1.Dynamo_Log.error(`Socket Subscription failed: ${this.params.name} (${this.params.port}) will disconnect now...`, error);
135
+ socket.emit(socket_event_type_enum_1.DynamoNTS_SocketEventType.error, error);
136
+ socket.disconnect();
137
+ }
138
+ }));
139
+ }
140
+ this.incomingEvents.forEach((event) => {
141
+ socket.on(event.eventType, (content) => tslib_1.__awaiter(this, void 0, void 0, function* () {
142
+ try {
143
+ yield event.executeEventTasks(content, issuer);
144
+ }
145
+ catch (error) {
146
+ fsm_dynamo_1.Dynamo_Log.error(`Socket Event failed: ${this.params.name} (${this.params.port})`, error);
147
+ socket.emit(socket_event_type_enum_1.DynamoNTS_SocketEventType.error, error);
148
+ }
149
+ }));
150
+ });
151
+ }));
152
+ this.socketServer.listen(this.params.port);
153
+ console.log(`\nsocket service setup finished: ${this.params.name}` +
154
+ `\nsocket server listening on port: ${this.params.port}`);
155
+ }
156
+ catch (error) {
157
+ fsm_dynamo_1.Dynamo_Log.error(`Socket Server Service - Deep Setup failed: ${(_a = this.params) === null || _a === void 0 ? void 0 : _a.name} (${(_b = this.params) === null || _b === void 0 ? void 0 : _b.port})`, error);
158
+ throw error;
159
+ }
147
160
  });
148
161
  }
149
162
  socketSubscription(newPresence) {
163
+ var _a, _b;
150
164
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
151
- const activePresence = this.presences.find((pres) => pres.issuerId === newPresence.issuerId);
152
- if (activePresence) {
153
- activePresence.sockets.push(newPresence.sockets[0]);
165
+ try {
166
+ const activePresence = this.presences.find((pres) => pres.issuerId === newPresence.issuerId);
167
+ if (activePresence) {
168
+ activePresence.sockets.push(newPresence.sockets[0]);
169
+ }
170
+ else {
171
+ this.presences.push(newPresence);
172
+ }
154
173
  }
155
- else {
156
- this.presences.push(newPresence);
174
+ catch (error) {
175
+ fsm_dynamo_1.Dynamo_Log.error(`Socket Subscription failed: ${(_a = this.params) === null || _a === void 0 ? void 0 : _a.name} (${(_b = this.params) === null || _b === void 0 ? void 0 : _b.port})`, error);
176
+ throw error;
157
177
  }
158
178
  });
159
179
  }
160
180
  removeSubscriptionOnDisconnect(socket, issuer) {
181
+ var _a, _b;
161
182
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
162
- const activePresenceIndex = this.presences.findIndex((pres) => pres.sockets.includes(socket));
163
- if (0 <= activePresenceIndex) {
164
- const activePresence = this.presences[activePresenceIndex];
165
- if (activePresence.issuerId !== issuer) {
166
- fsm_dynamo_1.Dynamo_Log.error(`Socket subscription for ${issuer} and ${activePresence.issuerId} does not match.`);
167
- }
168
- const socketIndex = activePresence.sockets.findIndex((s) => s === socket);
169
- if (0 <= socketIndex) {
170
- activePresence.sockets.splice(socketIndex);
171
- if (this.getSubscriptionCloseTasks) {
172
- yield fsm_dynamo_1.Dynamo_Array.asyncForEach(this.getSubscriptionCloseTasks(), (task) => tslib_1.__awaiter(this, void 0, void 0, function* () {
173
- yield task(null, issuer);
174
- }));
183
+ try {
184
+ const activePresenceIndex = this.presences.findIndex((pres) => pres.sockets.includes(socket));
185
+ if (0 <= activePresenceIndex) {
186
+ const activePresence = this.presences[activePresenceIndex];
187
+ if (activePresence.issuerId !== issuer) {
188
+ fsm_dynamo_1.Dynamo_Log.error(`Socket subscription for ${issuer} and ${activePresence.issuerId} does not match.`);
189
+ }
190
+ const socketIndex = activePresence.sockets.findIndex((s) => s === socket);
191
+ if (0 <= socketIndex) {
192
+ activePresence.sockets.splice(socketIndex);
193
+ if (this.getSubscriptionCloseTasks) {
194
+ yield fsm_dynamo_1.Dynamo_Array.asyncForEach(this.getSubscriptionCloseTasks(), (task) => tslib_1.__awaiter(this, void 0, void 0, function* () {
195
+ yield task(null, issuer);
196
+ }));
197
+ }
198
+ }
199
+ else {
200
+ fsm_dynamo_1.Dynamo_Log.error(`Socket does not match present in presence.`);
201
+ }
202
+ if (activePresence.sockets.length === 0) {
203
+ this.presences.splice(activePresenceIndex);
175
204
  }
176
205
  }
177
- else {
178
- fsm_dynamo_1.Dynamo_Log.error(`Socket does not match present in presence.`);
179
- }
180
- if (activePresence.sockets.length === 0) {
181
- this.presences.splice(activePresenceIndex);
182
- }
206
+ }
207
+ catch (error) {
208
+ fsm_dynamo_1.Dynamo_Log.error(`Socket Subscription Removal failed: ${(_a = this.params) === null || _a === void 0 ? void 0 : _a.name} (${(_b = this.params) === null || _b === void 0 ? void 0 : _b.port})`, error);
183
209
  }
184
210
  });
185
211
  }
186
212
  emitEvent(event, content) {
187
- this.socketServer.emit(event, content);
213
+ var _a, _b;
214
+ try {
215
+ this.socketServer.emit(event, content);
216
+ }
217
+ catch (error) {
218
+ fsm_dynamo_1.Dynamo_Log.error(`Socket Event Emit (${event}) failed: ${(_a = this.params) === null || _a === void 0 ? void 0 : _a.name} (${(_b = this.params) === null || _b === void 0 ? void 0 : _b.port})`, error);
219
+ throw error;
220
+ }
188
221
  }
189
222
  idIsSubscribed(id) {
190
- return !!this.presences.find((presence) => presence.issuerId === id);
223
+ var _a, _b;
224
+ try {
225
+ return !!this.presences.find((presence) => presence.issuerId === id);
226
+ }
227
+ catch (error) {
228
+ fsm_dynamo_1.Dynamo_Log.error(`Socket ID Subscription Check (${id}) failed: ${(_a = this.params) === null || _a === void 0 ? void 0 : _a.name} (${(_b = this.params) === null || _b === void 0 ? void 0 : _b.port})`, error);
229
+ throw error;
230
+ }
191
231
  }
192
232
  emitError(presenceIssuerId, error) {
193
- this.sendEventForId(presenceIssuerId, socket_event_type_enum_1.DynamoNTS_SocketEventType.error, error);
233
+ var _a, _b;
234
+ try {
235
+ this.sendEventForId(presenceIssuerId, socket_event_type_enum_1.DynamoNTS_SocketEventType.error, error);
236
+ }
237
+ catch (error) {
238
+ fsm_dynamo_1.Dynamo_Log.error(`Socket Error Emit (id: ${presenceIssuerId}) failed: ${(_a = this.params) === null || _a === void 0 ? void 0 : _a.name} (${(_b = this.params) === null || _b === void 0 ? void 0 : _b.port})`, error);
239
+ throw error;
240
+ }
194
241
  }
195
242
  sendEventForId(id, event, content, error) {
243
+ var _a, _b;
196
244
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
197
- const presence = this.presences.find((pres) => pres.issuerId === id);
198
- if (presence) {
199
- presence.emitEvent(event, content);
200
- }
201
- else {
202
- if (error) {
203
- throw new fsm_dynamo_1.Dynamo_Error({
204
- status: 404,
205
- errorCode: 'NTS-S99-001',
206
- addECToUserMsg: true,
207
- message: `No active socket whit this specific ID: ${id}`,
208
- userMessage: this.defaultErrorUserMsg
209
- });
245
+ try {
246
+ const presence = this.presences.find((pres) => pres.issuerId === id);
247
+ if (presence) {
248
+ presence.emitEvent(event, content);
210
249
  }
250
+ else {
251
+ if (error) {
252
+ throw new fsm_dynamo_1.Dynamo_Error({
253
+ status: 404,
254
+ errorCode: 'NTS-S99-001',
255
+ addECToUserMsg: true,
256
+ message: `No active socket whit this specific ID: ${id}`,
257
+ userMessage: this.defaultErrorUserMsg
258
+ });
259
+ }
260
+ }
261
+ }
262
+ catch (error) {
263
+ fsm_dynamo_1.Dynamo_Log.error(`Socket Event Emit for id (${id}, ${event}) failed: ${(_a = this.params) === null || _a === void 0 ? void 0 : _a.name} (${(_b = this.params) === null || _b === void 0 ? void 0 : _b.port})`, error);
264
+ throw error;
211
265
  }
212
266
  });
213
267
  }
214
268
  broadcastEvent(event, content) {
215
- this.presences.forEach((presence) => {
216
- presence.emitEvent(event, content);
217
- });
269
+ var _a, _b;
270
+ try {
271
+ this.presences.forEach((presence) => {
272
+ presence.emitEvent(event, content);
273
+ });
274
+ }
275
+ catch (error) {
276
+ fsm_dynamo_1.Dynamo_Log.error(`Socket Event Broadcast (${event}) failed: ${(_a = this.params) === null || _a === void 0 ? void 0 : _a.name} (${(_b = this.params) === null || _b === void 0 ? void 0 : _b.port})`, error);
277
+ throw error;
278
+ }
218
279
  }
219
280
  }
220
281
  exports.DynamoNTS_SocketServerService = DynamoNTS_SocketServerService;
@@ -1 +1 @@
1
- {"version":3,"file":"socket-server.service.js","sourceRoot":"","sources":["../../src/_services/socket-server.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"socket-server.service.js","sourceRoot":"","sources":["../../src/_services/socket-server.service.ts"],"names":[],"mappings":"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"}