exodus-framework 2.0.954 → 2.0.955

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 (110) hide show
  1. package/lib/app/settings.d.ts.map +1 -1
  2. package/lib/contracts/settings.d.ts +1 -2
  3. package/lib/contracts/settings.d.ts.map +1 -1
  4. package/lib/utils/database.d.ts +1 -1
  5. package/lib/utils/database.d.ts.map +1 -1
  6. package/package.json +1 -1
  7. package/lib/app/classes/broadcast.js +0 -79
  8. package/lib/app/classes/cache.js +0 -94
  9. package/lib/app/classes/communication.js +0 -99
  10. package/lib/app/classes/communicationcontext.js +0 -1
  11. package/lib/app/classes/event.js +0 -94
  12. package/lib/app/classes/index.js +0 -105
  13. package/lib/app/classes/managed.js +0 -145
  14. package/lib/app/classes/service.js +0 -232
  15. package/lib/app/classes/servicemodel.js +0 -22
  16. package/lib/app/classes/singleton.js +0 -26
  17. package/lib/app/classes/socket/clienthandler.js +0 -54
  18. package/lib/app/classes/socket/eventhandler.js +0 -51
  19. package/lib/app/classes/socket/index.js +0 -20
  20. package/lib/app/classes/system.js +0 -49
  21. package/lib/app/controller.js +0 -97
  22. package/lib/app/core.js +0 -47
  23. package/lib/app/error.js +0 -66
  24. package/lib/app/exodus.js +0 -97
  25. package/lib/app/index.js +0 -68
  26. package/lib/app/settings.js +0 -162
  27. package/lib/certificates/private_key.pem +0 -27
  28. package/lib/certificates/public_key.pem +0 -9
  29. package/lib/contracts/communication/communication.js +0 -39
  30. package/lib/contracts/communication/index.js +0 -27
  31. package/lib/contracts/communication/operation.js +0 -5
  32. package/lib/contracts/console.js +0 -5
  33. package/lib/contracts/contansts.js +0 -13
  34. package/lib/contracts/core.js +0 -12
  35. package/lib/contracts/entity.js +0 -5
  36. package/lib/contracts/http.js +0 -52
  37. package/lib/contracts/index.js +0 -104
  38. package/lib/contracts/messaging.js +0 -50
  39. package/lib/contracts/security.js +0 -5
  40. package/lib/contracts/service.js +0 -11
  41. package/lib/contracts/session.js +0 -5
  42. package/lib/contracts/settings.js +0 -5
  43. package/lib/contracts/singleton.js +0 -5
  44. package/lib/contracts/socket.js +0 -11
  45. package/lib/contracts/tasks.js +0 -1
  46. package/lib/controllers/api/file.js +0 -24
  47. package/lib/controllers/api/index.js +0 -13
  48. package/lib/controllers/api/log.js +0 -55
  49. package/lib/controllers/api/report.js +0 -55
  50. package/lib/controllers/index.js +0 -16
  51. package/lib/controllers/messaging/application.js +0 -75
  52. package/lib/controllers/messaging/database.js +0 -64
  53. package/lib/controllers/messaging/environment.js +0 -111
  54. package/lib/express.d.js +0 -5
  55. package/lib/index.js +0 -104
  56. package/lib/middlewares/access.js +0 -114
  57. package/lib/middlewares/authentication.js +0 -104
  58. package/lib/middlewares/file.js +0 -41
  59. package/lib/middlewares/index.js +0 -36
  60. package/lib/models/Application.js +0 -65
  61. package/lib/models/DatabaseHost.js +0 -62
  62. package/lib/models/EnvConnection.js +0 -41
  63. package/lib/models/Log.js +0 -67
  64. package/lib/models/Report.js +0 -65
  65. package/lib/models/System.js +0 -54
  66. package/lib/models/index.js +0 -82
  67. package/lib/routes/api/index.js +0 -16
  68. package/lib/routes/api/v1/index.js +0 -38
  69. package/lib/routes/api/v1/logs.js +0 -19
  70. package/lib/routes/api/v1/report.js +0 -19
  71. package/lib/routes/api/v1/sse.js +0 -36
  72. package/lib/routes/index.js +0 -27
  73. package/lib/routes/messaging/index.js +0 -34
  74. package/lib/services/database.js +0 -136
  75. package/lib/services/ecosystem.js +0 -46
  76. package/lib/services/express.js +0 -162
  77. package/lib/services/file.js +0 -65
  78. package/lib/services/file_new.js +0 -136
  79. package/lib/services/index.js +0 -108
  80. package/lib/services/log.js +0 -26
  81. package/lib/services/rabitmq.js +0 -187
  82. package/lib/services/redis.js +0 -84
  83. package/lib/services/security.js +0 -231
  84. package/lib/services/sequelize.js +0 -313
  85. package/lib/services/socket.js +0 -123
  86. package/lib/services/task/TaskServiceBase.js +0 -17
  87. package/lib/services/task/index.js +0 -40
  88. package/lib/services/task/queue/QueueService.js +0 -48
  89. package/lib/services/task/queue/QueueTask.js +0 -134
  90. package/lib/services/task/queue/SingleQueue.js +0 -68
  91. package/lib/services/task/queue/index.js +0 -27
  92. package/lib/services/task/scheduler/SchedulerService.js +0 -31
  93. package/lib/services/task/scheduler/SchedulerTask.js +0 -211
  94. package/lib/services/task/scheduler/index.js +0 -20
  95. package/lib/services/test.js +0 -27
  96. package/lib/socket.d.js +0 -3
  97. package/lib/tasks/index.js +0 -27
  98. package/lib/tasks/queue/application.js +0 -44
  99. package/lib/tasks/queue/environment.js +0 -92
  100. package/lib/tasks/queue/index.js +0 -20
  101. package/lib/tasks/queue/teste.js +0 -21
  102. package/lib/tasks/schedule/index.js +0 -13
  103. package/lib/tasks/schedule/restart.js +0 -19
  104. package/lib/tasks/schedule/teste.js +0 -61
  105. package/lib/utils/api.js +0 -65
  106. package/lib/utils/database.js +0 -157
  107. package/lib/utils/date.js +0 -28
  108. package/lib/utils/index.js +0 -60
  109. package/lib/utils/logger.js +0 -51
  110. package/lib/utils/session.js +0 -23
