@webda/core 1.5.1 → 1.6.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (152) hide show
  1. package/lib/application.d.ts +0 -7
  2. package/lib/application.js +33 -26
  3. package/lib/application.js.map +1 -1
  4. package/lib/application.spec.js +23 -2
  5. package/lib/application.spec.js.map +1 -1
  6. package/lib/core.d.ts +20 -2
  7. package/lib/core.js +74 -34
  8. package/lib/core.js.map +1 -1
  9. package/lib/core.spec.js +5 -5
  10. package/lib/core.spec.js.map +1 -1
  11. package/lib/index.d.ts +12 -7
  12. package/lib/index.js +12 -7
  13. package/lib/index.js.map +1 -1
  14. package/lib/models/aclmodel.d.ts +63 -5
  15. package/lib/models/aclmodel.js +115 -12
  16. package/lib/models/aclmodel.js.map +1 -1
  17. package/lib/models/aclmodel.spec.js +65 -19
  18. package/lib/models/aclmodel.spec.js.map +1 -1
  19. package/lib/models/coremodel.d.ts +22 -6
  20. package/lib/models/coremodel.js +14 -6
  21. package/lib/models/coremodel.js.map +1 -1
  22. package/lib/models/coremodel.spec.js +0 -1
  23. package/lib/models/coremodel.spec.js.map +1 -1
  24. package/lib/models/ident.d.ts +5 -0
  25. package/lib/models/ident.js +6 -0
  26. package/lib/models/ident.js.map +1 -1
  27. package/lib/models/ident.spec.js +3 -0
  28. package/lib/models/ident.spec.js.map +1 -1
  29. package/lib/models/ownermodel.js +1 -2
  30. package/lib/models/ownermodel.js.map +1 -1
  31. package/lib/models/user.d.ts +30 -0
  32. package/lib/models/user.js +34 -2
  33. package/lib/models/user.js.map +1 -1
  34. package/lib/models/user.spec.js +18 -0
  35. package/lib/models/user.spec.js.map +1 -1
  36. package/lib/queues/filequeue.js +3 -2
  37. package/lib/queues/filequeue.js.map +1 -1
  38. package/lib/queues/memoryqueue.spec.js +0 -1
  39. package/lib/queues/memoryqueue.spec.js.map +1 -1
  40. package/lib/queues/pubsubservice.d.ts +27 -0
  41. package/lib/queues/pubsubservice.js +21 -0
  42. package/lib/queues/pubsubservice.js.map +1 -0
  43. package/lib/queues/queueservice.d.ts +3 -16
  44. package/lib/queues/queueservice.js +2 -13
  45. package/lib/queues/queueservice.js.map +1 -1
  46. package/lib/router.js +1 -1
  47. package/lib/router.js.map +1 -1
  48. package/lib/router.spec.js +1 -1
  49. package/lib/router.spec.js.map +1 -1
  50. package/lib/services/authentication.d.ts +35 -1
  51. package/lib/services/authentication.js +61 -8
  52. package/lib/services/authentication.js.map +1 -1
  53. package/lib/services/authentication.spec.js +17 -1
  54. package/lib/services/authentication.spec.js.map +1 -1
  55. package/lib/services/binary.js +15 -10
  56. package/lib/services/binary.js.map +1 -1
  57. package/lib/services/binary.spec.d.ts +1 -1
  58. package/lib/services/configuration.d.ts +9 -0
  59. package/lib/services/configuration.js +27 -2
  60. package/lib/services/configuration.js.map +1 -1
  61. package/lib/services/configuration.spec.js +19 -2
  62. package/lib/services/configuration.spec.js.map +1 -1
  63. package/lib/services/cron.spec.js +2 -2
  64. package/lib/services/cron.spec.js.map +1 -1
  65. package/lib/services/debugmailer.d.ts +10 -3
  66. package/lib/services/debugmailer.js +18 -4
  67. package/lib/services/debugmailer.js.map +1 -1
  68. package/lib/services/debugmailer.spec.js +1 -0
  69. package/lib/services/debugmailer.spec.js.map +1 -1
  70. package/lib/services/filebinary.spec.js +0 -1
  71. package/lib/services/filebinary.spec.js.map +1 -1
  72. package/lib/services/fileconfiguration.d.ts +7 -1
  73. package/lib/services/fileconfiguration.js +9 -0
  74. package/lib/services/fileconfiguration.js.map +1 -1
  75. package/lib/services/fileconfiguration.spec.js +81 -2
  76. package/lib/services/fileconfiguration.spec.js.map +1 -1
  77. package/lib/services/invitationservice.d.ts +196 -0
  78. package/lib/services/invitationservice.js +441 -0
  79. package/lib/services/invitationservice.js.map +1 -0
  80. package/lib/services/invitationservice.spec.d.ts +1 -0
  81. package/lib/services/invitationservice.spec.js +516 -0
  82. package/lib/services/invitationservice.spec.js.map +1 -0
  83. package/lib/services/kubernetesconfiguration.d.ts +6 -0
  84. package/lib/services/kubernetesconfiguration.js +13 -0
  85. package/lib/services/kubernetesconfiguration.js.map +1 -1
  86. package/lib/services/kubernetesconfiguration.spec.js +31 -7
  87. package/lib/services/kubernetesconfiguration.spec.js.map +1 -1
  88. package/lib/services/mailer.d.ts +93 -3
  89. package/lib/services/mailer.js +55 -11
  90. package/lib/services/mailer.js.map +1 -1
  91. package/lib/services/mailer.spec.js +30 -1
  92. package/lib/services/mailer.spec.js.map +1 -1
  93. package/lib/services/notificationservice.d.ts +74 -0
  94. package/lib/services/notificationservice.js +89 -0
  95. package/lib/services/notificationservice.js.map +1 -0
  96. package/lib/services/notificationservice.spec.d.ts +1 -0
  97. package/lib/services/notificationservice.spec.js +104 -0
  98. package/lib/services/notificationservice.spec.js.map +1 -0
  99. package/lib/services/oauth.spec.js +7 -10
  100. package/lib/services/oauth.spec.js.map +1 -1
  101. package/lib/services/service.d.ts +20 -4
  102. package/lib/services/service.js +35 -5
  103. package/lib/services/service.js.map +1 -1
  104. package/lib/services/service.spec.js +26 -0
  105. package/lib/services/service.spec.js.map +1 -1
  106. package/lib/stores/aggregator.d.ts +43 -0
  107. package/lib/stores/aggregator.js +106 -0
  108. package/lib/stores/aggregator.js.map +1 -0
  109. package/lib/stores/file.d.ts +1 -1
  110. package/lib/stores/file.js +5 -5
  111. package/lib/stores/file.js.map +1 -1
  112. package/lib/stores/file.spec.d.ts +3 -1
  113. package/lib/stores/file.spec.js +48 -19
  114. package/lib/stores/file.spec.js.map +1 -1
  115. package/lib/stores/mapper.d.ts +151 -0
  116. package/lib/stores/mapper.js +320 -0
  117. package/lib/stores/mapper.js.map +1 -0
  118. package/lib/stores/mapper.spec.d.ts +1 -0
  119. package/lib/stores/mapper.spec.js +174 -0
  120. package/lib/stores/mapper.spec.js.map +1 -0
  121. package/lib/stores/memory.js +0 -3
  122. package/lib/stores/memory.js.map +1 -1
  123. package/lib/stores/memory.spec.d.ts +3 -1
  124. package/lib/stores/memory.spec.js +12 -0
  125. package/lib/stores/memory.spec.js.map +1 -1
  126. package/lib/stores/store.d.ts +31 -110
  127. package/lib/stores/store.js +58 -286
  128. package/lib/stores/store.js.map +1 -1
  129. package/lib/stores/store.spec.d.ts +12 -0
  130. package/lib/stores/store.spec.js +116 -24
  131. package/lib/stores/store.spec.js.map +1 -1
  132. package/lib/test.d.ts +2 -1
  133. package/lib/test.js +21 -3
  134. package/lib/test.js.map +1 -1
  135. package/lib/utils/context.d.ts +12 -1
  136. package/lib/utils/context.js +21 -5
  137. package/lib/utils/context.js.map +1 -1
  138. package/lib/utils/context.spec.js +6 -1
  139. package/lib/utils/context.spec.js.map +1 -1
  140. package/lib/utils/cookie.d.ts +12 -0
  141. package/lib/utils/cookie.js +29 -19
  142. package/lib/utils/cookie.js.map +1 -1
  143. package/lib/utils/cookie.spec.js +0 -1
  144. package/lib/utils/cookie.spec.js.map +1 -1
  145. package/package.json +10 -8
  146. package/test/config-file-no-reload.json +70 -0
  147. package/test/config-file-reload.json +7 -1
  148. package/test/config-invitation.json +63 -0
  149. package/test/config-kube-reload.json +7 -1
  150. package/test/config.json +35 -23
  151. package/test/config.old-default.json +0 -16
  152. package/test/config.old.json +0 -16
