@futdevpro/nts-dynamo 1.5.88 → 1.5.92

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.
Files changed (202) hide show
  1. package/lib/_constants/dynamo-nts-global-settings.const.d.ts +3 -0
  2. package/lib/_constants/dynamo-nts-global-settings.const.d.ts.map +1 -0
  3. package/lib/_constants/dynamo-nts-global-settings.const.js +18 -0
  4. package/lib/_constants/dynamo-nts-global-settings.const.js.map +1 -0
  5. package/lib/_constants/index.d.ts +1 -1
  6. package/lib/_constants/index.d.ts.map +1 -1
  7. package/lib/_constants/index.js +1 -1
  8. package/lib/_constants/index.js.map +1 -1
  9. package/lib/_enums/http/dynamo-nts-socket-event-type.enum.d.ts +10 -0
  10. package/lib/_enums/http/dynamo-nts-socket-event-type.enum.d.ts.map +1 -0
  11. package/lib/_enums/http/dynamo-nts-socket-event-type.enum.js +14 -0
  12. package/lib/_enums/http/dynamo-nts-socket-event-type.enum.js.map +1 -0
  13. package/lib/_enums/index.d.ts +1 -1
  14. package/lib/_enums/index.d.ts.map +1 -1
  15. package/lib/_enums/index.js +1 -1
  16. package/lib/_enums/index.js.map +1 -1
  17. package/lib/_interfaces/dynamo-nts-global-service-settings.interface.d.ts +0 -10
  18. package/lib/_interfaces/dynamo-nts-global-service-settings.interface.d.ts.map +1 -1
  19. package/lib/_models/control-models/dynamo-nts-api-call-params.model.d.ts +96 -0
  20. package/lib/_models/control-models/dynamo-nts-api-call-params.model.d.ts.map +1 -0
  21. package/lib/_models/control-models/dynamo-nts-api-call-params.model.js +48 -0
  22. package/lib/_models/control-models/dynamo-nts-api-call-params.model.js.map +1 -0
  23. package/lib/_models/control-models/dynamo-nts-app-params.model.d.ts +50 -0
  24. package/lib/_models/control-models/dynamo-nts-app-params.model.d.ts.map +1 -0
  25. package/lib/_models/control-models/dynamo-nts-app-params.model.js +18 -0
  26. package/lib/_models/control-models/dynamo-nts-app-params.model.js.map +1 -0
  27. package/lib/_models/control-models/dynamo-nts-endpoint-params.model.d.ts +81 -0
  28. package/lib/_models/control-models/dynamo-nts-endpoint-params.model.d.ts.map +1 -0
  29. package/lib/_models/control-models/dynamo-nts-endpoint-params.model.js +140 -0
  30. package/lib/_models/control-models/dynamo-nts-endpoint-params.model.js.map +1 -0
  31. package/lib/_models/control-models/dynamo-nts-socket-client-service-params.model.d.ts +11 -0
  32. package/lib/_models/control-models/dynamo-nts-socket-client-service-params.model.d.ts.map +1 -0
  33. package/lib/_models/control-models/dynamo-nts-socket-client-service-params.model.js +14 -0
  34. package/lib/_models/control-models/dynamo-nts-socket-client-service-params.model.js.map +1 -0
  35. package/lib/_models/control-models/dynamo-nts-socket-event-params.model.d.ts +33 -0
  36. package/lib/_models/control-models/dynamo-nts-socket-event-params.model.d.ts.map +1 -0
  37. package/lib/_models/control-models/dynamo-nts-socket-event-params.model.js +81 -0
  38. package/lib/_models/control-models/dynamo-nts-socket-event-params.model.js.map +1 -0
  39. package/lib/_models/control-models/dynamo-nts-socket-event.model.d.ts +33 -0
  40. package/lib/_models/control-models/dynamo-nts-socket-event.model.d.ts.map +1 -0
  41. package/lib/_models/control-models/dynamo-nts-socket-event.model.js +81 -0
  42. package/lib/_models/control-models/dynamo-nts-socket-event.model.js.map +1 -0
  43. package/lib/_models/control-models/dynamo-nts-socket-presence.model.d.ts +21 -0
  44. package/lib/_models/control-models/dynamo-nts-socket-presence.model.d.ts.map +1 -0
  45. package/lib/_models/control-models/dynamo-nts-socket-presence.model.js +45 -0
  46. package/lib/_models/control-models/dynamo-nts-socket-presence.model.js.map +1 -0
  47. package/lib/_models/control-models/dynamo-nts-socket-server-service-params.model.d.ts +19 -0
  48. package/lib/_models/control-models/dynamo-nts-socket-server-service-params.model.d.ts.map +1 -0
  49. package/lib/_models/control-models/dynamo-nts-socket-server-service-params.model.js +27 -0
  50. package/lib/_models/control-models/dynamo-nts-socket-server-service-params.model.js.map +1 -0
  51. package/lib/_models/control-models/index.d.ts +8 -0
  52. package/lib/_models/control-models/index.d.ts.map +1 -0
  53. package/lib/_models/control-models/index.js +12 -0
  54. package/lib/_models/control-models/index.js.map +1 -0
  55. package/lib/_models/index.d.ts +2 -7
  56. package/lib/_models/index.d.ts.map +1 -1
  57. package/lib/_models/index.js +4 -9
  58. package/lib/_models/index.js.map +1 -1
  59. package/lib/_models/interfaces/dynamo-nts-certification-settings.interface.d.ts +7 -0
  60. package/lib/_models/interfaces/dynamo-nts-certification-settings.interface.d.ts.map +1 -0
  61. package/lib/_models/interfaces/dynamo-nts-certification-settings.interface.js +3 -0
  62. package/lib/_models/interfaces/dynamo-nts-certification-settings.interface.js.map +1 -0
  63. package/lib/_models/interfaces/dynamo-nts-global-service-settings.interface.d.ts +18 -0
  64. package/lib/_models/interfaces/dynamo-nts-global-service-settings.interface.d.ts.map +1 -0
  65. package/lib/_models/interfaces/dynamo-nts-global-service-settings.interface.js +3 -0
  66. package/lib/_models/interfaces/dynamo-nts-global-service-settings.interface.js.map +1 -0
  67. package/lib/_models/interfaces/dynamo-nts-global-settings.interface.d.ts +54 -0
  68. package/lib/_models/interfaces/dynamo-nts-global-settings.interface.d.ts.map +1 -0
  69. package/lib/_models/interfaces/dynamo-nts-global-settings.interface.js +3 -0
  70. package/lib/_models/interfaces/dynamo-nts-global-settings.interface.js.map +1 -0
  71. package/lib/_models/interfaces/dynamo-nts-port-settings.interface.d.ts +5 -0
  72. package/lib/_models/interfaces/dynamo-nts-port-settings.interface.d.ts.map +1 -0
  73. package/lib/_models/interfaces/dynamo-nts-port-settings.interface.js +3 -0
  74. package/lib/_models/interfaces/dynamo-nts-port-settings.interface.js.map +1 -0
  75. package/lib/_models/interfaces/dynamo-nts-routing-module-settings.interface.d.ts +20 -0
  76. package/lib/_models/interfaces/dynamo-nts-routing-module-settings.interface.d.ts.map +1 -0
  77. package/lib/_models/interfaces/dynamo-nts-routing-module-settings.interface.js +3 -0
  78. package/lib/_models/interfaces/dynamo-nts-routing-module-settings.interface.js.map +1 -0
  79. package/lib/_models/interfaces/index.d.ts +6 -0
  80. package/lib/_models/interfaces/index.d.ts.map +1 -0
  81. package/lib/_models/interfaces/index.js +10 -0
  82. package/lib/_models/interfaces/index.js.map +1 -0
  83. package/lib/_modules/api-service.index.d.ts +1 -1
  84. package/lib/_modules/api-service.index.d.ts.map +1 -1
  85. package/lib/_modules/api-service.index.js +1 -1
  86. package/lib/_modules/api-service.index.js.map +1 -1
  87. package/lib/_modules/app-extended.index.d.ts +10 -10
  88. package/lib/_modules/app-extended.index.d.ts.map +1 -1
  89. package/lib/_modules/app-extended.index.js +11 -11
  90. package/lib/_modules/app-extended.index.js.map +1 -1
  91. package/lib/_modules/app.index.d.ts +8 -8
  92. package/lib/_modules/app.index.d.ts.map +1 -1
  93. package/lib/_modules/app.index.js +9 -9
  94. package/lib/_modules/app.index.js.map +1 -1
  95. package/lib/_modules/controller.index.d.ts +1 -1
  96. package/lib/_modules/controller.index.d.ts.map +1 -1
  97. package/lib/_modules/controller.index.js +2 -2
  98. package/lib/_modules/controller.index.js.map +1 -1
  99. package/lib/_modules/custom-data/custom-data.controller.d.ts.map +1 -1
  100. package/lib/_modules/custom-data/custom-data.controller.js +3 -3
  101. package/lib/_modules/custom-data/custom-data.controller.js.map +1 -1
  102. package/lib/_modules/test/test.controller.d.ts.map +1 -1
  103. package/lib/_modules/test/test.controller.js +10 -10
  104. package/lib/_modules/test/test.controller.js.map +1 -1
  105. package/lib/_modules/usage/usage-controller.d.ts.map +1 -1
  106. package/lib/_modules/usage/usage-controller.js +5 -5
  107. package/lib/_modules/usage/usage-controller.js.map +1 -1
  108. package/lib/_services/dynamo-nts-api.service.d.ts +1 -1
  109. package/lib/_services/dynamo-nts-api.service.d.ts.map +1 -1
  110. package/lib/_services/dynamo-nts-app-extended.d.ts +3 -3
  111. package/lib/_services/dynamo-nts-app-extended.d.ts.map +1 -1
  112. package/lib/_services/dynamo-nts-app-extended.js.map +1 -1
  113. package/lib/_services/dynamo-nts-app.d.ts +9 -5
  114. package/lib/_services/dynamo-nts-app.d.ts.map +1 -1
  115. package/lib/_services/dynamo-nts-app.js +4 -4
  116. package/lib/_services/dynamo-nts-app.js.map +1 -1
  117. package/lib/_services/dynamo-nts-controller-service-collection.service.d.ts +8 -0
  118. package/lib/_services/dynamo-nts-controller-service-collection.service.d.ts.map +1 -0
  119. package/lib/_services/dynamo-nts-controller-service-collection.service.js +11 -0
  120. package/lib/_services/dynamo-nts-controller-service-collection.service.js.map +1 -0
  121. package/lib/_services/dynamo-nts-controller.service.d.ts +1 -1
  122. package/lib/_services/dynamo-nts-controller.service.d.ts.map +1 -1
  123. package/lib/_services/dynamo-nts-controller.service.js.map +1 -1
  124. package/lib/_services/dynamo-nts-global.service.d.ts +2 -19
  125. package/lib/_services/dynamo-nts-global.service.d.ts.map +1 -1
  126. package/lib/_services/dynamo-nts-global.service.js +0 -49
  127. package/lib/_services/dynamo-nts-global.service.js.map +1 -1
  128. package/lib/_services/dynamo-nts-routing-module.service.d.ts +2 -2
  129. package/lib/_services/dynamo-nts-routing-module.service.d.ts.map +1 -1
  130. package/lib/_services/dynamo-nts-routing-module.service.js +3 -3
  131. package/lib/_services/dynamo-nts-routing-module.service.js.map +1 -1
  132. package/lib/_services/dynamo-nts-shared.service.spec.d.ts +0 -1
  133. package/lib/_services/dynamo-nts-shared.service.spec.js +6 -8
  134. package/lib/_services/dynamo-nts-shared.service.spec.js.map +1 -1
  135. package/lib/_services/dynamo-nts-socket-client.service.d.ts +22 -0
  136. package/lib/_services/dynamo-nts-socket-client.service.d.ts.map +1 -0
  137. package/lib/_services/dynamo-nts-socket-client.service.js +43 -0
  138. package/lib/_services/dynamo-nts-socket-client.service.js.map +1 -0
  139. package/lib/_services/dynamo-nts-socket-server-service-collection.service.d.ts +5 -0
  140. package/lib/_services/dynamo-nts-socket-server-service-collection.service.d.ts.map +1 -0
  141. package/lib/_services/dynamo-nts-socket-server-service-collection.service.js +15 -0
  142. package/lib/_services/dynamo-nts-socket-server-service-collection.service.js.map +1 -0
  143. package/lib/_services/dynamo-nts-socket-server.service.d.ts +56 -0
  144. package/lib/_services/dynamo-nts-socket-server.service.d.ts.map +1 -0
  145. package/lib/_services/dynamo-nts-socket-server.service.js +188 -0
  146. package/lib/_services/dynamo-nts-socket-server.service.js.map +1 -0
  147. package/lib/_services/dynamo-nts-socket-service-collection.service.d.ts +1 -6
  148. package/lib/_services/dynamo-nts-socket-service-collection.service.d.ts.map +1 -1
  149. package/lib/_services/dynamo-nts-socket-service-collection.service.js +9 -8
  150. package/lib/_services/dynamo-nts-socket-service-collection.service.js.map +1 -1
  151. package/lib/_services/dynamo-nts-socket.service.d.ts +0 -1
  152. package/lib/_services/dynamo-nts-socket.service.d.ts.map +1 -1
  153. package/lib/_services/dynamo-nts-socket.service.js +4 -5
  154. package/lib/_services/dynamo-nts-socket.service.js.map +1 -1
  155. package/lib/_services/index.d.ts +2 -2
  156. package/lib/_services/index.d.ts.map +1 -1
  157. package/lib/_services/index.js +2 -2
  158. package/lib/_services/index.js.map +1 -1
  159. package/lib/tsconfig.tsbuildinfo +1 -1
  160. package/package.json +4 -17
  161. package/src/_constants/{dynamo-nts-global-settings.ts → dynamo-nts-global-settings.const.ts} +1 -1
  162. package/src/_constants/index.ts +1 -1
  163. package/src/_enums/http/{dynamo-nts-socket-event.enum.ts → dynamo-nts-socket-event-type.enum.ts} +1 -1
  164. package/src/_enums/index.ts +1 -1
  165. package/src/_models/{dynamo-nts-api-call-params.ts → control-models/dynamo-nts-api-call-params.model.ts} +2 -2
  166. package/src/_models/{dynamo-nts-endpoint-params.ts → control-models/dynamo-nts-endpoint-params.model.ts} +4 -4
  167. package/src/_models/control-models/dynamo-nts-socket-client-service-params.model.ts +17 -0
  168. package/src/_models/{dynamo-nts-socket-event-params.ts → control-models/dynamo-nts-socket-event.model.ts} +6 -6
  169. package/src/_models/{dynamo-nts-socket-service-params.ts → control-models/dynamo-nts-socket-server-service-params.model.ts} +3 -3
  170. package/src/_models/control-models/index.ts +11 -0
  171. package/src/_models/index.ts +4 -10
  172. package/src/{_interfaces → _models/interfaces}/dynamo-nts-global-service-settings.interface.ts +4 -6
  173. package/src/_models/{dynamo-nts-global-settings.ts → interfaces/dynamo-nts-global-settings.interface.ts} +2 -2
  174. package/src/_models/{dynamo-nts-routing-module-settings.ts → interfaces/dynamo-nts-routing-module-settings.interface.ts} +2 -2
  175. package/src/_models/interfaces/index.ts +7 -0
  176. package/src/_modules/api-service.index.ts +1 -1
  177. package/src/_modules/app-extended.index.ts +11 -11
  178. package/src/_modules/app.index.ts +9 -9
  179. package/src/_modules/controller.index.ts +2 -2
  180. package/src/_modules/custom-data/custom-data.controller.ts +3 -2
  181. package/src/_modules/custom-data/get-custom-data-routing-module.ts +1 -1
  182. package/src/_modules/test/get-test-routing-module.ts +1 -1
  183. package/src/_modules/test/test.controller.ts +4 -2
  184. package/src/_modules/usage/get-usage-routing-module.ts +1 -1
  185. package/src/_modules/usage/usage-controller.ts +3 -1
  186. package/src/_services/dynamo-nts-api.service.ts +1 -1
  187. package/src/_services/dynamo-nts-app-extended.ts +8 -8
  188. package/src/_services/dynamo-nts-app.ts +16 -7
  189. package/src/_services/dynamo-nts-controller.service.ts +1 -1
  190. package/src/_services/dynamo-nts-global.service.ts +8 -15
  191. package/src/_services/dynamo-nts-routing-module.service.ts +3 -3
  192. package/src/_services/dynamo-nts-shared.service.spec.ts +4 -4
  193. package/src/_services/dynamo-nts-socket-client.service.ts +63 -0
  194. package/src/_services/{dynamo-nts-socket-service-collection.service.ts → dynamo-nts-socket-server-service-collection.service.ts} +3 -3
  195. package/src/_services/{dynamo-nts-socket.service.ts → dynamo-nts-socket-server.service.ts} +32 -34
  196. package/src/_services/index.ts +2 -2
  197. package/src/_interfaces/index.ts +0 -5
  198. /package/src/_models/{dynamo-nts-app-params.ts → control-models/dynamo-nts-app-params.model.ts} +0 -0
  199. /package/src/_models/{dynamo-nts-socket-presence.ts → control-models/dynamo-nts-socket-presence.model.ts} +0 -0
  200. /package/src/{_interfaces → _models/interfaces}/dynamo-nts-certification-settings.interface.ts +0 -0
  201. /package/src/{_interfaces → _models/interfaces}/dynamo-nts-port-settings.interface.ts +0 -0
  202. /package/src/_services/{dynamo-nts-simple-service-collection.service.ts → dynamo-nts-controller-service-collection.service.ts} +0 -0