@@ -1 +1 @@
1
- {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../src/app/settings.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AAKvB,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,uBAAuB,EACvB,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,OAAO,EACP,kBAAkB,EACnB,MAAM,uBAAuB,CAAC;AAE/B,cAAM,YAAY;IAChB,WAAW,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAM;IAChD,cAAc,EAAE,OAAO,CAAC,uBAAuB,CAAC,CAAM;IACtD,KAAK,EAAE,OAAO,CAAC,cAAc,CAAC,CAAM;IACpC,QAAQ,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAM;IAC1C,IAAI,EAAE,OAAO,CAAC,aAAa,CAAC,CAAM;IAClC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,CAAM;IAC9B,SAAS,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAM;IAE5C,QAAQ,EAAE,eAAe,CAqGvB;IACF,QAAQ,EAAE,eAAe,CAAC;;IAM1B,SAAS,CAAC,aAAa;IAavB,aAAa;IAGb,iBAAiB;IAGjB,QAAQ;IAGR,WAAW;IAGX,OAAO;IAGP,SAAS;IAGT,YAAY;CAGb;AAED,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../src/app/settings.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AAKvB,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,uBAAuB,EACvB,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,OAAO,EACP,kBAAkB,EACnB,MAAM,uBAAuB,CAAC;AAE/B,cAAM,YAAY;IAChB,WAAW,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAM;IAChD,cAAc,EAAE,OAAO,CAAC,uBAAuB,CAAC,CAAM;IACtD,KAAK,EAAE,OAAO,CAAC,cAAc,CAAC,CAAM;IACpC,QAAQ,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAM;IAC1C,IAAI,EAAE,OAAO,CAAC,aAAa,CAAC,CAAM;IAClC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,CAAM;IAC9B,SAAS,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAM;IAE5C,QAAQ,EAAE,eAAe,CAoGvB;IACF,QAAQ,EAAE,eAAe,CAAC;;IAM1B,SAAS,CAAC,aAAa;IAavB,aAAa;IAGb,iBAAiB;IAGjB,QAAQ;IAGR,WAAW;IAGX,OAAO;IAGP,SAAS;IAGT,YAAY;CAGb;AAED,eAAe,YAAY,CAAC"}
@@ -31,7 +31,7 @@ export type TCacheSettings = {
31
31
  password: string;
32
32
  };
33
33
  export type TdatabaseSettings = {
34
- master: {
34
+ main: {
35
35
  database: string;
36
36
  dialect: Dialect;
37
37
  username: string;
@@ -45,7 +45,6 @@ export type TdatabaseSettings = {
45
45
  log: (sql: string, timing: number) => void;
46
46
  };
47
47
  service: {
48
- database: string;
49
48
  pool: {
50
49
  max: number;
51
50
  min: number;
@@ -1 +1 @@
1
- {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../src/contracts/settings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../src/contracts/settings.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { Sequelize, WhereOptions } from 'sequelize';
2
2
  import { IRequestFilterCondition, LogicalCondition } from '../contracts';
3
- export declare const serviceDB: Sequelize;
3
+ export declare const mainDb: Sequelize;
4
4
  export declare function processFilters<D>(filters?: Partial<Record<keyof D, IRequestFilterCondition<D>> | LogicalCondition<D>>): WhereOptions<D>;
5
5
  //# sourceMappingURL=database.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../src/utils/database.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,SAAS,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEjE,OAAO,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEzE,eAAO,MAAM,SAAS,WASpB,CAAC;AA8FH,wBAAgB,cAAc,CAAC,CAAC,EAC9B,OAAO,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,uBAAuB,CAAC,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC,GACnF,YAAY,CAAC,CAAC,CAAC,CAwCjB"}
1
+ {"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../src/utils/database.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,SAAS,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEjE,OAAO,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEzE,eAAO,MAAM,MAAM,WASjB,CAAC;AA8FH,wBAAgB,cAAc,CAAC,CAAC,EAC9B,OAAO,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,uBAAuB,CAAC,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC,GACnF,YAAY,CAAC,CAAC,CAAC,CAwCjB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "exodus-framework",
3
- "version": "2.0.954",
3
+ "version": "2.0.955",
4
4
  "description": "Exodus Framework",
5
5
  "author": "jhownpaixao",
6
6
  "license": "ISC",
@@ -1,79 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- var _error = require("../error");
8
- var _managed = _interopRequireDefault(require("./managed"));
9
- var _event = _interopRequireDefault(require("./event"));
10
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
11
- /**
12
- * Gerencia a comunicação entre clusters
13
- *
14
- * @class Broadcast
15
- * @extends {Managed}
16
- */
17
- class Broadcast extends _managed.default {
18
- onMasterInit() {
19
- super.onMasterInit();
20
- const workers = this.getWorkers();
21
- for (const id in workers) {
22
- const worker = workers[id];
23
- if (worker) {
24
- worker.on('message', message => this.masterReceiveMessage(worker, message));
25
- }
26
- }
27
- }
28
- onClusterInit() {
29
- super.onClusterInit();
30
- _event.default.registerProcessMessageHandle(message => this.onClusterReceiveMessage(message));
31
- }
32
- masterReceiveMessage(worker, data) {
33
- if (!data || !data.data || !data.eventKey) return;
34
- this.onMasterReceiveMessage(worker, data);
35
- }
36
- broadcastMessage(message) {
37
- if (this.isCluster()) {
38
- return;
39
- }
40
- const workers = this.getWorkers();
41
- for (const id in workers) {
42
- workers[id]?.send(message);
43
- }
44
- }
45
- sendMessageToCluster(clusterId, eventKey, data) {
46
- if (this.isCluster()) {
47
- return;
48
- }
49
- const worker = this.getWorkers()[clusterId];
50
- if (worker) {
51
- worker.send({
52
- eventKey,
53
- data
54
- });
55
- } else {
56
- // TODO
57
- }
58
- }
59
- sendMessageToMaster(eventKey, data) {
60
- if (this.isMaster()) {
61
- return;
62
- }
63
- try {
64
- process.send({
65
- eventKey,
66
- data
67
- });
68
- } catch (error) {
69
- new _error.ErrorHandler('Houve um erro ao enviar a mensagem para o master', error);
70
- }
71
- }
72
- onMasterReceiveMessage(_worker, _message) {
73
- return;
74
- }
75
- onClusterReceiveMessage(_message) {
76
- return;
77
- }
78
- }
79
- var _default = exports.default = Broadcast;
@@ -1,94 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.RedisCache = exports.Cache = void 0;
7
- var _system = _interopRequireDefault(require("./system"));
8
- var _error = require("../error");
9
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
- class Cache extends _system.default {
11
- async get(_key) {
12
- throw new Error('Not implemented');
13
- }
14
- async set(_key, _data) {
15
- throw new Error('Not implemented');
16
- }
17
- async delete(_key) {
18
- throw new Error('Not implemented');
19
- }
20
- async all() {
21
- throw new Error('Not implemented');
22
- }
23
- async clear() {
24
- throw new Error('Not implemented');
25
- }
26
- async has(_key) {
27
- throw new Error('Not implemented');
28
- }
29
- }
30
- exports.Cache = Cache;
31
- class RedisCache extends Cache {
32
- constructor(client, key) {
33
- super();
34
- this.client = client;
35
- this.key = key;
36
- }
37
- async get(key) {
38
- try {
39
- const payload = await this.client.get(`${this.key}-${key}`);
40
- return JSON.parse(payload);
41
- } catch (error) {
42
- new _error.ErrorHandler('Falha no get do redis cache', error);
43
- }
44
- }
45
- async set(key, data) {
46
- try {
47
- const payload = JSON.stringify(data);
48
- await this.client.set(`${this.key}-${key}`, payload);
49
- } catch (error) {
50
- new _error.ErrorHandler('Falha no set do redis cache', error);
51
- }
52
- }
53
- async delete(key) {
54
- try {
55
- await this.client.del(`${this.key}-${key}`);
56
- } catch (error) {
57
- new _error.ErrorHandler('Falha no delete do redis cache', error);
58
- }
59
- }
60
- async all() {
61
- const data = [];
62
- try {
63
- const scan = await this.client.scan(0, {
64
- MATCH: `${this.key}*`
65
- });
66
- for (const k of scan.keys) {
67
- data.push(await this.get(k));
68
- }
69
- return data;
70
- } catch (error) {
71
- new _error.ErrorHandler('Falha no all do redis cache', error);
72
- }
73
- }
74
- async clear() {
75
- try {
76
- const scan = await this.client.scan(0, {
77
- MATCH: `${this.key}*`
78
- });
79
- for (const k of scan.keys) {
80
- await this.delete(k);
81
- }
82
- } catch (error) {
83
- new _error.ErrorHandler('Falha no clear do redis cache', error);
84
- }
85
- }
86
- async has(key) {
87
- try {
88
- return !this.get(key);
89
- } catch (error) {
90
- new _error.ErrorHandler('Falha no has do redis cache', error);
91
- }
92
- }
93
- }
94
- exports.RedisCache = RedisCache;
@@ -1,99 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = exports.RestrictEventCommunication = exports.CommunicationContext = void 0;
7
- var _events = _interopRequireDefault(require("events"));
8
- var _broadcast = _interopRequireDefault(require("./broadcast"));
9
- var _service = require("../../contracts/service");
10
- var _system = _interopRequireDefault(require("./system"));
11
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
- /**
13
- * Gerência a comunicação restrita à um ID/Classe
14
- * ! Deve ser instanciada e não extendida
15
- *
16
- * @export
17
- * @class RestrictEventCommunication
18
- * @extends {Broadcast}
19
- * @template TransportData
20
- */
21
- class RestrictEventCommunication extends _broadcast.default {
22
- emitter;
23
- constructor(serviceName) {
24
- super();
25
- this.serviceName = serviceName;
26
- this.emitter = new _events.default();
27
- }
28
- sendToServiceCluster(clusterId, event, data) {
29
- const key = `${this.serviceName}_${event}`;
30
- this.sendMessageToCluster(clusterId, key, data);
31
- }
32
- sendToServiceMaster(event, data) {
33
- const key = `${this.serviceName}_${event}`;
34
- this.sendMessageToMaster(key, data);
35
- }
36
-
37
- //#Non Muted
38
- onMasterReceiveMessage(worker, message) {
39
- if (!message.eventKey.includes(this.serviceName)) return;
40
- const key = message.eventKey.replace(this.serviceName + '_', '');
41
- this.onServiceMasterReceived(worker, key, message.data);
42
- }
43
- onClusterReceiveMessage(message) {
44
- if (!message.eventKey.includes(this.serviceName)) return;
45
- const key = message.eventKey.replace(this.serviceName + '_', '');
46
- this.onServiceClusterReceived(key, message.data);
47
- }
48
-
49
- //# Muted
50
- onServiceMasterReceived(worker, eventKey, data) {
51
- this.emitter.emit(_service.eEventCommunication.RECEIVED_CLUSTER_MESSAGE, worker, eventKey, data);
52
- }
53
- onServiceClusterReceived(eventKey, data) {
54
- this.emitter.emit(_service.eEventCommunication.RECEIVED_MASTER_MESSAGE, eventKey, data);
55
- }
56
- on(key, handle) {
57
- this.emitter.on(key, handle);
58
- }
59
- off(key, handle) {
60
- this.emitter.off(key, handle);
61
- }
62
- }
63
-
64
- /**
65
- * Classe base voltada para a comunicação com as instancias em outros clusters
66
- *
67
- * @export
68
- * @class CommunicationContext
69
- * @extends {System}
70
- * @template D
71
- */
72
- exports.RestrictEventCommunication = RestrictEventCommunication;
73
- class CommunicationContext extends _system.default {
74
- rECom;
75
- constructor() {
76
- super();
77
- this.rECom = new RestrictEventCommunication(this.constructor.name);
78
-
79
- /* Listen */
80
- this.rECom.on(_service.eEventCommunication.RECEIVED_CLUSTER_MESSAGE, this.onMasterReceived.bind(this));
81
- this.rECom.on(_service.eEventCommunication.RECEIVED_MASTER_MESSAGE, this.onClusterReceived.bind(this));
82
- }
83
-
84
- /* Communication */
85
- sendToCluster(clusterId, event, data) {
86
- this.rECom.sendMessageToCluster(clusterId, event, data);
87
- }
88
- sendToMaster(event, data) {
89
- this.rECom.sendMessageToMaster(event, data);
90
- }
91
- onMasterReceived(_worker, _eventKey, _data) {
92
- return;
93
- }
94
- onClusterReceived(_eventKey, _data) {
95
- return;
96
- }
97
- }
98
- exports.CommunicationContext = CommunicationContext;
99
- var _default = exports.default = RestrictEventCommunication;
@@ -1 +0,0 @@
1
- "use strict";
@@ -1,94 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- var _cluster = _interopRequireDefault(require("cluster"));
8
- var _system = _interopRequireDefault(require("./system"));
9
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
- /**
11
- * Classe responsável pelo gerênciamento de escutas e eventos dos sistema ON/OFF
12
- *
13
- * @class ProcessEmitterManager
14
- * @extends {System}
15
- */
16
- class ProcessEmitterManager extends _system.default {
17
- static workerExitHandles = [];
18
- static clusterExitHandles = [];
19
- static processSIGINTHandles = [];
20
- static processSIGTERMHandles = [];
21
- static processExceptionHandles = [];
22
- static processRejectionHandles = [];
23
- static processExitHandles = [];
24
- static processMessageHandles = [];
25
- static registerWorkerExitHandle(handle) {
26
- this.workerExitHandles.push(handle);
27
- }
28
- static registerClusterExitHandle(handle) {
29
- this.clusterExitHandles.push(handle);
30
- }
31
- static registerProcessSIGINTHandle(handle) {
32
- this.processSIGINTHandles.push(handle);
33
- }
34
- static registerProcessSIGTERMHandle(handle) {
35
- this.processSIGTERMHandles.push(handle);
36
- }
37
- static registerProcessExceptionHandle(handle) {
38
- this.processExceptionHandles.push(handle);
39
- }
40
- static registerProcessRejectionHandle(handle) {
41
- this.processRejectionHandles.push(handle);
42
- }
43
- static registerProcessExitHandle(handle) {
44
- this.processExitHandles.push(handle);
45
- }
46
- static registerProcessMessageHandle(handle) {
47
- this.processMessageHandles.push(handle);
48
- }
49
- static Start() {
50
- _cluster.default.on('fork', worker => {
51
- worker.on('exit', (code, signal) => {
52
- for (const cb of this.workerExitHandles) {
53
- if (cb) cb(code, worker, signal);
54
- }
55
- });
56
- });
57
- _cluster.default.on('exit', (worker, code, signal) => {
58
- for (const cb of this.clusterExitHandles) {
59
- if (cb) cb(code, worker, signal);
60
- }
61
- });
62
- process.on('SIGINT', signal => {
63
- for (const cb of this.processSIGINTHandles) {
64
- if (cb) cb(signal);
65
- }
66
- });
67
- process.on('SIGTERM', signal => {
68
- for (const cb of this.processSIGTERMHandles) {
69
- if (cb) cb(signal);
70
- }
71
- });
72
- process.on('uncaughtException', err => {
73
- for (const cb of this.processExceptionHandles) {
74
- if (cb) cb(err);
75
- }
76
- });
77
- process.on('unhandledRejection', (reason, promise) => {
78
- for (const cb of this.processRejectionHandles) {
79
- if (cb) cb(reason, promise);
80
- }
81
- });
82
- process.on('exit', code => {
83
- for (const cb of this.processExitHandles) {
84
- if (cb) cb(code);
85
- }
86
- });
87
- process.on('message', message => {
88
- for (const cb of this.processMessageHandles) {
89
- if (cb) cb(message);
90
- }
91
- });
92
- }
93
- }
94
- var _default = exports.default = ProcessEmitterManager;
@@ -1,105 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- var _exportNames = {
7
- Broadcast: true,
8
- ServiceModel: true,
9
- ProcessEmitterManager: true,
10
- Managed: true,
11
- Service: true,
12
- Singleton: true
13
- };
14
- Object.defineProperty(exports, "Broadcast", {
15
- enumerable: true,
16
- get: function () {
17
- return _broadcast.default;
18
- }
19
- });
20
- Object.defineProperty(exports, "Managed", {
21
- enumerable: true,
22
- get: function () {
23
- return _managed.default;
24
- }
25
- });
26
- Object.defineProperty(exports, "ProcessEmitterManager", {
27
- enumerable: true,
28
- get: function () {
29
- return _event.default;
30
- }
31
- });
32
- Object.defineProperty(exports, "Service", {
33
- enumerable: true,
34
- get: function () {
35
- return _service.default;
36
- }
37
- });
38
- Object.defineProperty(exports, "ServiceModel", {
39
- enumerable: true,
40
- get: function () {
41
- return _servicemodel.default;
42
- }
43
- });
44
- Object.defineProperty(exports, "Singleton", {
45
- enumerable: true,
46
- get: function () {
47
- return _singleton.default;
48
- }
49
- });
50
- var _broadcast = _interopRequireDefault(require("./broadcast"));
51
- var _communication = require("./communication");
52
- Object.keys(_communication).forEach(function (key) {
53
- if (key === "default" || key === "__esModule") return;
54
- if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
55
- if (key in exports && exports[key] === _communication[key]) return;
56
- Object.defineProperty(exports, key, {
57
- enumerable: true,
58
- get: function () {
59
- return _communication[key];
60
- }
61
- });
62
- });
63
- var _servicemodel = _interopRequireWildcard(require("./servicemodel"));
64
- Object.keys(_servicemodel).forEach(function (key) {
65
- if (key === "default" || key === "__esModule") return;
66
- if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
67
- if (key in exports && exports[key] === _servicemodel[key]) return;
68
- Object.defineProperty(exports, key, {
69
- enumerable: true,
70
- get: function () {
71
- return _servicemodel[key];
72
- }
73
- });
74
- });
75
- var _cache = require("./cache");
76
- Object.keys(_cache).forEach(function (key) {
77
- if (key === "default" || key === "__esModule") return;
78
- if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
79
- if (key in exports && exports[key] === _cache[key]) return;
80
- Object.defineProperty(exports, key, {
81
- enumerable: true,
82
- get: function () {
83
- return _cache[key];
84
- }
85
- });
86
- });
87
- var _event = _interopRequireDefault(require("./event"));
88
- var _managed = _interopRequireDefault(require("./managed"));
89
- var _service = _interopRequireDefault(require("./service"));
90
- var _singleton = _interopRequireDefault(require("./singleton"));
91
- var _socket = require("./socket");
92
- Object.keys(_socket).forEach(function (key) {
93
- if (key === "default" || key === "__esModule") return;
94
- if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
95
- if (key in exports && exports[key] === _socket[key]) return;
96
- Object.defineProperty(exports, key, {
97
- enumerable: true,
98
- get: function () {
99
- return _socket[key];
100
- }
101
- });
102
- });
103
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
104
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
105
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
@@ -1,145 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- var _cluster = _interopRequireDefault(require("cluster"));
8
- var _process = require("process");
9
- var _event = _interopRequireDefault(require("./event"));
10
- var _system = _interopRequireDefault(require("./system"));
11
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
- /**
13
- * Disponibiliza ações de controle de clusters, incluindo comunicação básica
14
- *
15
- * @abstract
16
- * @class Managed
17
- * @extends {System}
18
- */
19
- class Managed extends _system.default {
20
- _isMaster;
21
- _isCluster;
22
- constructor() {
23
- super();
24
- this.onInit();
25
- }
26
-
27
- //# Common
28
- bindProcessEventHandlers() {
29
- _event.default.registerProcessSIGINTHandle(signal => this.onSIGINT(signal));
30
- _event.default.registerProcessSIGTERMHandle(signal => this.onSIGTERM(signal));
31
- _event.default.registerProcessExceptionHandle(err => this.onUncaughtException(err));
32
- _event.default.registerProcessExitHandle(code => this.onExit(code));
33
- _event.default.registerProcessRejectionHandle((reason, promise) => this.onUnhandledRejection(reason, promise));
34
- }
35
-
36
- //# Init
37
- onInit() {
38
- if (_cluster.default.isPrimary) {
39
- this._isMaster = true;
40
- } else {
41
- this._isCluster = true;
42
- }
43
- this.bindProcessEventHandlers();
44
- if (this.isCluster()) this.onClusterInit();
45
- if (this.isMaster()) this.onMasterInit();
46
- }
47
- onClusterInit() {}
48
- onMasterInit() {
49
- _event.default.registerWorkerExitHandle((code, worker, signal) => this.onClusterDown(code, worker, signal));
50
- }
51
-
52
- //# Exit
53
- onExit(_code) {
54
- if (this.isMaster()) this.onMasterExit(_code);
55
- if (this.isCluster()) this.onClusterExit(_code);
56
- }
57
- onClusterExit(_code) {
58
- (0, _process.exit)(_code);
59
- }
60
- onMasterExit(_code) {
61
- (0, _process.exit)(_code);
62
- }
63
- onClusterDown(_code, _worker, _signal) {}
64
-
65
- //# SIGINT
66
- onSIGINT(_signal) {
67
- this.log('Processo encerrado pelo usuário', 'especial');
68
- if (this.isMaster()) this.onMasterSIGINT(_signal);
69
- if (this.isCluster()) this.onClusterSIGINT(_signal);
70
- }
71
- onClusterSIGINT(_signal) {
72
- this.log('Processo encerrado pelo usuário', 'especial');
73
- process.exit(0);
74
- }
75
- onMasterSIGINT(_signal) {
76
- this.log('Processo encerrado pelo usuário', 'especial');
77
- process.exit(0);
78
- }
79
-
80
- //# SIGTERM
81
- onSIGTERM(_signal) {
82
- this.log('Processo encerrado pelo sistema', 'especial');
83
- if (this.isMaster()) this.onMasterSIGTERM(_signal);
84
- if (this.isCluster()) this.onClusterSIGTERM(_signal);
85
- }
86
- onClusterSIGTERM(_signal) {
87
- this.log('Processo encerrado pelo sistema', 'especial');
88
- process.exit(0);
89
- }
90
- onMasterSIGTERM(_signal) {
91
- this.log('Processo encerrado pelo sistema', 'especial');
92
- process.exit(0);
93
- }
94
-
95
- //# UNCAUGHT EXCEPTION
96
- onUncaughtException(_err) {
97
- if (this.isMaster()) this.onMasterUncaughtException(_err);
98
- if (this.isCluster()) this.onClusterUncaughtException(_err);
99
- }
100
- onClusterUncaughtException(_err) {
101
- console.error('Excessão desconhecida:', _err);
102
- throw _err;
103
- }
104
- onMasterUncaughtException(_err) {
105
- console.error('Excessão desconhecida:', _err);
106
- throw _err;
107
- }
108
-
109
- //# UNHANDLED REJECTION
110
- onUnhandledRejection(_reason, _promise) {
111
- if (this.isMaster()) this.onMasterUnhandledRejection(_reason, _promise);
112
- if (this.isCluster()) this.onClusterUnhandledRejection(_reason, _promise);
113
- }
114
- onClusterUnhandledRejection(_reason, _promise) {
115
- console.error('Rejeição não tratada em uma promessa:', _promise, 'Razão:', _reason);
116
- (0, _process.exit)(1);
117
- }
118
- onMasterUnhandledRejection(_reason, _promise) {
119
- console.error('Rejeição não tratada em uma promessa:', _promise, 'Razão:', _reason);
120
- (0, _process.exit)(1);
121
- }
122
-
123
- //# Utils
124
- isMaster() {
125
- return this._isMaster;
126
- }
127
- isCluster() {
128
- return this._isCluster;
129
- }
130
-
131
- //# Getters
132
- getWorkers() {
133
- return _cluster.default.workers;
134
- }
135
- getWorkId() {
136
- if (this.isMaster()) {
137
- return -1;
138
- }
139
- return _cluster.default.worker.id;
140
- }
141
- getClusterCount() {
142
- return Object.values(_cluster.default.workers || {}).filter(worker => worker?.isConnected()).length;
143
- }
144
- }
145
- var _default = exports.default = Managed;