@@ -449,13 +449,6 @@ export declare class Application {
449
449
  * Get current deployment name
450
450
  */
451
451
  getCurrentDeployment(): string;
452
- /**
453
- * Return if the application is a typescript application
454
- *
455
- * Webda will soon drop support for non javascript application
456
- * @deprecated
457
- */
458
- isTypescript(): boolean;
459
452
  /**
460
453
  * Compile the application if it is a Typescript application
461
454
  * Do nothing otherwise
@@ -21,6 +21,8 @@ const dateFormat = require("dateformat");
21
21
  const serializers_1 = require("./utils/serializers");
22
22
  const echo_1 = require("./services/echo");
23
23
  const cron_1 = require("./services/cron");
24
+ const invitationservice_1 = require("./services/invitationservice");
25
+ const notificationservice_1 = require("./services/notificationservice");
24
26
  /**
25
27
  * Implement the default way of retrieving schema
26
28
  */
@@ -105,36 +107,41 @@ class Application {
105
107
  */
106
108
  this.services = {
107
109
  // real service - modda
108
- "webda/authentication": index_1.Authentication,
109
- "webda/filestore": index_1.FileStore,
110
- "webda/memorystore": index_1.MemoryStore,
111
- "webda/filebinary": index_1.FileBinary,
112
- "webda/debugmailer": index_1.DebugMailer,
113
- "webda/mailer": index_1.Mailer,
110
+ "webda/aggregator": index_1.AggregatorService,
114
111
  "webda/asyncevents": index_1.EventService,
115
- "webda/resourceservice": index_1.ResourceService,
112
+ "webda/authentication": index_1.Authentication,
113
+ "webda/consolelogger": index_1.ConsoleLoggerService,
114
+ "webda/configurationservice": index_1.ConfigurationService,
116
115
  "webda/cronservice": cron_1.CronService,
116
+ "webda/debugmailer": index_1.DebugMailer,
117
117
  "webda/echoservice": echo_1.EchoService,
118
- "webda/versionservice": index_1.VersionService,
119
- "webda/memoryqueue": index_1.MemoryQueue,
120
- "webda/filequeue": index_1.FileQueue,
121
- "webda/configurationservice": index_1.ConfigurationService,
118
+ "webda/filebinary": index_1.FileBinary,
122
119
  "webda/fileconfigurationservice": index_1.FileConfigurationService,
120
+ "webda/filequeue": index_1.FileQueue,
121
+ "webda/filestore": index_1.FileStore,
122
+ "webda/invitationservice": invitationservice_1.default,
123
123
  "webda/kubernetesconfigurationservice": index_1.KubernetesConfigurationService,
124
- "webda/consolelogger": index_1.ConsoleLoggerService,
125
- "webda/memorylogger": index_1.MemoryLoggerService
124
+ "webda/mailer": index_1.Mailer,
125
+ "webda/mapper": index_1.MapperService,
126
+ "webda/memorylogger": index_1.MemoryLoggerService,
127
+ "webda/memoryqueue": index_1.MemoryQueue,
128
+ "webda/memorystore": index_1.MemoryStore,
129
+ "webda/multinotification": notificationservice_1.default,
130
+ "webda/resourceservice": index_1.ResourceService,
131
+ "webda/versionservice": index_1.VersionService
126
132
  };
127
133
  /**
128
134
  * Models type registry
129
135
  */
130
136
  this.models = {
131
137
  // Models
138
+ "webda/aclmodel": index_1.AclModel,
132
139
  "webda/coremodel": index_1.CoreModel,
133
140
  "webda/ident": index_1.Ident,
134
141
  "webda/user": index_1.User,
135
142
  "webdacore/context": index_1.Context,
136
- "webdacore/sessioncookie": index_1.SessionCookie,
137
- "webdacore/securecookie": index_1.SecureCookie
143
+ "webdacore/securecookie": index_1.SecureCookie,
144
+ "webdacore/sessioncookie": index_1.SessionCookie
138
145
  };
139
146
  /**
140
147
  * Flag if application has been compiled already
@@ -733,15 +740,6 @@ class Application {
733
740
  getCurrentDeployment() {
734
741
  return this.currentDeployment;
735
742
  }
736
- /**
737
- * Return if the application is a typescript application
738
- *
739
- * Webda will soon drop support for non javascript application
740
- * @deprecated
741
- */
742
- isTypescript() {
743
- return fs.existsSync(`${this.appPath}/tsconfig.json`);
744
- }
745
743
  /**
746
744
  * Compile the application if it is a Typescript application
747
745
  * Do nothing otherwise
@@ -751,9 +749,18 @@ class Application {
751
749
  return;
752
750
  }
753
751
  // exec typescript
754
- if (this.isTypescript()) {
752
+ this.log("DEBUG", "Compiling application");
753
+ try {
755
754
  (0, child_process_1.execSync)(`tsc -p ${this.appPath}`);
756
755
  }
756
+ catch (err) {
757
+ (err.stdout.toString() + err.stderr.toString())
758
+ .split("\n")
759
+ .filter(l => l !== "")
760
+ .forEach(l => {
761
+ this.log("ERROR", "tsc:", l);
762
+ });
763
+ }
757
764
  this.compiled = true;
758
765
  }
759
766
  /**
@@ -820,7 +827,7 @@ class Application {
820
827
  if (fs.existsSync(absPath) && fs.lstatSync(absPath).isDirectory()) {
821
828
  absPath += "/**/*.js";
822
829
  }
823
- glob.sync(absPath).forEach(this.loadJavascriptFile.bind(this));
830
+ glob.sync(absPath).forEach(f => this.loadJavascriptFile(f));
824
831
  });
