namirasoft-node 1.4.133 → 1.4.135

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.
@@ -5,6 +5,7 @@ import { ApplicationSchema } from 'namirasoft-schema';
5
5
  import { BaseApplicationLink } from './BaseApplicationLink';
6
6
  import { BaseController } from './BaseController';
7
7
  import { BaseDatabase } from './BaseDatabase';
8
+ import { BaseWorker } from "./BaseWorker";
8
9
  import { IDatabase } from './IDatabase';
9
10
  export declare abstract class BaseApplication<D extends {
10
11
  [name: string]: IDatabase;
@@ -38,13 +39,12 @@ export declare abstract class BaseApplication<D extends {
38
39
  abstract getDatabases(): D;
39
40
  protected abstract getControllers(): any[];
40
41
  protected abstract getCrons(): any[];
41
- protected abstract getWorkers(): any[];
42
+ protected abstract getWorkers(): BaseWorker<D>[];
42
43
  protected abstract getTables(): any[];
43
44
  foreachIDatabase(handler: (d: IDatabase) => Promise<void>): Promise<void>;
44
45
  foreachDatabase(handler: (d: BaseDatabase) => Promise<void>): Promise<void>;
45
46
  protected foreachController(handler: (generator: (req: express.Request, res: express.Response) => BaseController<{}, any, any, any>) => Promise<boolean>, modes: string[]): Promise<void>;
46
47
  protected foreachCron(handler: (generator: () => any) => Promise<boolean>): Promise<void>;
47
- protected foreachWorker(handler: (generator: () => any) => Promise<boolean>): Promise<void>;
48
48
  start(): Promise<void>;
49
49
  protected startCrashHandler(): Promise<void>;
50
50
  protected startDatabase(): Promise<void>;
@@ -152,29 +152,9 @@ class BaseApplication {
152
152
  }
153
153
  });
154
154
  }