@@ -0,0 +1,63 @@
1
+
2
+
3
+
4
+ import * as SocketIO from 'socket.io-client';
5
+
6
+ import { DynamoNTS_SingletonService } from './dynamo-nts-singleton.service';
7
+ import { Dynamo_Log } from '@futdevpro/fsm-dynamo';
8
+ import { DynamoNTS_SocketClientServiceParams } from '../_models/control-models/dynamo-nts-socket-client-service-params.model';
9
+ import { dynamoNTS_GlobalSettings } from '../_constants/dynamo-nts-global-settings.const';
10
+ import { DynamoNTS_SocketEvent } from '../_models/control-models/dynamo-nts-socket-event.model';
11
+ import { DynamoNTS_SocketEventType } from '../_enums/http/dynamo-nts-socket-event-type.enum';
12
+
13
+
14
+ export abstract class SocketClientService extends DynamoNTS_SingletonService {
15
+
16
+ private _params: DynamoNTS_SocketClientServiceParams;
17
+ protected get params(): DynamoNTS_SocketClientServiceParams { return this._params; }
18
+
19
+ protected log: boolean = dynamoNTS_GlobalSettings.logSetup;
20
+
21
+ socket: SocketIO.Socket
22
+
23
+ protected incomingEvents: DynamoNTS_SocketEvent<any>[];
24
+
25
+ private constructor() {
26
+ super();
27
+
28
+ try {
29
+ this.incomingEvents = this.getIncomingEvents() ?? [];
30
+
31
+ this.connectSocket();
32
+
33
+ if (this.log) console.log(`Socket Controller setup done: ${this.params.name} (${this.params.port})\n`);
34
+ } catch (error) {
35
+ Dynamo_Log.error(`Socket Client setup failed: ${this.params.name} (${this.params.port})`, error);
36
+ }
37
+ }
38
+
39
+ private connectSocket(): void {
40
+ this.socket = SocketIO.connect(`${this.params.address}:${this.params.port}`).on('connect', () => {
41
+ this.incomingEvents.forEach((event: DynamoNTS_SocketEvent<any>) => {
42
+ this.socket.on(event.event, async (content: any) => {
43
+ try {
44
+ await event.executeEventTasks(this.params.service, content);
45
+ } catch (error) {
46
+ Dynamo_Log.error(`Socket Event failed: ${this.params.name} (${this.params.port})`, error);
47
+ this.socket.emit(DynamoNTS_SocketEventType.error, error);
48
+ }
49
+ });
50
+ });
51
+ });
52
+ }
53
+
54
+ /**
55
+ * You must setup params for the service in this function
56
+ */
57
+ abstract getParams(): DynamoNTS_SocketClientServiceParams;
58
+
59
+ /**
60
+ * You must setup events and required services in this function
61
+ */
62
+ abstract getIncomingEvents(): DynamoNTS_SocketEvent<any>[];
63
+ }
@@ -1,11 +1,11 @@
1
1
 
