@golemio/fcd 1.1.2 → 1.1.3-dev.856055436
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.
- package/dist/input-gateway/AbstractFcdController.d.ts +7 -0
- package/dist/input-gateway/{FloatingCarDataController.js → AbstractFcdController.js} +9 -10
- package/dist/input-gateway/AbstractFcdController.js.map +1 -0
- package/dist/input-gateway/FcdPragueController.d.ts +5 -0
- package/dist/input-gateway/FcdPragueController.js +14 -0
- package/dist/input-gateway/FcdPragueController.js.map +1 -0
- package/dist/input-gateway/FcdRegionsController.d.ts +5 -0
- package/dist/input-gateway/FcdRegionsController.js +14 -0
- package/dist/input-gateway/FcdRegionsController.js.map +1 -0
- package/dist/input-gateway/FloatingCarDataRouter.js +20 -8
- package/dist/input-gateway/FloatingCarDataRouter.js.map +1 -1
- package/package.json +1 -1
- package/dist/input-gateway/FloatingCarDataController.d.ts +0 -5
- package/dist/input-gateway/FloatingCarDataController.js.map +0 -1
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { BaseController } from "@golemio/core/dist/input-gateway/controllers/BaseController";
|
|
2
|
+
import { IValidator } from "@golemio/core/dist/shared/golemio-validator";
|
|
3
|
+
export declare abstract class AbstractFcdController extends BaseController {
|
|
4
|
+
protected abstract saveQueueKey: string;
|
|
5
|
+
constructor(validator: IValidator);
|
|
6
|
+
processData: (data: any) => Promise<void>;
|
|
7
|
+
}
|
|
@@ -9,18 +9,17 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.
|
|
13
|
-
const input_gateway_1 = require("@golemio/core/dist/input-gateway");
|
|
14
|
-
const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
|
|
15
|
-
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
12
|
+
exports.AbstractFcdController = void 0;
|
|
16
13
|
const _sch_1 = require("../schema-definitions");
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
14
|
+
const BaseController_1 = require("@golemio/core/dist/input-gateway/controllers/BaseController");
|
|
15
|
+
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
16
|
+
class AbstractFcdController extends BaseController_1.BaseController {
|
|
17
|
+
constructor(validator) {
|
|
18
|
+
super(_sch_1.FCD.name, validator);
|
|
20
19
|
this.processData = (data) => __awaiter(this, void 0, void 0, function* () {
|
|
21
20
|
try {
|
|
22
21
|
yield this.validator.Validate(data);
|
|
23
|
-
yield this.sendMessageToExchange("input." + this.queuePrefix + ".
|
|
22
|
+
yield this.sendMessageToExchange("input." + this.queuePrefix + "." + this.saveQueueKey, JSON.stringify(data.d2LogicalModel), {
|
|
24
23
|
persistent: true,
|
|
25
24
|
});
|
|
26
25
|
}
|
|
@@ -35,5 +34,5 @@ class FloatingCarDataController extends input_gateway_1.BaseController {
|
|
|
35
34
|
});
|
|
36
35
|
}
|
|
37
36
|
}
|
|
38
|
-
exports.
|
|
39
|
-
//# sourceMappingURL=
|
|
37
|
+
exports.AbstractFcdController = AbstractFcdController;
|
|
38
|
+
//# sourceMappingURL=AbstractFcdController.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AbstractFcdController.js","sourceRoot":"","sources":["../../src/input-gateway/AbstractFcdController.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,gDAA2B;AAC3B,gGAA6F;AAC7F,6EAAuE;AAGvE,MAAsB,qBAAsB,SAAQ,+BAAc;IAG9D,YAAY,SAAqB;QAC7B,KAAK,CAAC,UAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAGxB,gBAAW,GAAG,CAAO,IAAS,EAAiB,EAAE;YACpD,IAAI;gBACA,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAEpC,MAAM,IAAI,CAAC,qBAAqB,CAC5B,QAAQ,GAAG,IAAI,CAAC,WAAW,GAAG,GAAG,GAAG,IAAI,CAAC,YAAY,EACrD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,EACnC;oBACI,UAAU,EAAE,IAAI;iBACnB,CACJ,CAAC;aACL;YAAC,OAAO,GAAG,EAAE;gBACV,IAAI,GAAG,YAAY,4BAAW,EAAE;oBAC5B,MAAM,GAAG,CAAC;iBACb;qBAAM;oBACH,MAAM,IAAI,4BAAW,CAAC,oCAAoC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;iBAC1F;aACJ;QACL,CAAC,CAAA,CAAC;IApBF,CAAC;CAqBJ;AA1BD,sDA0BC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FcdPragueController = void 0;
|
|
4
|
+
const _sch_1 = require("../schema-definitions");
|
|
5
|
+
const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
|
|
6
|
+
const AbstractFcdController_1 = require("./AbstractFcdController");
|
|
7
|
+
class FcdPragueController extends AbstractFcdController_1.AbstractFcdController {
|
|
8
|
+
constructor() {
|
|
9
|
+
super(new golemio_validator_1.JSONSchemaValidator("FcdPragueInputValidation", _sch_1.FCD.fcd_info.datasourceSchema));
|
|
10
|
+
this.saveQueueKey = "saveFloatingCarData";
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
exports.FcdPragueController = FcdPragueController;
|
|
14
|
+
//# sourceMappingURL=FcdPragueController.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FcdPragueController.js","sourceRoot":"","sources":["../../src/input-gateway/FcdPragueController.ts"],"names":[],"mappings":";;;AAAA,gDAA2B;AAC3B,mFAAkF;AAClF,mEAAgE;AAEhE,MAAa,mBAAoB,SAAQ,6CAAqB;IAG1D;QACI,KAAK,CAAC,IAAI,uCAAmB,CAAC,0BAA0B,EAAE,UAAG,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC;QAHpF,iBAAY,GAAG,qBAAqB,CAAC;IAI/C,CAAC;CACJ;AAND,kDAMC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FcdRegionsController = void 0;
|
|
4
|
+
const _sch_1 = require("../schema-definitions");
|
|
5
|
+
const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
|
|
6
|
+
const AbstractFcdController_1 = require("./AbstractFcdController");
|
|
7
|
+
class FcdRegionsController extends AbstractFcdController_1.AbstractFcdController {
|
|
8
|
+
constructor() {
|
|
9
|
+
super(new golemio_validator_1.JSONSchemaValidator("FcdRegionsInputValidation", _sch_1.FCD.fcd_info.datasourceSchema));
|
|
10
|
+
this.saveQueueKey = "saveRegionsData";
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
exports.FcdRegionsController = FcdRegionsController;
|
|
14
|
+
//# sourceMappingURL=FcdRegionsController.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FcdRegionsController.js","sourceRoot":"","sources":["../../src/input-gateway/FcdRegionsController.ts"],"names":[],"mappings":";;;AAAA,gDAA2B;AAC3B,mFAAkF;AAClF,mEAAgE;AAEhE,MAAa,oBAAqB,SAAQ,6CAAqB;IAG3D;QACI,KAAK,CAAC,IAAI,uCAAmB,CAAC,2BAA2B,EAAE,UAAG,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC;QAHrF,iBAAY,GAAG,iBAAiB,CAAC;IAI3C,CAAC;CACJ;AAND,oDAMC"}
|
|
@@ -10,31 +10,43 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.floatingCarDataRouter = void 0;
|
|
13
|
-
const
|
|
14
|
-
const
|
|
13
|
+
const FcdPragueController_1 = require("./FcdPragueController");
|
|
14
|
+
const LoggerEmitter_1 = require("@golemio/core/dist/helpers/logger/LoggerEmitter");
|
|
15
|
+
const CheckContentTypeMiddleware_1 = require("@golemio/core/dist/input-gateway/helpers/CheckContentTypeMiddleware");
|
|
16
|
+
const ioc_1 = require("@golemio/core/dist/input-gateway/ioc");
|
|
15
17
|
const express_1 = require("@golemio/core/dist/shared/express");
|
|
18
|
+
const FcdRegionsController_1 = require("./FcdRegionsController");
|
|
16
19
|
class FloatingCarDataRouter {
|
|
17
20
|
constructor() {
|
|
21
|
+
this.router = (0, express_1.Router)();
|
|
22
|
+
this.fcdPragueController = new FcdPragueController_1.FcdPragueController();
|
|
23
|
+
this.fcdRegionsController = new FcdRegionsController_1.FcdRegionsController();
|
|
18
24
|
this.initRoutes = () => {
|
|
19
|
-
this.router.post("/fcd-info", (0,
|
|
25
|
+
this.router.post("/fcd-info", (0, CheckContentTypeMiddleware_1.checkContentTypeMiddleware)(["text/xml", "application/xml"]), this.fcdPrague);
|
|
26
|
+
this.router.post("/fcd-info-regions", (0, CheckContentTypeMiddleware_1.checkContentTypeMiddleware)(["text/xml", "application/xml"]), this.fcdRegions);
|
|
20
27
|
};
|
|
21
|
-
this.
|
|
28
|
+
this.fcdPrague = (req, res, next) => __awaiter(this, void 0, void 0, function* () {
|
|
29
|
+
yield this.floatingCarData(this.fcdPragueController, req, res, next);
|
|
30
|
+
});
|
|
31
|
+
this.fcdRegions = (req, res, next) => __awaiter(this, void 0, void 0, function* () {
|
|
32
|
+
yield this.floatingCarData(this.fcdRegionsController, req, res, next);
|
|
33
|
+
});
|
|
34
|
+
this.floatingCarData = (controller, req, res, next) => __awaiter(this, void 0, void 0, function* () {
|
|
22
35
|
try {
|
|
23
|
-
yield
|
|
36
|
+
yield controller.processData(req.body);
|
|
24
37
|
const numberOfRecords = (JSON.stringify(req.body.d2LogicalModel.payloadPublication.elaboratedData || {}).match(/basicData/g) || []).length;
|
|
25
38
|
const metrics = {
|
|
26
39
|
numberOfRecords,
|
|
27
40
|
req,
|
|
28
41
|
};
|
|
29
|
-
|
|
42
|
+
this.loggerEmitter.emit(LoggerEmitter_1.LoggerEventType.NumberOfRecords, metrics);
|
|
30
43
|
res.sendStatus(204);
|
|
31
44
|
}
|
|
32
45
|
catch (err) {
|
|
33
46
|
next(err);
|
|
34
47
|
}
|
|
35
48
|
});
|
|
36
|
-
this.
|
|
37
|
-
this.floatingCarDataController = new FloatingCarDataController_1.FloatingCarDataController();
|
|
49
|
+
this.loggerEmitter = ioc_1.InputGatewayContainer.resolve(ioc_1.ContainerToken.LoggerEmitter);
|
|
38
50
|
this.initRoutes();
|
|
39
51
|
}
|
|
40
52
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FloatingCarDataRouter.js","sourceRoot":"","sources":["../../src/input-gateway/FloatingCarDataRouter.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"FloatingCarDataRouter.js","sourceRoot":"","sources":["../../src/input-gateway/FloatingCarDataRouter.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+DAA8D;AAC9D,mFAAiG;AAEjG,oHAAiH;AACjH,8DAA6F;AAC7F,+DAA4F;AAE5F,iEAA8D;AAE9D,MAAM,qBAAqB;IAOvB;QANO,WAAM,GAAW,IAAA,gBAAM,GAAE,CAAC;QAGzB,wBAAmB,GAAG,IAAI,yCAAmB,EAAE,CAAC;QAChD,yBAAoB,GAAG,IAAI,2CAAoB,EAAE,CAAC;QAOlD,eAAU,GAAG,GAAS,EAAE;YAC5B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,IAAA,uDAA0B,EAAC,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;YAC3G,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAA,uDAA0B,EAAC,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QACxH,CAAC,CAAC;QAEM,cAAS,GAAG,CAAO,GAAY,EAAE,GAAa,EAAE,IAAkB,EAAiB,EAAE;YACzF,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,mBAAmB,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;QACzE,CAAC,CAAA,CAAC;QAEM,eAAU,GAAG,CAAO,GAAY,EAAE,GAAa,EAAE,IAAkB,EAAiB,EAAE;YAC1F,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,oBAAoB,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;QAC1E,CAAC,CAAA,CAAC;QAEM,oBAAe,GAAG,CACtB,UAAiC,EACjC,GAAY,EACZ,GAAa,EACb,IAAkB,EACL,EAAE;YACf,IAAI;gBACA,MAAM,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAEvC,MAAM,eAAe,GAAG,CACpB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,CAC5G,CAAC,MAAM,CAAC;gBAET,MAAM,OAAO,GAA6B;oBACtC,eAAe;oBACf,GAAG;iBACN,CAAC;gBACF,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,+BAAe,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;gBAElE,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;aACvB;YAAC,OAAO,GAAG,EAAE;gBACV,IAAI,CAAC,GAAG,CAAC,CAAC;aACb;QACL,CAAC,CAAA,CAAC;QAxCE,IAAI,CAAC,aAAa,GAAG,2BAAqB,CAAC,OAAO,CAAgB,oBAAc,CAAC,aAAa,CAAC,CAAC;QAChG,IAAI,CAAC,UAAU,EAAE,CAAC;IACtB,CAAC;CAuCJ;AAED,MAAM,qBAAqB,GAAG,IAAI,qBAAqB,EAAE,CAAC,MAAM,CAAC;AAExD,sDAAqB"}
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"FloatingCarDataController.js","sourceRoot":"","sources":["../../src/input-gateway/FloatingCarDataController.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oEAAkE;AAClE,mFAAkF;AAClF,6EAAuE;AACvE,gDAA2B;AAE3B,MAAa,yBAA0B,SAAQ,8BAAc;IACzD;QACI,KAAK,CAAC,UAAG,CAAC,IAAI,EAAE,IAAI,uCAAmB,CAAC,UAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,UAAG,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC;QAGxF,gBAAW,GAAG,CAAO,IAAS,EAAiB,EAAE;YACpD,IAAI;gBACA,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAEpC,MAAM,IAAI,CAAC,qBAAqB,CAC5B,QAAQ,GAAG,IAAI,CAAC,WAAW,GAAG,sBAAsB,EACpD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,EACnC;oBACI,UAAU,EAAE,IAAI;iBACnB,CACJ,CAAC;aACL;YAAC,OAAO,GAAG,EAAE;gBACV,IAAI,GAAG,YAAY,4BAAW,EAAE;oBAC5B,MAAM,GAAG,CAAC;iBACb;qBAAM;oBACH,MAAM,IAAI,4BAAW,CAAC,oCAAoC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;iBAC1F;aACJ;QACL,CAAC,CAAA,CAAC;IApBF,CAAC;CAqBJ;AAxBD,8DAwBC"}
|