825
832
  let moduleFile = path.join(this.appPath, "webda.module.json");
826
833
  let current = "";
@@ -1 +1 @@
1
- {"version":3,"file":"application.js","sourceRoot":"","sources":["../src/application.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"application.js","sourceRoot":"","sources":["../src/application.ts"],"names":[],"mappings":"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"}
@@ -23,6 +23,7 @@ const index_1 = require("./index");
23
23
  const test_1 = require("./test");
24
24
  const fs_extra_1 = require("fs-extra");
25
25
  const child_process_1 = require("child_process");
26
+ const sinon = require("sinon");
26
27
  let ApplicationTest = class ApplicationTest extends test_1.WebdaTest {
27
28
  before() {
28
29
  const _super = Object.create(null, {
@@ -66,7 +67,6 @@ let ApplicationTest = class ApplicationTest extends test_1.WebdaTest {
66
67
  assert.strictEqual(this.sampleApp.getAppPath("lib"), path.join(__dirname, "..", "..", "..", "sample-app", "lib"));
67
68
  }
68
69
  compile() {
69
- assert.strictEqual(this.sampleApp.isTypescript(), true);
70
70
  this.cleanSampleApp();
71
71
  this.sampleApp.preventCompilation(true);
72
72
  this.sampleApp.compile();
@@ -83,6 +83,24 @@ let ApplicationTest = class ApplicationTest extends test_1.WebdaTest {
83
83
  // Should not recompile as it should be cached
84
84
  assert.strictEqual(fs.existsSync(this.sampleApp.getAppPath("lib")), false);
85
85
  }
86
+ compileError() {
87
+ this.sampleApp.preventCompilation(false);
88
+ const lines = [];
89
+ sinon.stub(this.sampleApp, "log").callsFake((...args) => lines.push(args));
90
+ const testFile = this.sampleApp.getAppPath("src/bouzouf.ts");
91
+ fs.writeFileSync(testFile, "bad TS");
92
+ try {
93
+ this.sampleApp.compile();
94
+ // assert files are there
95
+ assert.deepStrictEqual(lines, [
96
+ ["DEBUG", "Compiling application"],
97
+ ["ERROR", "tsc:", "../../sample-app/src/bouzouf.ts(1,1): error TS1434: Unexpected keyword or identifier."]
98
+ ]);
99
+ }
100
+ finally {
101
+ fs.removeSync(testFile);
102
+ }
103
+ }
86
104
  generateModule() {
87
105
  this.cleanSampleApp();
88
106
  this.sampleApp.generateModule();
@@ -277,7 +295,7 @@ let ApplicationTest = class ApplicationTest extends test_1.WebdaTest {
277
295
  // Basic with no tags
278
296
  index_1.CacheService.clearAllCache();
279
297
  let infos = app.getGitInformation();
280
- assert.strictEqual(infos.branch, "master");
298
+ assert.ok(infos.branch.match(/(master)|(main)/) !== null);
281
299
  assert.strictEqual(infos.tag, "");
282
300
  assert.strictEqual(infos.tags.length, 0);
283
301
  assert.ok(infos.version.match(/0\.1\.1\+\d+/) !== null);
@@ -328,6 +346,9 @@ __decorate([
328
346
  __decorate([
329
347
  mocha_1.test
330
348
  ], ApplicationTest.prototype, "compile", null);
349
+ __decorate([
350
+ mocha_1.test
351
+ ], ApplicationTest.prototype, "compileError", null);
331
352
  __decorate([
332
353
  mocha_1.test
333
354
  ], ApplicationTest.prototype, "generateModule", null);
@@ -1 +1 @@
1
- {"version":3,"file":"application.spec.js","sourceRoot":"","sources":["../src/application.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"application.spec.js","sourceRoot":"","sources":["../src/application.spec.ts"],"names":[],"mappings":"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"}
package/lib/core.d.ts CHANGED
@@ -196,6 +196,10 @@ export interface Configuration {
196
196
  maxAge: number;
197
197
  path: string;
198
198
  };
199
+ /**
200
+ * Read from the configuration service before init
201
+ */
202
+ configurationService?: string;
199
203
  /**
200
204
  * Application salt
201
205
  */
@@ -479,6 +483,9 @@ export declare class Core extends events.EventEmitter {
479
483
  updateContextWithRoute(ctx: Context): boolean;
480
484
  /**
481
485
  * Flush the headers to the response, no more header modification is possible after that
486
+ *
487
+ * This method should set the `context.setFlushedHeaders()` and use of `context.hasFlushedHeaders()`
488
+ *
482
489
  * @abstract
483
490
  */
484
491
  flushHeaders(context: Context): void;
@@ -505,7 +512,18 @@ export declare class Core extends events.EventEmitter {
505
512
  * @returns
506
513
  */
507
514
  reinit(updates: any): Promise<void>;
508
- protected getServiceParams(service: string): any;
515
+ /**
516
+ * Get a full resolved service parameter
517
+ *
518
+ * @param service
519
+ * @param configuration
520
+ * @returns
521
+ */
522
+ getServiceParams(service: string, configuration?: {
523
+ parameters?: any;
524
+ services: any;
525
+ }): any;
526
+ protected createService(services: any, service: string): void;
509
527
  /**
510
528
  * @hidden
511
529
  *
@@ -521,7 +539,7 @@ export declare class Core extends events.EventEmitter {
521
539
  */
522
540
  protected autoConnectServices(): void;
523
541
  protected jsonFilter(key: string, value: any): any;
524
- protected initStatics(): void;
542
+ initStatics(): void;
525
543
  /**
526
544
  * Init Routes declare by @Route annotation
527
545
  */
package/lib/core.js CHANGED
@@ -188,7 +188,6 @@ class Core extends events.EventEmitter {
188
188
  if (this.configuration.parameters.website) {
189
189
  this.registerRequestFilter(new WebsiteOriginFilter(this.configuration.parameters.website));
190
190
  }
191
- this.initStatics();
192
191
  }
193
192
  /**
194
193
  * Get absolute url with subpath
@@ -277,10 +276,34 @@ class Core extends events.EventEmitter {
277
276
  * It will resolve Services init method and autolink
278
277
  */
279
278
  init() {
279
+ var _a, _b;
280
+ var _c, _d;
280
281
  return __awaiter(this, void 0, void 0, function* () {
281
282
  if (this._init) {
282
283
  return this._init;
283
284
  }
285
+ if (this.configuration.parameters.configurationService) {
286
+ try {
287
+ this.log("INFO", "Create and init ConfigurationService", this.configuration.parameters.configurationService);
288
+ // Create the configuration service
289
+ this.createService(this.configuration.services, this.configuration.parameters.configurationService);
290
+ let cfg = yield this.getService(this.configuration.parameters.configurationService).initConfiguration();
291
+ if (cfg.webda) {
292
+ (_a = (_c = cfg.webda).parameters) !== null && _a !== void 0 ? _a : (_c.parameters = {});
293
+ (_b = (_d = cfg.webda).services) !== null && _b !== void 0 ? _b : (_d.services = {});
294
+ this.configuration.parameters = Object.assign(Object.assign({}, this.configuration.parameters), cfg.webda.parameters);
295
+ for (let i in this.configuration.services) {
296
+ this.configuration.services[i] = Object.assign(Object.assign({}, deepmerge.all([this.configuration.services[i], cfg.webda.services[i] || {}])), { type: this.configuration.services[i].type });
297
+ }
298
+ }
299
+ yield this.getService(this.configuration.parameters.configurationService).init();
300
+ }
301
+ catch (err) {
302
+ this.log("ERROR", "Cannot use ConfigurationService", this.configuration.parameters.configurationService, err);
303
+ this.services = {};
304
+ }
305
+ }
306
+ this.initStatics();
284
307
  this.reinitResolvedRoutes();
285
308
  this.log("TRACE", "Create Webda init promise");
286
309
  this._init = new Promise((resolve) => __awaiter(this, void 0, void 0, function* () {
@@ -500,13 +523,15 @@ class Core extends events.EventEmitter {
500
523
  if (route === undefined) {
501
524
  return false;
502
525
  }
503
- var executor = this.getService(route.executor);
504
526
  ctx.setRoute(Object.assign(Object.assign({}, this.configuration), route));
505
- ctx.setExecutor(executor);
527
+ ctx.setExecutor(this.getService(route.executor));
506
528
  return true;
507
529
  }
508
530
  /**
509
531
  * Flush the headers to the response, no more header modification is possible after that
532
+ *
533
+ * This method should set the `context.setFlushedHeaders()` and use of `context.hasFlushedHeaders()`
534
+ *
510
535
  * @abstract
511
536
  */
512
537
  flushHeaders(context) {
@@ -570,11 +595,52 @@ class Core extends events.EventEmitter {
570
595
  yield Promise.all(inits);
571
596
  });
572
597
  }
573
- getServiceParams(service) {
574
- var params = Object.assign(Object.assign({}, this.configuration.parameters), this.configuration.services[service]);
598
+ /**
599
+ * Get a full resolved service parameter
600
+ *
601
+ * @param service
602
+ * @param configuration
603
+ * @returns
604
+ */
605
+ getServiceParams(service, configuration = { parameters: {}, services: {} }) {
606
+ var _a, _b, _c;
607
+ var _d;
608
+ (_a = configuration.parameters) !== null && _a !== void 0 ? _a : (configuration.parameters = {});
609
+ (_b = configuration.services) !== null && _b !== void 0 ? _b : (configuration.services = {});
610
+ (_c = (_d = configuration.services)[service]) !== null && _c !== void 0 ? _c : (_d[service] = {});
611
+ const params = deepmerge.all([
612
+ this.configuration.parameters || {},
613
+ configuration.parameters || {},
614
+ this.configuration.services[service] || {},
615
+ configuration.services[service] || {}
616
+ ]);
575
617
  delete params.require;
576
618
  return params;
577
619
  }
620
+ createService(services, service) {
621
+ var type = services[service].type;
622
+ if (type === undefined) {
623
+ type = service;
624
+ }
625
+ var serviceConstructor = undefined;
626
+ try {
627
+ serviceConstructor = this.application.getService(type);
628
+ }
629
+ catch (ex) {
630
+ this.log("ERROR", `Create service ${service}(${type}) failed ${ex.message}`);
631
+ this.log("TRACE", ex.stack);
632
+ return;
633
+ }
634
+ try {
635
+ this.log("TRACE", "Constructing service", service);
636
+ this.services[service.toLowerCase()] = new serviceConstructor(this, service, this.getServiceParams(service));
637
+ }
638
+ catch (err) {
639
+ this.log("ERROR", "Cannot create service", service, err);
640
+ // @ts-ignore
641
+ this.failedServices[service.toLowerCase()] = { _createException: err };
642
+ }
643
+ }
578
644
  /**
579
645
  * @hidden
580
646
  *
@@ -599,28 +665,7 @@ class Core extends events.EventEmitter {
599
665
  if (excludes.indexOf(service.toLowerCase()) >= 0) {
600
666
  continue;
601
667
  }
602
- var type = services[service].type;
603
- if (type === undefined) {
604
- type = service;
605
- }
606
- var serviceConstructor = undefined;
607
- try {
608
- serviceConstructor = this.application.getService(type);
609
- }
610
- catch (ex) {
611
- this.log("ERROR", `Create service ${service}(${type}) failed ${ex.message}`);
612
- this.log("TRACE", ex.stack);
613
- continue;
614
- }
615
- try {
616
- this.log("TRACE", "Constructing service", service);
617
- this.services[service.toLowerCase()] = new serviceConstructor(this, service, this.getServiceParams(service));
618
- }
619
- catch (err) {
620
- this.log("ERROR", "Cannot create service", service, err);
621
- // @ts-ignore
622
- this.failedServices[service.toLowerCase()] = { _createException: err };
623
- }
668
+ this.createService(services, service);
624
669
  }
625
670
  this.autoConnectServices();
626
671
  this.emit("Webda.Create.Services", this.services);
@@ -662,7 +707,7 @@ class Core extends events.EventEmitter {
662
707
  }
663
708
  initStatics() {
664
709
  if (this.configuration.services !== undefined) {
665
- this.createServices();
710
+ this.createServices(Object.keys(this.services));
666
711
  }
667
712
  this.router.remapRoutes();
668
713
  this._initiated = true;
@@ -757,12 +802,7 @@ class Core extends events.EventEmitter {
757
802
  */
758
803
  checkRequest(ctx) {
759
804
  return __awaiter(this, void 0, void 0, function* () {
760
- for (let i in this._requestFilters) {
761
- if (yield this._requestFilters[i].checkRequest(ctx)) {
762
- return true;
763
- }
764
- }
765
- return false;
805
+ return (yield Promise.all(this._requestFilters.map(filter => filter.checkRequest(ctx)))).reduce((prev, cur) => prev || cur);
766
806
  });
767
807
  }
768
808
  exportOpenAPI(skipHidden = true) {