2
2
  import { DynamoNTS_SingletonService } from './dynamo-nts-singleton.service';
3
- import { DynamoNTS_SocketService } from './dynamo-nts-socket.service';
3
+ import { DynamoNTS_SocketServerService } from './dynamo-nts-socket-server.service';
4
4
 
5
5
  /**
6
6
  *
7
7
  */
8
- export class DynamoNTS_SocketServiceCollection extends DynamoNTS_SingletonService {
8
+ /* export class DynamoNTS_SocketServiceCollection extends DynamoNTS_SingletonService {
9
9
 
10
10
  static getInstance(): DynamoNTS_SocketServiceCollection {
11
11
  return DynamoNTS_SocketServiceCollection.getSingletonInstance();
@@ -13,4 +13,4 @@ export class DynamoNTS_SocketServiceCollection extends DynamoNTS_SingletonServic
13
13
 
14
14
  [service: string]: DynamoNTS_SocketService<any>;
15
15
 
16
- }
16
+ } */
@@ -3,30 +3,29 @@ import * as SocketIO from 'socket.io';
3
3
 
4
4
  import { Dynamo_Error, Dynamo_Log } from '@futdevpro/fsm-dynamo';
5
5
 
6
- import { DynamoNTS_GlobalService } from './dynamo-nts-global.service';
7
6
  import { DynamoNTS_SingletonService } from './dynamo-nts-singleton.service';
8
- import { dynamoNTS_GlobalSettings } from '../_constants/dynamo-nts-global-settings';
9
- import { DynamoNTS_SocketEventParams, DynamoNTS_SocketEventPreprocessTask, DynamoNTS_SocketEventTask } from '../_models/dynamo-nts-socket-event-params';
10
- import { DynamoNTS_SocketEvent } from '../_enums/http/dynamo-nts-socket-event.enum';
11
- import { DynamoNTS_SocketServiceParams } from '../_models/dynamo-nts-socket-service-params';
12
- import { DynamoNTS_SocketPresence } from '../_models/dynamo-nts-socket-presence';
7
+ import { dynamoNTS_GlobalSettings } from '../_constants/dynamo-nts-global-settings.const';
8
+ import { DynamoNTS_SocketEventType } from '../_enums/http/dynamo-nts-socket-event-type.enum';
13
9
  import { DynamoNTS_SocketSecurity } from '../_enums/dynamo-nts-socket-security.enum';
10
+ import { DynamoNTS_SocketServerServiceParams } from '../_models/control-models/dynamo-nts-socket-server-service-params.model';
11
+ import { DynamoNTS_SocketPresence } from '../_models/control-models/dynamo-nts-socket-presence.model';
12
+ import { DynamoNTS_SocketEvent, DynamoNTS_SocketEventPreprocessTask, DynamoNTS_SocketEventTask } from '../_models/control-models/dynamo-nts-socket-event.model';
14
13
 
15
14
  /**
16
15
  *
17
16
  */
18
- export abstract class DynamoNTS_SocketService<T_Presence extends DynamoNTS_SocketPresence, T_Content = any> extends DynamoNTS_SingletonService {
19
- protected params: DynamoNTS_SocketServiceParams;
17
+ export abstract class DynamoNTS_SocketServerService<T_Presence extends DynamoNTS_SocketPresence, T_Content = any> extends DynamoNTS_SingletonService {
18
+ protected params: DynamoNTS_SocketServerServiceParams;
20
19
  get name(): string { return this.params.name; }
21
20
  get port(): number { return this.params.port; }
22
21
  get security(): DynamoNTS_SocketSecurity { return this.params.security; }
23
22
 
24
23
  protected socketServer: SocketIO.Server;
25
24
 
26
- private connectEvent: DynamoNTS_SocketEventParams<SocketIO.Socket>;
27
- protected incomingEvents: DynamoNTS_SocketEventParams<any>[];
25
+ private connectEvent: DynamoNTS_SocketEvent<SocketIO.Socket>;
26
+ protected incomingEvents: DynamoNTS_SocketEvent<any>[];
28
27
 
29
- private subscriptionEvent: DynamoNTS_SocketEventParams<any>;
28
+ private subscriptionEvent: DynamoNTS_SocketEvent<any>;
30
29
  /**
31
30
  * You need to setup a function that converts subscription event content to presence
32
31
  */
@@ -46,7 +45,7 @@ export abstract class DynamoNTS_SocketService<T_Presence extends DynamoNTS_Socke
46
45
  this.params = this.getServiceParams();
47
46
  this.incomingEvents = this.getIncomingEvents() ?? [];
48
47
 
49
- this.attachToGlobalCollection();
48
+ /* this.attachToGlobalCollection(); */
50
49
  this.prepareEvents();
51
50
 
52
51
  if (this.log) console.log(`Socket Controller setup done: ${this.params.name} (${this.params.port}) serurity: ${this.params.security}\n`);
@@ -55,27 +54,27 @@ export abstract class DynamoNTS_SocketService<T_Presence extends DynamoNTS_Socke
55
54
  }
56
55
  }
57
56
 
58
- private attachToGlobalCollection(): void {
57
+ /* private attachToGlobalCollection(): void {
59
58
  DynamoNTS_GlobalService.attachNewSocketService(this);
60
- }
59
+ } */
61
60
 
62
61
  /**
63
62
  * You must setup events and required services for this function
64
63
  */
65
64
  private prepareEvents(): void {
66
- const connectEventIndex = this.incomingEvents.findIndex((event: DynamoNTS_SocketEventParams<any>) => event.event === DynamoNTS_SocketEvent.connection);
65
+ const connectEventIndex = this.incomingEvents.findIndex((event: DynamoNTS_SocketEvent<any>) => event.event === DynamoNTS_SocketEventType.connection);
67
66
  if (0 <= connectEventIndex) {
68
67
  this.connectEvent = this.incomingEvents.splice(connectEventIndex)[0];
69
68
  } else {
70
- this.connectEvent = new DynamoNTS_SocketEventParams({
71
- event: DynamoNTS_SocketEvent.connection,
69
+ this.connectEvent = new DynamoNTS_SocketEvent({
70
+ event: DynamoNTS_SocketEventType.connection,
72
71
  tasks: []
73
72
  });
74
73
  }
75
74
  this.connectEvent.socketName = this.params.name;
76
75
 
77
76
  if (this.getPresenceFromSubscrioptionEventContent) {
78
- const subscriptionEventIndex = this.incomingEvents.findIndex((event: DynamoNTS_SocketEventParams<any>) => event.event === DynamoNTS_SocketEvent.subscribe);
77
+ const subscriptionEventIndex = this.incomingEvents.findIndex((event: DynamoNTS_SocketEvent<any>) => event.event === DynamoNTS_SocketEventType.subscribe);
79
78
  if (0 <= subscriptionEventIndex) {
80
79
  this.subscriptionEvent = this.incomingEvents.splice(subscriptionEventIndex)[0];
81
80
  Dynamo_Log.error(
@@ -83,7 +82,7 @@ export abstract class DynamoNTS_SocketService<T_Presence extends DynamoNTS_Socke
83
82
  `in case you need additional steps for your subscripotions.`
84
83
  );
85
84
  } else {
86
- this.subscriptionEvent = new DynamoNTS_SocketEventParams<SocketIO.Socket>({ event: DynamoNTS_SocketEvent.subscribe });
85
+ this.subscriptionEvent = new DynamoNTS_SocketEvent<SocketIO.Socket>({ event: DynamoNTS_SocketEventType.subscribe });
87
86
  }
88
87
  if (this.getSubscriptionPreProcessess) {
89
88
  this.subscriptionEvent.preProcessess.push(...this.getSubscriptionPreProcessess());
@@ -92,12 +91,12 @@ export abstract class DynamoNTS_SocketService<T_Presence extends DynamoNTS_Socke
92
91
  this.subscriptionEvent.tasks.push(...this.getSubscriptionTasks());
93
92
  }
94
93
 
95
- const disconnectEventIndex = this.incomingEvents.findIndex((event: DynamoNTS_SocketEventParams<any>) => event.event === DynamoNTS_SocketEvent.disconnect);
94
+ const disconnectEventIndex = this.incomingEvents.findIndex((event: DynamoNTS_SocketEvent<any>) => event.event === DynamoNTS_SocketEventType.disconnect);
96
95
  if (0 <= disconnectEventIndex) {
97
96
  this.incomingEvents[disconnectEventIndex].tasks.push(this.removeSubscriptionOnDisconnect);
98
97
  } else {
99
- this.incomingEvents.push(new DynamoNTS_SocketEventParams<SocketIO.Socket>({
100
- event: DynamoNTS_SocketEvent.disconnect,
98
+ this.incomingEvents.push(new DynamoNTS_SocketEvent<SocketIO.Socket>({
99
+ event: DynamoNTS_SocketEventType.disconnect,
101
100
  tasks: [
102
101
  this.removeSubscriptionOnDisconnect
103
102
  ]
@@ -107,26 +106,26 @@ export abstract class DynamoNTS_SocketService<T_Presence extends DynamoNTS_Socke
107
106
  this.subscriptionEvent.socketName = this.params.name;
108
107
  }
109
108
 
110
- this.incomingEvents.forEach((event: DynamoNTS_SocketEventParams<any>) => {
109
+ this.incomingEvents.forEach((event: DynamoNTS_SocketEvent<any>) => {
111
110
  event.socketName = this.params.name;
112
111
  });
113
112
  }
114
113
 
115
114
  async setupSocketServer(newSocketServer: SocketIO.Server): Promise<void> {
116
115
  this.socketServer = newSocketServer;
117
- this.socketServer.on(DynamoNTS_SocketEvent.connection, async (socket: SocketIO.Socket) => {
116
+ this.socketServer.on(DynamoNTS_SocketEventType.connection, async (socket: SocketIO.Socket) => {
118
117
  let issuer: string;
119
118
 
120
- for(let i = 0; i < this.connectEvent.preProcessess.length; i++) {
119
+ for (let i = 0; i < this.connectEvent.preProcessess.length; i++) {
121
120
  await this.connectEvent.preProcessess[i](socket);
122
121
  }
123
122
 
124
- for(let i = 0; i < this.connectEvent.tasks.length; i++) {
123
+ for (let i = 0; i < this.connectEvent.tasks.length; i++) {
125
124
  await this.connectEvent.tasks[i](socket);
126
125
  }
127
126
 
128
127
  if (this.getPresenceFromSubscrioptionEventContent) {
129
- socket.on(DynamoNTS_SocketEvent.subscribe, async (content: any) => {
128
+ socket.on(DynamoNTS_SocketEventType.subscribe, async (content: any) => {
130
129
  try {
131
130
  const presence: T_Presence = await this.getPresenceFromSubscrioptionEventContent(content);
132
131
  issuer = presence.issuerId;
@@ -135,18 +134,18 @@ export abstract class DynamoNTS_SocketService<T_Presence extends DynamoNTS_Socke
135
134
  await this.subscriptionEvent.executeEventTasks(issuer, content);
136
135
  } catch (error) {
137
136
  Dynamo_Log.error(`Socket Subscription failed: ${this.params.name} (${this.params.port})`, error);
138
- socket.emit(DynamoNTS_SocketEvent.error, error);
137
+ socket.emit(DynamoNTS_SocketEventType.error, error);
139
138
  }
140
139
  })
141
140
  }
142
141
 
143
- this.incomingEvents.forEach((event: DynamoNTS_SocketEventParams<any>) => {
142
+ this.incomingEvents.forEach((event: DynamoNTS_SocketEvent<any>) => {
144
143
  socket.on(event.event, async (content: any) => {
145
144
  try {
146
145
  await event.executeEventTasks(issuer, content);
147
146
  } catch (error) {
148
147
  Dynamo_Log.error(`Socket Event failed: ${this.params.name} (${this.params.port})`, error);
149
- socket.emit(DynamoNTS_SocketEvent.error, error);
148
+ socket.emit(DynamoNTS_SocketEventType.error, error);
150
149
  }
151
150
  });
152
151
  });
@@ -191,7 +190,7 @@ export abstract class DynamoNTS_SocketService<T_Presence extends DynamoNTS_Socke
191
190
  }
192
191
 
193
192
  emitError(presenceIssuerId: string, error: any): void {
194
- this.sendEventForId(presenceIssuerId, DynamoNTS_SocketEvent.error, error);
193
+ this.sendEventForId(presenceIssuerId, DynamoNTS_SocketEventType.error, error);
195
194
  }
196
195
 
197
196
  async sendEventForId(id: string, event: string, content: any, error?: (err: any) => void): Promise<void> {
@@ -220,14 +219,13 @@ export abstract class DynamoNTS_SocketService<T_Presence extends DynamoNTS_Socke
220
219
 
221
220
  /**
222
221
  * You must setup params for the service in this function
223
- *
224
222
  */
225
- abstract getServiceParams(): DynamoNTS_SocketServiceParams;
223
+ abstract getServiceParams(): DynamoNTS_SocketServerServiceParams;
226
224
 
227
225
  /**
228
226
  * You must setup events and required services in this function
229
227
  */
230
- abstract getIncomingEvents(): DynamoNTS_SocketEventParams<any>[];
228
+ abstract getIncomingEvents(): DynamoNTS_SocketEvent<any>[];
231
229
 
232
230
  /**
233
231
  * You can setup tasks for the subscription event in this function
@@ -14,8 +14,8 @@ export * from './dynamo-nts-email-service-collection.service';
14
14
  export * from './dynamo-nts-email.service';
15
15
  export * from './dynamo-nts-global.service';
16
16
  export * from './dynamo-nts-routing-module.service';
17
- export * from './dynamo-nts-socket.service';
18
- export * from './dynamo-nts-socket-service-collection.service';
17
+ export * from './dynamo-nts-socket-server.service';
18
+ export * from './dynamo-nts-socket-server-service-collection.service';
19
19
  export * from './dynamo-nts-shared.service';
20
20
  export * from './dynamo-nts-singleton.service';
21
21
 
@@ -1,5 +0,0 @@
1
-
2
-
3
- //export * from './global-service-settings.interface';
4
- //export * from './port-settings.interface';
5
- //export * from './certification-settings.interface';