155
- foreachWorker(handler) {
156
- return __awaiter(this, void 0, void 0, function* () {
157
- let workers = this.getWorkers();
158
- for (let i = 0; i < workers.length; i++) {
159
- try {
160
- const Template = workers[i];
161
- let con = yield handler(() => {
162
- if (namirasoft_core_1.ObjectService.isClass(Template))
163
- return new Template(this);
164
- return Template(this);
165
- });
166
- if (!con)
167
- break;
168
- }
169
- catch (error) {
170
- this.logger.onCatchCritical(error);
171
- }
172
- }
173
- });
174
- }
175
155
  start() {
176
156
  return __awaiter(this, void 0, void 0, function* () {
177
- this.logger.info(`Application was started in mode '${this.mode}'.`);
157
+ this.logger.info(`Application is being started in mode '${this.mode}'.`);
178
158
  yield this.startCrashHandler();
179
159
  yield this.startDatabase();
180
160
  if (!process.env.NAMIRASOFT_MUTE) {
@@ -196,6 +176,7 @@ class BaseApplication {
196
176
  else {
197
177
  yield this.saveSchema();
198
178
  }
179
+ this.logger.info(`Application was started in mode '${this.mode}'.`);
199
180
  });
200
181
  }
201
182
  startCrashHandler() {
@@ -215,6 +196,7 @@ class BaseApplication {
215
196
  }
216
197
  startDatabase() {
217
198
  return __awaiter(this, void 0, void 0, function* () {
199
+ this.logger.success(`Databases are being connected.`);
218
200
  this.databases = this.getDatabases();
219
201
  yield this.foreachIDatabase((database) => __awaiter(this, void 0, void 0, function* () {
220
202
  yield database.init();
@@ -224,7 +206,7 @@ class BaseApplication {
224
206
  if (!process.env.NAMIRASOFT_MUTE)
225
207
  yield database.seedBefore();
226
208
  }));
227
- this.logger.success("Databases were connected.");
209
+ this.logger.success(`Databases were connected.`);
228
210
  });
229
211
  }
230
212
  onBeforeStart() {
@@ -233,6 +215,8 @@ class BaseApplication {
233
215
  startExpress() {
234
216
  return __awaiter(this, void 0, void 0, function* () {
235
217
  if (!process.env.NAMIRASOFT_MUTE) {
218
+ const port = this.getPort();
219
+ this.logger.success(`HTTP Server is being listening on port ${port}`);
236
220
  this.express = (0, express_1.default)();
237
221
  this.express.use(express_1.default.static('static'));
238
222
  this.express.use((0, cors_1.default)({
@@ -243,9 +227,8 @@ class BaseApplication {
243
227
  credentials: true,
244
228
  }));
245
229
  this.express.use('/', yield this.getRouter());
246
- const port = this.getPort();
247
230
  this.server = this.express.listen(port, () => __awaiter(this, void 0, void 0, function* () {
248
- this.logger.success(`Server is listening on port ${port}`);
231
+ this.logger.success(`HTTP Server is listening on port ${port}`);
249
232
  }));
250
233
  }
251
234
  });
@@ -362,24 +345,37 @@ class BaseApplication {
362
345
  startCrons() {
363
346
  return __awaiter(this, void 0, void 0, function* () {
364
347
  if (!process.env.NAMIRASOFT_MUTE) {
348
+ this.logger.success(`Crons are being created`);
365
349
  this.foreachCron((generator) => __awaiter(this, void 0, void 0, function* () {
366
350
  const template = generator();
367
351
  template.run();
368
352
  this.crons.push(template);
369
353
  return true;
370
354
  }));
355
+ this.logger.success(`Crons were created`);
371
356
  }
372
357
  });
373
358
  }
374
359
  startWorkers() {
375
360
  return __awaiter(this, void 0, void 0, function* () {
376
361
  if (!process.env.NAMIRASOFT_MUTE) {
377
- this.foreachWorker((generator) => __awaiter(this, void 0, void 0, function* () {
378
- const template = generator();
379
- template.start();
380
- this.workers.push(template);
381
- return true;
382
- }));
362
+ this.logger.success(`Workers are being started`);
363
+ let workers = this.getWorkers();
364
+ for (let i = 0; i < workers.length; i++) {
365
+ try {
366
+ let worker = workers[i];
367
+ if (worker.modes.length == 0 || worker.modes.includes(this.mode)) {
368
+ this.logger.info(`Worker - ${worker.getName()} - is being started.`);
369
+ yield worker.start();
370
+ this.workers.push(worker);
371
+ this.logger.info(`Worker - ${worker.getName()} - was started.`);
372
+ }
373
+ }
374
+ catch (error) {
375
+ this.logger.onCatchCritical(error);
376
+ }
377
+ }
378
+ this.logger.success(`Workers were started`);
383
379
  }
384
380
  });
385
381
  }
@@ -479,6 +475,7 @@ class BaseApplication {
479
475
  }
480
476
  stop() {
481
477
  return __awaiter(this, void 0, void 0, function* () {
478
+ this.logger.info(`Application is being stopped in mode '${this.mode}'.`);
482
479
  setTimeout(() => {
483
480
  process.exit(0);
484
481
  }, 10000);
@@ -493,15 +490,17 @@ class BaseApplication {
493
490
  setTimeout(() => {
494
491
  process.exit(0);
495
492
  }, 5000);
493
+ this.logger.success(`Application was stopped in mode '${this.mode}'.`);
496
494
  });
497
495
  }
498
496
  stopDatabase() {
499
497
  return __awaiter(this, void 0, void 0, function* () {
498
+ this.logger.info("Databases are being closed.");
500
499
  this.databases = this.getDatabases();
501
500
  yield this.foreachIDatabase((database) => __awaiter(this, void 0, void 0, function* () {
502
501
  yield database.close();
503
502
  }));
504
- this.logger.success("Databases were disconnected.");
503
+ this.logger.success("Databases were closed.");
505
504
  });
506
505
  }
507
506
  onBeforeStop() {
@@ -510,27 +509,37 @@ class BaseApplication {
510
509
  stopExpress() {
511
510
  return __awaiter(this, void 0, void 0, function* () {
512
511
  var _a;
512
+ this.logger.info(`HTTP Server is being stopped.`);
513
513
  if (!process.env.NAMIRASOFT_MUTE)
514
514
  (_a = this.server) === null || _a === void 0 ? void 0 : _a.close();
515
+ this.logger.success(`HTTP Server was stopped.`);
515
516
  });
516
517
  }
517
518
  stopCrons() {
518
519
  return __awaiter(this, void 0, void 0, function* () {
519
520
  if (!process.env.NAMIRASOFT_MUTE) {
521
+ this.logger.info(`Crons are being stopped.`);
520
522
  for (let i = 0; i < this.crons.length; i++) {
521
523
  const cron = this.crons[i];
522
524
  cron.stop();
523
525
  }
526
+ this.crons = [];
527
+ this.logger.success(`Crons were stopped.`);
524
528
  }
525
529
  });
526
530
  }
527
531
  stopWorkers() {
528
532
  return __awaiter(this, void 0, void 0, function* () {
529
533
  if (!process.env.NAMIRASOFT_MUTE) {
534
+ this.logger.info(`Workers are being stopped.`);
530
535
  for (let i = 0; i < this.workers.length; i++) {
531
536
  const worker = this.workers[i];
537
+ this.logger.info(`Worker - ${worker.getName()} - is being stopped.`);
532
538
  yield worker.stop();
539
+ this.logger.info(`Worker - ${worker.getName()} - was stopped.`);
533
540
  }
541
+ this.workers = [];
542
+ this.logger.success(`Workers were stopped.`);
534
543
  }
535
544
  });
536
545
  }
@@ -1 +1 @@
1
- {"version":3,"file":"BaseApplication.js","sourceRoot":"","sources":["../src/BaseApplication.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAwB;AACxB,sDAA0C;AAC1C,uCAAyB;AAEzB,qDAAwF;AAExF,yDAAmH;AACnH,2CAA6B;AAC7B,8DAAqC;AACrC,kEAAyC;AACzC,4EAA2C;AAE3C,qDAAkD;AAElD,iDAA8C;AAI9C,MAAsB,eAAe;IAyBjC,YAAY,SAAiB;;QAtBrB,UAAK,GAA0B,EAAE,CAAC;QAoBlC,UAAK,GAAoB,EAAE,CAAC;QAC5B,YAAO,GAAsB,EAAE,CAAC;QAGpC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC;QAC1B,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC;QACxB,IAAI,CAAC,SAAS,GAAG,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC;QACxC,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;QACtC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,UAAU,GAAG,SAAS,GAAG,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC;QACpD,IAAI,CAAC,SAAS,GAAG,SAAS,GAAG,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC;QAClD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC;QAChD,IAAI,CAAC,GAAG,GAAG,gCAAc,CAAC,OAAO,EAAE,CAAC;QACpC,IAAI,CAAC,KAAK,GAAG,MAAA,MAAA,IAAI,CAAC,GAAG,0CAAE,QAAQ,EAAE,mCAAI,EAAE,CAAC;QACxC,IAAI,CAAC,WAAW,GAAG,MAAA,MAAA,IAAI,CAAC,GAAG,0CAAE,cAAc,EAAE,mCAAI,EAAE,CAAC;QACpD,IAAI,CAAC,IAAI,GAAG,MAAA,MAAA,IAAI,CAAC,GAAG,0CAAE,OAAO,EAAE,mCAAI,EAAE,CAAC;QACtC,IAAI,CAAC,OAAO,GAAG,MAAA,MAAA,IAAI,CAAC,GAAG,0CAAE,UAAU,EAAE,mCAAI,EAAE,CAAC;QAC5C,IAAI,CAAC,IAAI,GAAG,IAAI,4BAAU,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;QAChF,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAChC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjD,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAGvD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC7E,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC3E,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QACjF,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC;YAC9B,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACjC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC;YAC7B,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAChC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;YAChC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAExD,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QACzC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAC5C,CAAC;IAUY,gBAAgB,CAAC,OAAwC;;YAElE,IAAI,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACxC,KAAK,IAAI,IAAI,IAAI,KAAK;gBAClB,MAAM,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5C,CAAC;KAAA;IACY,eAAe,CAAC,OAA2C;;YAEpE,MAAM,IAAI,CAAC,gBAAgB,CAAC,CAAM,CAAC,EAAC,EAAE;gBAElC,IAAI,CAAC,YAAY,2BAAY;oBACzB,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC;YACzB,CAAC,CAAA,CAAC,CAAA;QACN,CAAC;KAAA;IACe,iBAAiB,CAAC,OAA4H,EAAE,KAAe;;YAE3K,IAAI,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;YACxC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAC3C,CAAC;gBACG,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAQ,CAAC;gBACvC,IAAI,SAAS,GAAG,CAAC,GAAoB,EAAE,GAAqB,EAAE,EAAE;oBAE5D,IAAI,+BAAa,CAAC,OAAO,CAAC,QAAQ,CAAC;wBAC/B,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;oBACxC,OAAO,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;gBACpC,CAAC,CAAC;gBAEF,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EACpB,CAAC;oBACG,IAAI,QAAQ,GAAG,SAAS,CAAC,IAAW,EAAE,IAAW,CAAC,CAAC;oBACnD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC;wBAC7B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;4BAClD,OAAO;gBACnB,CAAC;gBAED,IAAI,GAAG,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,CAAC;gBACnC,IAAI,CAAC,GAAG;oBACJ,MAAM;YACd,CAAC;QACL,CAAC;KAAA;IACe,WAAW,CAAC,OAAmD;;YAE3E,IAAI,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EACrC,CAAC;gBACG,IACA,CAAC;oBACG,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAQ,CAAC;oBACjC,IAAI,GAAG,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE;wBAEzB,IAAI,+BAAa,CAAC,OAAO,CAAC,QAAQ,CAAC;4BAC/B,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC;wBAC9B,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC;oBAC1B,CAAC,CAAC,CAAC;oBACH,IAAI,CAAC,GAAG;wBACJ,MAAM;gBACd,CAAC;gBAAC,OAAO,KAAK,EACd,CAAC;oBACG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;gBACvC,CAAC;YACL,CAAC;QACL,CAAC;KAAA;IACe,aAAa,CAAC,OAAmD;;YAE7E,IAAI,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;YAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EACvC,CAAC;gBACG,IACA,CAAC;oBACG,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAQ,CAAC;oBACnC,IAAI,GAAG,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE;wBAEzB,IAAI,+BAAa,CAAC,OAAO,CAAC,QAAQ,CAAC;4BAC/B,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC;wBAC9B,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC;oBAC1B,CAAC,CAAC,CAAC;oBACH,IAAI,CAAC,GAAG;wBACJ,MAAM;gBACd,CAAC;gBAAC,OAAO,KAAK,EACd,CAAC;oBACG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;gBACvC,CAAC;YACL,CAAC;QACL,CAAC;KAAA;IAGK,KAAK;;YAEP,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,oCAAoC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC;YACpE,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC/B,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;YAC3B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,EAChC,CAAC;gBACG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;gBAC3B,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;gBAC1B,IAAI,IAAI,CAAC,IAAI,IAAI,KAAK,EACtB,CAAC;oBACG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;oBAC3B,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;oBAC1B,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;oBAC3B,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;oBAC1B,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;oBACzB,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;oBACzB,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;gBAC5B,CAAC;gBACD,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;gBACxB,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;gBAC1B,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;YAC9B,CAAC;iBAED,CAAC;gBACG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;YAC5B,CAAC;QACL,CAAC;KAAA;IACe,iBAAiB;;YAE7B,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe;gBAC3B,OAAO;YAEX,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,CAAC,MAAM,EAAE,EAAE;gBAExC,IAAI,MAAM,YAAY,KAAK;oBACvB,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;;oBAEpC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;YAC1C,CAAC,CAAC,CAAC;YACH,OAAO,CAAC,EAAE,CAAC,mBAAmB,EAAE,CAAC,KAAK,EAAE,EAAE;gBAEtC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;YACpC,CAAC,CAAC,CAAC;QACP,CAAC;KAAA;IACe,aAAa;;YAEzB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;YACrC,MAAM,IAAI,CAAC,gBAAgB,CAAC,CAAM,QAAQ,EAAC,EAAE;gBAEzC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACtB,MAAM,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACzB,MAAM,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACzB,MAAM,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC3B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe;oBAC5B,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAC;YACpC,CAAC,CAAA,CAAC,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;QACrD,CAAC;KAAA;IACe,aAAa;8DAC3B,CAAC;KAAA;IACa,YAAY;;YAExB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,EAChC,CAAC;gBACG,IAAI,CAAC,OAAO,GAAG,IAAA,iBAAO,GAAE,CAAC;gBAEzB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAE3C,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAA,cAAI,EAAC;oBAClB,cAAc,EAAE,GAAG;oBACnB,MAAM,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE;wBAEpB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;oBACzB,CAAC;oBACD,WAAW,EAAE,IAAI;iBACpB,CAAC,CAAC,CAAC;gBAEJ,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;gBAE9C,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;gBAC5B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,GAAS,EAAE;oBAE/C,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,+BAA+B,IAAI,EAAE,CAAC,CAAC;gBAC/D,CAAC,CAAA,CAAC,CAAC;YACP,CAAC;QACL,CAAC;KAAA;IACe,SAAS;;YAErB,MAAM,MAAM,GAAG,iBAAO,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;YACrD,MAAM,IAAI,CAAC,iBAAiB,CAAC,CAAM,SAAS,EAAC,EAAE;gBAE3C,IACA,CAAC;oBACG,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAW,EAAE,IAAW,CAAC,CAAC;oBACrD,IAAI,IAAI,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;oBAC9B,IAAI,QAAQ,GAAG,EAAE,CAAC;oBAClB,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO;wBAC5B,QAAQ,CAAC,IAAI,CAAC,iBAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;oBACvE,IAAI,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO;wBAC3B,QAAQ,CAAC,IAAI,CAAC,iBAAO,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;oBACnE,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAoB,EAAE,GAAqB,EAAE,EAAE;wBAE1D,IAAI,UAAU,GAAG,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;wBACrC,UAAU,CAAC,GAAG,EAAE,CAAC;oBACrB,CAAC,CAAC,CAAC;oBACH,IAAI,IAAI,GAAG,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC;oBACtC,IAAI,EAAE,GAAyB,MAAM,QAAQ,CAAC,mBAAmB,EAAE,CAAC;oBACpE,KAAK,IAAI,CAAC,IAAI,EAAE;wBACZ,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,GAAG,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;oBACrD,IAAI,IAAI,CAAC,MAAM,IAAI,4BAAU,CAAC,GAAG;wBAC7B,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,QAAQ,CAAC,CAAC;yBAC7B,IAAI,IAAI,CAAC,MAAM,IAAI,4BAAU,CAAC,IAAI;wBACnC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,QAAQ,CAAC,CAAC;yBAC9B,IAAI,IAAI,CAAC,MAAM,IAAI,4BAAU,CAAC,GAAG;wBAClC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,QAAQ,CAAC,CAAC;yBAC7B,IAAI,IAAI,CAAC,MAAM,IAAI,4BAAU,CAAC,KAAK;wBACpC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,QAAQ,CAAC,CAAC;yBAC/B,IAAI,IAAI,CAAC,MAAM,IAAI,4BAAU,CAAC,MAAM;wBACrC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,QAAQ,CAAC,CAAC;gBACzC,CAAC;gBAAC,OAAO,KAAK,EACd,CAAC;oBACG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;gBACpC,CAAC;gBACD,OAAO,IAAI,CAAC;YAChB,CAAC,CAAA,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAChB,OAAO,MAAM,CAAC;QAClB,CAAC;KAAA;IACe,aAAa;;YAEzB,IAAI,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAgC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;YAC1F,IAAI,OAAO,GAAG,IAAI,6CAAyB,CAAC,MAAM,CAAC,CAAC;YACpD,IAAI,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;YAChC,KAAK,IAAI,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,EAChD,CAAC;gBACG,MAAM,KAAK,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;gBACvC,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,GAAG,cAAc,GAAG,IAAI,GAAG,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAC1F,CAAC;YACD,KAAK,IAAI,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAC5C,CAAC;gBACG,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBACnC,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,GAAG,SAAS,GAAG,IAAI,GAAG,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YACrF,CAAC;QACL,CAAC;KAAA;IACe,YAAY;;YAExB,MAAM,QAAQ,GAAG;gBACb,UAAU,EAAE;oBACR,OAAO,EAAE,OAAO;oBAChB,IAAI,EAAE;wBACF,KAAK,EAAE,IAAI,CAAC,KAAK;wBACjB,WAAW,EAAE,IAAI,CAAC,WAAW;wBAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;qBAUxB;oBACD,OAAO,EAAE;wBACL;4BACI,GAAG,EAAE,IAAI,CAAC,SAAS;yBACtB;qBACJ;iBACJ;gBACD,IAAI,EAAE,CAAC,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAC;aACtC,CAAC;YACF,MAAM,WAAW,GAAG,IAAA,uBAAY,EAAC,QAAQ,CAAC,CAAC;YAC3C,IAAI,OAAO,GAAG;gBACV,QAAQ,EAAE,IAAI;aACjB,CAAC;YACF,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,GAAG,GAAG,EAAE,4BAAS,CAAC,KAAK,EAAE,4BAAS,CAAC,KAAK,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;QACtG,CAAC;KAAA;IACe,aAAa;;YAEzB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,GAAG,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;gBAEhD,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAClC,CAAC,CAAC,CAAC;QACP,CAAC;KAAA;IAGe,YAAY;8DAC1B,CAAC;KAAA;IACa,WAAW;;YAEvB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,GAAG,GAAG,EAClC,iBAAO,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EACtD,IAAA,qBAAU,EAAC,IAAI,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QACrF,CAAC;KAAA;IACe,WAAW;8DACzB,CAAC;KAAA;IACa,UAAU;;YAEtB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,GAAG,GAAG,EACjC,iBAAO,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE;gBAC3B,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,MAAM,CAAC;aACxD,CAAC,EACF,IAAA,qBAAU,EAAC,IAAI,CAAC,SAAS,EAAE;gBACvB,KAAK,EAAE,IAAI;gBACX,IAAI,EAAE,SAAS;gBACf,MAAM,EAAE,KAAK;gBACb,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,GAAG,OAAO,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;aAE/D,CAAC,CAAC,CAAC;QACZ,CAAC;KAAA;IACe,UAAU;;YAEtB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,EAChC,CAAC;gBACG,IAAI,CAAC,WAAW,CAAC,CAAM,SAAS,EAAC,EAAE;oBAE/B,MAAM,QAAQ,GAAG,SAAS,EAAiB,CAAC;oBAC5C,QAAQ,CAAC,GAAG,EAAE,CAAC;oBACf,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBAC1B,OAAO,IAAI,CAAC;gBAChB,CAAC,CAAA,CAAC,CAAC;YACP,CAAC;QACL,CAAC;KAAA;IACe,YAAY;;YAExB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,EAChC,CAAC;gBACG,IAAI,CAAC,aAAa,CAAC,CAAM,SAAS,EAAC,EAAE;oBAEjC,MAAM,QAAQ,GAAG,SAAS,EAAmB,CAAC;oBAC9C,QAAQ,CAAC,KAAK,EAAE,CAAC;oBACjB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBAC5B,OAAO,IAAI,CAAC;gBAChB,CAAC,CAAA,CAAC,CAAC;YACP,CAAC;QACL,CAAC;KAAA;IACe,YAAY;;YAExB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe;gBAC5B,MAAM,IAAI,CAAC,gBAAgB,CAAC,CAAM,QAAQ,EAAC,EAAE;oBAEzC,MAAM,QAAQ,CAAC,SAAS,EAAE,CAAC;gBAC/B,CAAC,CAAA,CAAC,CAAA;QACV,CAAC;KAAA;IAGM,aAAa,CAAC,IAAY;QAE7B,OAAO,IAAI,CAAC,SAAS,GAAG,GAAG,GAAG,IAAI,CAAC;IACvC,CAAC;IACM,cAAc,CAAC,IAAY;QAE9B,OAAO,IAAI,CAAC,UAAU,GAAG,GAAG,GAAG,IAAI,CAAC;IACxC,CAAC;IACM,YAAY,CAAC,IAAY;QAE5B,OAAO,IAAI,CAAC,QAAQ,GAAG,GAAG,GAAG,IAAI,CAAC;IACtC,CAAC;IACM,aAAa,CAAC,IAAY;QAE7B,OAAO,IAAI,CAAC,SAAS,GAAG,GAAG,GAAG,IAAI,CAAC;IACvC,CAAC;IACM,IAAI,CAAI,SAAiB;QAE5B,IAAI,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAC/C,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAM,CAAC;IAC9D,CAAC;IAGe,UAAU;;YAEtB,IAAI,UAAU,GAAG,MAAM,IAAI,CAAC,SAAS,CAAgC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;YAC1F,UAAU,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC;QAC9C,CAAC;KAAA;IACK,SAAS,CAAI,MAAkC;;YAEjD,IAAI,MAAM,GAAG,IAAI,qCAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC7C,MAAM,IAAI,CAAC,iBAAiB,CAAC,CAAM,SAAS,EAAC,EAAE;gBAE3C,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAW,EAAE,IAAW,CAAC,CAAC;gBACrD,IAAI,QAAQ,YAAY,+BAAc;oBAClC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,QAAa,CAAC;wBAChC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC;gBAC5D,OAAO,IAAI,CAAC;YAChB,CAAC,CAAA,EAAE,EAAE,CAAC,CAAC;YACP,IAAI,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;YAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EACtC,CAAC;gBACG,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;gBACxB,IAAI,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAiB,CAAC;gBACtD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;oBACf,IAAI,EAAE;wBACF,KAAK,EAAE,KAAK,CAAC,YAAY,EAAE;qBAC9B;oBACD,MAAM,EAAE,GAAG;iBACd,CAAC,CAAC;YACP,CAAC;YACD,MAAM,CAAC,KAAK,EAAE,CAAC;YACf,OAAO,MAAM,CAAC;QAClB,CAAC;KAAA;IAGK,QAAQ;;YAEV,IAAI,IAAI,CAAC,UAAU,EACnB,CAAC;gBACG,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;gBAChB,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;YAC5B,CAAC;YACD,OAAO,IAAI,CAAC,KAAK,CAAC;QACtB,CAAC;KAAA;IACD,aAAa,CAAC,UAA+B;QAEzC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IACjC,CAAC;IACD,OAAO,CAAC,IAAyB;QAE7B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IACD,aAAa;QAET,IAAI,CAAC,OAAO,CAAC;YACT,IAAI,EAAE,QAAQ;YACd,GAAG,EAAE,IAAI,CAAC,UAAU,GAAG,GAAG;YAC1B,IAAI,EAAE,kEAAkE;YACxE,WAAW,EAAE,+CAA+C;SAC/D,CAAC,CAAC;IACP,CAAC;IACD,YAAY;QAER,IAAI,CAAC,OAAO,CAAC;YACT,IAAI,EAAE,OAAO;YACb,GAAG,EAAE,IAAI,CAAC,SAAS,GAAG,GAAG;YACzB,IAAI,EAAE,2DAA2D;YACjE,WAAW,EAAE,8CAA8C;SAC9D,CAAC,CAAC;IACP,CAAC;IACD,eAAe;QAEX,IAAI,CAAC,OAAO,CAAC;YACT,IAAI,EAAE,SAAS;YACf,GAAG,EAAE,IAAI,CAAC,YAAY,GAAG,GAAG;YAC5B,IAAI,EAAE,uEAAuE;YAC7E,WAAW,EAAE,IAAI,CAAC,WAAW,GAAG,UAAU;SAC7C,CAAC,CAAC;IACP,CAAC;IAGK,IAAI;;YAEN,UAAU,CAAC,GAAG,EAAE;gBAEZ,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACpB,CAAC,EAAE,KAAK,CAAC,CAAC;YAEV,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,EAChC,CAAC;gBACG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;gBAC1B,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;gBACzB,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;gBACvB,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;gBACzB,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;YAC7B,CAAC;YAED,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;YAE1B,UAAU,CAAC,GAAG,EAAE;gBAEZ,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACpB,CAAC,EAAE,IAAI,CAAC,CAAC;QACb,CAAC;KAAA;IACe,YAAY;;YAExB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;YACrC,MAAM,IAAI,CAAC,gBAAgB,CAAC,CAAM,QAAQ,EAAC,EAAE;gBAEzC,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAC;YAC3B,CAAC,CAAA,CAAC,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,8BAA8B,CAAC,CAAC;QACxD,CAAC;KAAA;IACe,YAAY;8DAC1B,CAAC;KAAA;IACa,WAAW;;;YAEvB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe;gBAC5B,MAAA,IAAI,CAAC,MAAM,0CAAE,KAAK,EAAE,CAAC;QAC7B,CAAC;KAAA;IACe,SAAS;;YAErB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,EAChC,CAAC;gBACG,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAC1C,CAAC;oBACG,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBAC3B,IAAI,CAAC,IAAI,EAAE,CAAC;gBAChB,CAAC;YACL,CAAC;QACL,CAAC;KAAA;IACe,WAAW;;YAEvB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,EAChC,CAAC;gBACG,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAC5C,CAAC;oBACG,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;oBAC/B,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;gBACxB,CAAC;YACL,CAAC;QACL,CAAC;KAAA;IACe,WAAW;;QAE3B,CAAC;KAAA;CACJ;AAzjBD,0CAyjBC"}
1
+ {"version":3,"file":"BaseApplication.js","sourceRoot":"","sources":["../src/BaseApplication.ts"],"names":[],"mappings":"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"}
package/dist/BaseCron.js CHANGED
@@ -34,9 +34,9 @@ class BaseCron {
34
34
  if (this.info.expression && this.info.interval)
35
35
  throw new Error("Both experssion and interval should not be provided in getInfo function");
36
36
  else if (this.info.expression)
37
- this.app.logger.info(`Cron ${this.info.name} was schedued for ${this.info.expression}.`);
37
+ this.app.logger.info(`Cron - ${this.info.name} - was schedued for ${this.info.expression}.`);
38
38
  else if (this.info.interval)
39
- this.app.logger.info(`Cron ${this.info.name} was schedued for every ${this.info.interval}ms.`);
39
+ this.app.logger.info(`Cron - ${this.info.name} - was schedued for every ${this.info.interval}ms.`);
40
40
  else
41
41
  throw new Error("Either experssion or interval should be provided in getInfo function");
42
42
  if (this.info.runOnStart)
@@ -56,13 +56,15 @@ class BaseCron {
56
56
  }, this.info.interval);
57
57
  });
58
58
  }
59
+ if (this.log.enabled)
60
+ this.app.logger.info(`Cron - ${this.info.name} - was stopped.`);
59
61
  });
60
62
  }
61
63
  handler() {
62
64
  return __awaiter(this, void 0, void 0, function* () {
63
65
  if (this.log.enabled)
64
66
  if (this.log.onStarted)
65
- this.app.logger.info(`Cron ${this.info.name} was started.`);
67
+ this.app.logger.info(`Cron - ${this.info.name} - was started.`);
66
68
  try {
67
69
  if (this.running)
68
70
  this.timer.onStart();
@@ -76,7 +78,7 @@ class BaseCron {
76
78
  this.timer.onFinish();
77
79
  if (this.log.enabled)
78
80
  if (this.log.onFinished)
79
- this.app.logger.info(`Cron ${this.info.name} was finished in ${this.timer.duration}ms.`);
81
+ this.app.logger.info(`Cron - ${this.info.name} - was finished in ${this.timer.duration}ms.`);
80
82
  }
81
83
  catch (error) {
82
84
  this.app.logger.onCatchCritical(error);
@@ -91,6 +93,8 @@ class BaseCron {
91
93
  return __awaiter(this, void 0, void 0, function* () { });
92
94
  }
93
95
  stop() {
96
+ if (this.log.enabled)
97
+ this.app.logger.info(`Cron - ${this.info.name} - was being stopped.`);
94
98
  this.running = false;
95
99
  }
96
100
  }
@@ -1 +1 @@
1
- {"version":3,"file":"BaseCron.js","sourceRoot":"","sources":["../src/BaseCron.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BaseCron.js","sourceRoot":"","sources":["../src/BaseCron.ts"],"names":[],"mappings":"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"}
@@ -1,20 +1,18 @@
1
1
  import { BaseApplication } from './BaseApplication';
2
2
  import { IDatabase } from './IDatabase';
3
- export type BaseWorkerInfoType = {
4
- name: string;
5
- };
6
3
  export declare abstract class BaseWorker<D extends {
7
4
  [name: string]: IDatabase;
8
5
  }> {
6
+ name: string;
7
+ modes: string[];
9
8
  protected log: {
10
9
  enabled: boolean;
11
10
  onStarted: boolean;
12
11
  onFinished: boolean;
13
12
  };
14
13
  protected app: BaseApplication<D>;
15
- protected info: BaseWorkerInfoType;
16
- constructor(app: BaseApplication<D>);
17
- abstract getInfo(): BaseWorkerInfoType;
14
+ constructor(app: BaseApplication<D>, name: string, modes?: string[]);
15
+ abstract getName(): string;
18
16
  abstract start(): Promise<void>;
19
17
  abstract stop(): Promise<void>;
20
18
  }
@@ -2,7 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BaseWorker = void 0;
4
4
  class BaseWorker {
5
- constructor(app) {
5
+ constructor(app, name, modes = []) {
6
+ this.name = name;
7
+ this.modes = modes;
6
8
  this.log = {
7
9
  enabled: true,
8
10
  onStarted: true,
@@ -11,7 +13,6 @@ class BaseWorker {
11
13
  this.app = app;
12
14
  this.start = this.start.bind(this);
13
15
  this.stop = this.stop.bind(this);
14
- this.info = this.getInfo();
15
16
  }
16
17
  }
17
18
  exports.BaseWorker = BaseWorker;
@@ -1 +1 @@
1
- {"version":3,"file":"BaseWorker.js","sourceRoot":"","sources":["../src/BaseWorker.ts"],"names":[],"mappings":";;;AAQA,MAAsB,UAAU;IAc5B,YAAY,GAAuB;QAZzB,QAAG,GAIT;YACI,OAAO,EAAE,IAAI;YACb,SAAS,EAAE,IAAI;YACf,UAAU,EAAE,IAAI;SACnB,CAAC;QAMF,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEjC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;IAC/B,CAAC;CAKJ;AA1BD,gCA0BC"}
1
+ {"version":3,"file":"BaseWorker.js","sourceRoot":"","sources":["../src/BaseWorker.ts"],"names":[],"mappings":";;;AAGA,MAAsB,UAAU;IAa5B,YAAY,GAAuB,EAAS,IAAY,EAAS,QAAkB,EAAE;QAAzC,SAAI,GAAJ,IAAI,CAAQ;QAAS,UAAK,GAAL,KAAK,CAAe;QAX3E,QAAG,GAIT;YACI,OAAO,EAAE,IAAI;YACb,SAAS,EAAE,IAAI;YACf,UAAU,EAAE,IAAI;SACnB,CAAC;QAKF,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;CAKJ;AAvBD,gCAuBC"}
package/package.json CHANGED
@@ -8,7 +8,7 @@
8
8
  "framework": "npm",
9
9
  "application": "package",
10
10
  "private": false,
11
- "version": "1.4.133",
11
+ "version": "1.4.135",
12
12
  "author": "Amir Abolhasani",
13
13
  "license": "MIT",
14
14
  "main": "./dist/index.js",
@@ -40,7 +40,7 @@ export abstract class BaseApplication<D extends { [name: string]: IDatabase }>
40
40
  public databases!: D;
41
41
  public logger: ILogger;
42
42
  private crons: BaseCron<any>[] = [];
43
- private workers: BaseWorker<any>[] = [];
43
+ private workers: BaseWorker<D>[] = [];
44
44
  constructor(base_path: string)
45
45
  {
46
46
  this.base_path = base_path;
@@ -83,7 +83,7 @@ export abstract class BaseApplication<D extends { [name: string]: IDatabase }>
83
83
  public abstract getDatabases(): D;
84
84
  protected abstract getControllers(): any[];
85
85
  protected abstract getCrons(): any[];
86
- protected abstract getWorkers(): any[];
86
+ protected abstract getWorkers(): BaseWorker<D>[];
87
87
  protected abstract getTables(): any[];
88
88
 
89
89
  // For Each
@@ -149,33 +149,11 @@ export abstract class BaseApplication<D extends { [name: string]: IDatabase }>
149
149
  }
150
150
  }
151
151
  }
152
- protected async foreachWorker(handler: (generator: () => any) => Promise<boolean>)
153
- {
154
- let workers = this.getWorkers();
155
- for (let i = 0; i < workers.length; i++)
156
- {
157
- try
158
- {
159
- const Template = workers[i] as any;
160
- let con = await handler(() =>
161
- {
162
- if (ObjectService.isClass(Template))
163
- return new Template(this);
164
- return Template(this);
165
- });
166
- if (!con)
167
- break;
168
- } catch (error)
169
- {
170
- this.logger.onCatchCritical(error);
171
- }
172
- }
173
- }
174
152
 
175
153
  // Start
176
154
  async start()
177
155
  {
178
- this.logger.info(`Application was started in mode '${this.mode}'.`);
156
+ this.logger.info(`Application is being started in mode '${this.mode}'.`);
179
157
  await this.startCrashHandler();
180
158
  await this.startDatabase();
181
159
  if (!process.env.NAMIRASOFT_MUTE)
@@ -200,6 +178,7 @@ export abstract class BaseApplication<D extends { [name: string]: IDatabase }>
200
178
  {
201
179
  await this.saveSchema();
202
180
  }
181
+ this.logger.info(`Application was started in mode '${this.mode}'.`);
203
182
  }
204
183
  protected async startCrashHandler(): Promise<void>
205
184
  {
@@ -220,6 +199,7 @@ export abstract class BaseApplication<D extends { [name: string]: IDatabase }>
220
199
  }
221
200
  protected async startDatabase(): Promise<void>
222
201
  {
202
+ this.logger.success(`Databases are being connected.`);
223
203
  this.databases = this.getDatabases();
224
204
  await this.foreachIDatabase(async database =>
225
205
  {
@@ -230,7 +210,7 @@ export abstract class BaseApplication<D extends { [name: string]: IDatabase }>
230
210
  if (!process.env.NAMIRASOFT_MUTE)
231
211
  await database.seedBefore();
232
212
  });
233
- this.logger.success("Databases were connected.");
213
+ this.logger.success(`Databases were connected.`);
234
214
  }
235
215
  protected async onBeforeStart(): Promise<void>
236
216
  { }
@@ -238,6 +218,8 @@ export abstract class BaseApplication<D extends { [name: string]: IDatabase }>
238
218
  {
239
219
  if (!process.env.NAMIRASOFT_MUTE)
240
220
  {
221
+ const port = this.getPort();
222
+ this.logger.success(`HTTP Server is being listening on port ${port}`);
241
223
  this.express = express();
242
224
  // Express
243
225
  this.express.use(express.static('static'));
@@ -253,10 +235,9 @@ export abstract class BaseApplication<D extends { [name: string]: IDatabase }>
253
235
  // api routes
254
236
  this.express.use('/', await this.getRouter());
255
237
  // start server
256
- const port = this.getPort();
257
238
  this.server = this.express.listen(port, async () =>
258
239
  {
259
- this.logger.success(`Server is listening on port ${port}`);
240
+ this.logger.success(`HTTP Server is listening on port ${port}`);
260
241
  });
261
242
  }
262
243
  }
@@ -387,6 +368,7 @@ export abstract class BaseApplication<D extends { [name: string]: IDatabase }>
387
368
  {
388
369
  if (!process.env.NAMIRASOFT_MUTE)
389
370
  {
371
+ this.logger.success(`Crons are being created`);
390
372
  this.foreachCron(async generator =>
391
373
  {
392
374
  const template = generator() as BaseCron<D>;
@@ -394,19 +376,33 @@ export abstract class BaseApplication<D extends { [name: string]: IDatabase }>
394
376
  this.crons.push(template);
395
377
  return true;
396
378
  });
379
+ this.logger.success(`Crons were created`);
397
380
  }
398
381
  }
399
382
  protected async startWorkers(): Promise<void>
400
383
  {
401
384
  if (!process.env.NAMIRASOFT_MUTE)
402
385
  {
403
- this.foreachWorker(async generator =>
386
+ this.logger.success(`Workers are being started`);
387
+ let workers = this.getWorkers();
388
+ for (let i = 0; i < workers.length; i++)
404
389
  {
405
- const template = generator() as BaseWorker<D>;
406
- template.start();
407
- this.workers.push(template);
408
- return true;
409
- });
390
+ try
391
+ {
392
+ let worker = workers[i];
393
+ if (worker.modes.length == 0 || worker.modes.includes(this.mode))
394
+ {
395
+ this.logger.info(`Worker - ${worker.getName()} - is being started.`);
396
+ await worker.start();
397
+ this.workers.push(worker);
398
+ this.logger.info(`Worker - ${worker.getName()} - was started.`);
399
+ }
400
+ } catch (error)
401
+ {
402
+ this.logger.onCatchCritical(error);
403
+ }
404
+ }
405
+ this.logger.success(`Workers were started`);
410
406
  }
411
407
  }
412
408
  protected async onAfterStart(): Promise<void>
@@ -523,6 +519,7 @@ export abstract class BaseApplication<D extends { [name: string]: IDatabase }>
523
519
  // Stop
524
520
  async stop()
525
521
  {
522
+ this.logger.info(`Application is being stopped in mode '${this.mode}'.`);
526
523
  setTimeout(() =>
527
524
  {
528
525
  process.exit(0);
@@ -543,43 +540,55 @@ export abstract class BaseApplication<D extends { [name: string]: IDatabase }>
543
540
  {
544
541
  process.exit(0);
545
542
  }, 5000);
543
+ this.logger.success(`Application was stopped in mode '${this.mode}'.`);
546
544
  }
547
545
  protected async stopDatabase(): Promise<void>
548
546
  {
547
+ this.logger.info("Databases are being closed.");
549
548
  this.databases = this.getDatabases();
550
549
  await this.foreachIDatabase(async database =>
551
550
  {
552
551
  await database.close();
553
552
  });
554
- this.logger.success("Databases were disconnected.");
553
+ this.logger.success("Databases were closed.");
555
554
  }
556
555
  protected async onBeforeStop(): Promise<void>
557
556
  { }
558
557
  protected async stopExpress(): Promise<void>
559
558
  {
559
+ this.logger.info(`HTTP Server is being stopped.`);
560
560
  if (!process.env.NAMIRASOFT_MUTE)
561
561
  this.server?.close();
562
+ this.logger.success(`HTTP Server was stopped.`);
562
563
  }
563
564
  protected async stopCrons(): Promise<void>
564
565
  {
565
566
  if (!process.env.NAMIRASOFT_MUTE)
566
567
  {
568
+ this.logger.info(`Crons are being stopped.`);
567
569
  for (let i = 0; i < this.crons.length; i++)
568
570
  {
569
571
  const cron = this.crons[i];
570
572
  cron.stop();
571
573
  }
574
+ this.crons = [];
575
+ this.logger.success(`Crons were stopped.`);
572
576
  }
573
577
  }
574
578
  protected async stopWorkers(): Promise<void>
575
579
  {
576
580
  if (!process.env.NAMIRASOFT_MUTE)
577
581
  {
582
+ this.logger.info(`Workers are being stopped.`);
578
583
  for (let i = 0; i < this.workers.length; i++)
579
584
  {
580
585
  const worker = this.workers[i];
586
+ this.logger.info(`Worker - ${worker.getName()} - is being stopped.`);
581
587
  await worker.stop();
588
+ this.logger.info(`Worker - ${worker.getName()} - was stopped.`);
582
589
  }
590
+ this.workers = [];
591
+ this.logger.success(`Workers were stopped.`);
583
592
  }
584
593
  }
585
594
  protected async onAfterStop(): Promise<void>
package/src/BaseCron.ts CHANGED
@@ -45,9 +45,9 @@ export abstract class BaseCron<D extends { [name: string]: IDatabase }>
45
45
  if (this.info.expression && this.info.interval)
46
46
  throw new Error("Both experssion and interval should not be provided in getInfo function");
47
47
  else if (this.info.expression)
48
- this.app.logger.info(`Cron ${this.info.name} was schedued for ${this.info.expression}.`);
48
+ this.app.logger.info(`Cron - ${this.info.name} - was schedued for ${this.info.expression}.`);
49
49
  else if (this.info.interval)
50
- this.app.logger.info(`Cron ${this.info.name} was schedued for every ${this.info.interval}ms.`);
50
+ this.app.logger.info(`Cron - ${this.info.name} - was schedued for every ${this.info.interval}ms.`);
51
51
  else
52
52
  throw new Error("Either experssion or interval should be provided in getInfo function");
53
53
 
@@ -72,13 +72,15 @@ export abstract class BaseCron<D extends { [name: string]: IDatabase }>
72
72
  }, this.info.interval);
73
73
  })
74
74
  }
75
+ if (this.log.enabled)
76
+ this.app.logger.info(`Cron - ${this.info.name} - was stopped.`);
75
77
  }
76
78
 
77
79
  private async handler()
78
80
  {
79
81
  if (this.log.enabled)
80
82
  if (this.log.onStarted)
81
- this.app.logger.info(`Cron ${this.info.name} was started.`);
83
+ this.app.logger.info(`Cron - ${this.info.name} - was started.`);
82
84
  try
83
85
  {
84
86
  // preHandle
@@ -97,7 +99,7 @@ export abstract class BaseCron<D extends { [name: string]: IDatabase }>
97
99
 
98
100
  if (this.log.enabled)
99
101
  if (this.log.onFinished)
100
- this.app.logger.info(`Cron ${this.info.name} was finished in ${this.timer.duration}ms.`);
102
+ this.app.logger.info(`Cron - ${this.info.name} - was finished in ${this.timer.duration}ms.`);
101
103
  }
102
104
  catch (error: any)
103
105
  {
@@ -110,6 +112,8 @@ export abstract class BaseCron<D extends { [name: string]: IDatabase }>
110
112
  async postHandle(): Promise<void> { }
111
113
  public stop()
112
114
  {
115
+ if (this.log.enabled)
116
+ this.app.logger.info(`Cron - ${this.info.name} - was being stopped.`);
113
117
  this.running = false;
114
118
  }
115
119
  }
package/src/BaseWorker.ts CHANGED
@@ -1,11 +1,6 @@
1
1
  import { BaseApplication } from './BaseApplication';
2
2
  import { IDatabase } from './IDatabase';
3
3
 
4
- export type BaseWorkerInfoType =
5
- {
6
- name: string,
7
- }
8
-
9
4
  export abstract class BaseWorker<D extends { [name: string]: IDatabase }>
10
5
  {
11
6
  protected log: {
@@ -18,18 +13,15 @@ export abstract class BaseWorker<D extends { [name: string]: IDatabase }>
18
13
  onFinished: true
19
14
  };
20
15
  protected app: BaseApplication<D>;
21
- protected info!: BaseWorkerInfoType;
22
16
 
23
- constructor(app: BaseApplication<D>)
17
+ constructor(app: BaseApplication<D>, public name: string, public modes: string[] = [])
24
18
  {
25
19
  this.app = app;
26
20
  this.start = this.start.bind(this);
27
21
  this.stop = this.stop.bind(this);
28
-
29
- this.info = this.getInfo();
30
22
  }
31
23
 
32
- abstract getInfo(): BaseWorkerInfoType;
24
+ abstract getName(): string;
33
25
  abstract start(): Promise<void>;
34
26
  abstract stop(): Promise<void>;
35
27
  }