@golemio/fcd 1.2.4 → 1.2.5-dev.1262829891
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/db/example/sql_dump.sql +7 -0
- package/db/migrations/postgresql/20240419120732-fcd-new-view.js +53 -0
- package/db/migrations/postgresql/sqls/20240419120732-fcd-new-view-down.sql +2 -0
- package/db/migrations/postgresql/sqls/20240419120732-fcd-new-view-up.sql +78 -0
- package/dist/integration-engine/index.d.ts +2 -2
- package/dist/integration-engine/index.js +3 -3
- package/dist/integration-engine/index.js.map +1 -1
- package/dist/integration-engine/ioc/Di.d.ts +3 -0
- package/dist/integration-engine/ioc/Di.js +29 -0
- package/dist/integration-engine/ioc/Di.js.map +1 -0
- package/dist/integration-engine/ioc/ModuleContainer.d.ts +10 -0
- package/dist/integration-engine/ioc/ModuleContainer.js +14 -0
- package/dist/integration-engine/ioc/ModuleContainer.js.map +1 -0
- package/dist/integration-engine/repositories/fcd/FloatingCarDataRegionsRepository.d.ts +6 -0
- package/dist/integration-engine/repositories/fcd/FloatingCarDataRegionsRepository.js +37 -0
- package/dist/integration-engine/repositories/fcd/FloatingCarDataRegionsRepository.js.map +1 -0
- package/dist/integration-engine/repositories/fcd/FloatingCarDataRepository.d.ts +6 -0
- package/dist/integration-engine/repositories/fcd/FloatingCarDataRepository.js +37 -0
- package/dist/integration-engine/repositories/fcd/FloatingCarDataRepository.js.map +1 -0
- package/dist/integration-engine/schemas/floatingCarData.d.ts +324 -0
- package/dist/integration-engine/schemas/floatingCarData.js +346 -0
- package/dist/integration-engine/schemas/floatingCarData.js.map +1 -0
- package/dist/integration-engine/transformations/FloatingCarDataTransformation.d.ts +2 -1
- package/dist/integration-engine/transformations/FloatingCarDataTransformation.js.map +1 -1
- package/dist/integration-engine/transformations/index.d.ts +2 -0
- package/dist/integration-engine/transformations/index.js +19 -0
- package/dist/integration-engine/transformations/index.js.map +1 -0
- package/dist/integration-engine/transformations/{FloatingCarDataInterface.d.ts → interfaces/FloatingCarDataInterface.d.ts} +2 -48
- package/dist/integration-engine/transformations/interfaces/FloatingCarDataInterface.js.map +1 -0
- package/dist/integration-engine/workers/FCDWorker.d.ts +7 -0
- package/dist/integration-engine/workers/FCDWorker.js +21 -0
- package/dist/integration-engine/workers/FCDWorker.js.map +1 -0
- package/dist/integration-engine/workers/index.d.ts +2 -0
- package/dist/integration-engine/workers/index.js +6 -0
- package/dist/integration-engine/workers/index.js.map +1 -0
- package/dist/integration-engine/workers/tasks/RegionsDataRetentionTask.d.ts +10 -0
- package/dist/integration-engine/workers/tasks/RegionsDataRetentionTask.js +59 -0
- package/dist/integration-engine/workers/tasks/RegionsDataRetentionTask.js.map +1 -0
- package/dist/integration-engine/workers/tasks/SaveFloatingCarDataTask.d.ts +13 -0
- package/dist/integration-engine/workers/tasks/SaveFloatingCarDataTask.js +62 -0
- package/dist/integration-engine/workers/tasks/SaveFloatingCarDataTask.js.map +1 -0
- package/dist/integration-engine/workers/tasks/SaveRegionsDataTask.d.ts +15 -0
- package/dist/integration-engine/workers/tasks/SaveRegionsDataTask.js +68 -0
- package/dist/integration-engine/workers/tasks/SaveRegionsDataTask.js.map +1 -0
- package/dist/integration-engine/workers/tasks/index.d.ts +3 -0
- package/dist/integration-engine/workers/tasks/index.js +20 -0
- package/dist/integration-engine/workers/tasks/index.js.map +1 -0
- package/dist/output-gateway/FCDRouter.d.ts +4 -2
- package/dist/output-gateway/FCDRouter.js +17 -7
- package/dist/output-gateway/FCDRouter.js.map +1 -1
- package/dist/output-gateway/models/FloatingCarDataModel.d.ts +1 -1
- package/dist/output-gateway/models/FloatingCarDataModel.js.map +1 -1
- package/dist/output-gateway/models/FloatingCarExtendedDataModel.d.ts +1 -1
- package/dist/output-gateway/models/FloatingCarExtendedDataModel.js.map +1 -1
- package/dist/output-gateway/models/FloatingCarWithOsmPathDataModel.d.ts +11 -0
- package/dist/output-gateway/models/FloatingCarWithOsmPathDataModel.js +54 -0
- package/dist/output-gateway/models/FloatingCarWithOsmPathDataModel.js.map +1 -0
- package/dist/output-gateway/models/FloatingCarWithOsmPathExtendedDataModel.d.ts +12 -0
- package/dist/output-gateway/models/FloatingCarWithOsmPathExtendedDataModel.js +61 -0
- package/dist/output-gateway/models/FloatingCarWithOsmPathExtendedDataModel.js.map +1 -0
- package/dist/output-gateway/models/index.d.ts +2 -0
- package/dist/output-gateway/models/index.js +2 -0
- package/dist/output-gateway/models/index.js.map +1 -1
- package/dist/output-gateway/transformations/OutputFloatingCarDataTransformation.d.ts +6 -5
- package/dist/output-gateway/transformations/OutputFloatingCarDataTransformation.js +42 -50
- package/dist/output-gateway/transformations/OutputFloatingCarDataTransformation.js.map +1 -1
- package/dist/output-gateway/transformations/interfaces/outputApiFloatingCarData.d.ts +13 -0
- package/dist/output-gateway/transformations/interfaces/outputApiFloatingCarData.js +3 -0
- package/dist/output-gateway/transformations/interfaces/outputApiFloatingCarData.js.map +1 -0
- package/dist/schema-definitions/index.js +1 -0
- package/dist/schema-definitions/index.js.map +1 -1
- package/dist/schema-definitions/interfaces/FloatingCarDataInterface.d.ts +38 -0
- package/dist/schema-definitions/interfaces/FloatingCarDataInterface.js +3 -0
- package/dist/schema-definitions/interfaces/FloatingCarDataInterface.js.map +1 -0
- package/dist/schema-definitions/schemas/fcd_output_schema.d.ts +1 -0
- package/dist/schema-definitions/schemas/fcd_output_schema.js +2 -1
- package/dist/schema-definitions/schemas/fcd_output_schema.js.map +1 -1
- package/docs/assets/db_schema.png +0 -0
- package/docs/assets/schemas/floating_car_data_rabbitmq_message.json +1954 -0
- package/docs/assets/schemas/floating_car_data_schema.xml +18255 -0
- package/docs/implementation_documentation.md +103 -0
- package/package.json +3 -3
- package/dist/integration-engine/FCDWorker.d.ts +0 -13
- package/dist/integration-engine/FCDWorker.js +0 -71
- package/dist/integration-engine/FCDWorker.js.map +0 -1
- package/dist/integration-engine/queueDefinitions.d.ts +0 -3
- package/dist/integration-engine/queueDefinitions.js +0 -46
- package/dist/integration-engine/queueDefinitions.js.map +0 -1
- package/dist/integration-engine/transformations/FloatingCarDataInterface.js.map +0 -1
- package/dist/output-gateway/transformations/getLocationPointsFromTsString.d.ts +0 -2
- package/dist/output-gateway/transformations/getLocationPointsFromTsString.js +0 -19
- package/dist/output-gateway/transformations/getLocationPointsFromTsString.js.map +0 -1
- /package/dist/integration-engine/transformations/{FloatingCarDataInterface.js → interfaces/FloatingCarDataInterface.js} +0 -0
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
# Implementační dokumentace modulu *fcd*
|
|
2
|
+
|
|
3
|
+
## Záměr
|
|
4
|
+
|
|
5
|
+
modul slouzi k ukladaci a retenci FCD dat
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
## Vstupní data
|
|
9
|
+
|
|
10
|
+
### Data nám jsou posílána
|
|
11
|
+
|
|
12
|
+
Mame vystavene 2 endpointy viz [openApi spec](./openapi-input.yaml)
|
|
13
|
+
|
|
14
|
+
## Zpracování dat / transformace
|
|
15
|
+
|
|
16
|
+
Vsechny tabulky jsou ve schematu `fcd`
|
|
17
|
+
|
|
18
|
+
### *FCDWorker*
|
|
19
|
+
|
|
20
|
+
Fcd modul ma jen jednoho workera ktery se stara o ukladani dat a retenci dat
|
|
21
|
+
|
|
22
|
+
#### _task: RegionsDataRetentionTask_
|
|
23
|
+
|
|
24
|
+
Vola proceduru `regions_data_retention` s parametrem 2880 -> tzn smaze data stare vice jak 2 dny
|
|
25
|
+
|
|
26
|
+
- vstupní rabbitmq fronta
|
|
27
|
+
- nazev: dataplatform.fcd.regionsDataRetention
|
|
28
|
+
- parametry: zadne
|
|
29
|
+
- TTL: 59
|
|
30
|
+
- (volitelně) závislé fronty (do kterých jsou odesílány zprávy z metody workeru)
|
|
31
|
+
- zadne
|
|
32
|
+
- datové zdroje
|
|
33
|
+
- zadne
|
|
34
|
+
- transformace
|
|
35
|
+
- zadne
|
|
36
|
+
- (volitelně) obohacení dat
|
|
37
|
+
- zadne
|
|
38
|
+
- data modely
|
|
39
|
+
- zadne
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
#### _task: SaveFloatingCarDataTask_
|
|
43
|
+
|
|
44
|
+
uklada data do tabulky `fcd_traff_params_part`
|
|
45
|
+
|
|
46
|
+
- vstupní rabbitmq fronta
|
|
47
|
+
- nazev: dataplatform.fcd.saveFloatingCarData
|
|
48
|
+
- [parametry](./assets/schemas/floating_car_data_schema.xml)
|
|
49
|
+
- (volitelně) závislé fronty (do kterých jsou odesílány zprávy z metody workeru)
|
|
50
|
+
- zadne
|
|
51
|
+
- datové zdroje
|
|
52
|
+
- zadne
|
|
53
|
+
- transformace
|
|
54
|
+
- [FloatingCarDataTransformation](../src/integration-engine//transformations/FloatingCarDataTransformation.ts)
|
|
55
|
+
- (volitelně) obohacení dat
|
|
56
|
+
- zadne
|
|
57
|
+
- data modely
|
|
58
|
+
- [FloatingCarDataRepository](../src/integration-engine/repositories/fcd/FloatingCarDataRepository.ts)
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
#### _task: SaveRegionsDataTask_
|
|
62
|
+
|
|
63
|
+
uklada data do tabulky `fcd_traff_params_regions`
|
|
64
|
+
- vstupní rabbitmq fronta
|
|
65
|
+
- název: dataplatform.fcd.saveRegionsData
|
|
66
|
+
- [parametry](./assets/schemas/floating_car_data_schema.xml)
|
|
67
|
+
- (volitelně) závislé fronty (do kterých jsou odesílány zprávy z metody workeru)
|
|
68
|
+
- zadne
|
|
69
|
+
- datové zdroje
|
|
70
|
+
- zadne
|
|
71
|
+
- transformace
|
|
72
|
+
- [FloatingCarDataTransformation](../src/integration-engine//transformations/FloatingCarDataTransformation.ts)
|
|
73
|
+
- (volitelně) obohacení dat
|
|
74
|
+
- zadne
|
|
75
|
+
- data modely
|
|
76
|
+
- [FloatingCarDataRegionsRepository](../src/integration-engine/repositories/fcd/FloatingCarDataRegionsRepository.ts)
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
## Uložení dat
|
|
80
|
+
|
|
81
|
+
- typ databáze
|
|
82
|
+
- PSQL
|
|
83
|
+
- databázové schéma
|
|
84
|
+
- [fcd schema](./assets/db_schema.png)
|
|
85
|
+
- `fcd_traff_params_part`: Obsahuje fcd data z Hlavního města Praha a Středočeského kraje. Historická data se zachovávají.
|
|
86
|
+
- `fcd_traff_params_regions`: Obsahuje fcd data z krajů: Liberecký, Královehradecký, Pardubický, Vysočina, Jihočeský, Plzeňský, Karlovarský, Ústecký. Integrační engine pouští pravidelnou retenci dat(`regions_data_retention`).
|
|
87
|
+
|
|
88
|
+
## Output API
|
|
89
|
+
|
|
90
|
+
### Obecné
|
|
91
|
+
|
|
92
|
+
- OpenAPI dokumentace
|
|
93
|
+
- [openapi-output](./openapi-output.yaml)
|
|
94
|
+
- veřejné / neveřejné endpointy
|
|
95
|
+
- api je veřejné nebo neveřejné, případně seznam veřejných a neveřejných endpointů
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
#### _/v2/fcd/info_
|
|
99
|
+
|
|
100
|
+
- zdrojové tabulky
|
|
101
|
+
- je pouzit view `v_traffic_params_all` kde jste spojene tabulky `fcd_traff_params_regions` a `fcd_traff_params_part`
|
|
102
|
+
- pri zadosti o osmPath je pouzit view `v_traffic_params_all_with_osm_path`/`v_traffic_params_last_hour_osm_path` kde je pripojena tabulka `traffic.rsd_tmc_osm_mapping` pro ziskani `osm_path`
|
|
103
|
+
- zobrazi data viz [openapi](./openapi-output.yaml)
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@golemio/fcd",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.5-dev.1262829891",
|
|
4
4
|
"description": "Golemio Floating Car Data Module",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -38,10 +38,10 @@
|
|
|
38
38
|
"@commitlint/cli": "^11.0.0",
|
|
39
39
|
"@commitlint/config-conventional": "^11.0.0",
|
|
40
40
|
"@golemio/cli": "1.5.0",
|
|
41
|
-
"@golemio/core": "1.9.
|
|
41
|
+
"@golemio/core": "1.9.16",
|
|
42
42
|
"@golemio/db-common": "1.1.3",
|
|
43
43
|
"@golemio/eslint-config": "1.1.1",
|
|
44
|
-
"@golemio/traffic-common": "1.0.
|
|
44
|
+
"@golemio/traffic-common": "1.0.6",
|
|
45
45
|
"@types/body-parser-xml": "^1.1.0",
|
|
46
46
|
"@types/chai": "4.2.3",
|
|
47
47
|
"@types/chai-as-promised": "7.1.2",
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { BaseWorker } from "@golemio/core/dist/integration-engine";
|
|
2
|
-
export declare class FCDWorker extends BaseWorker {
|
|
3
|
-
private readonly queuePrefix;
|
|
4
|
-
private floatingCarDataTransformation;
|
|
5
|
-
private floatingCarDataModel;
|
|
6
|
-
private floatingCarDataRegionsModel;
|
|
7
|
-
private lteCze90PointsChecker;
|
|
8
|
-
private DATA_RETENTION_IN_MINUTES;
|
|
9
|
-
constructor();
|
|
10
|
-
saveFloatingCarData: (msg: any) => Promise<void>;
|
|
11
|
-
saveRegionsData: (msg: any) => Promise<void>;
|
|
12
|
-
regionsDataRetention: (msg: any) => Promise<void>;
|
|
13
|
-
}
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.FCDWorker = void 0;
|
|
13
|
-
const FloatingCarDataTransformation_1 = require("./transformations/FloatingCarDataTransformation");
|
|
14
|
-
const _sch_1 = require("../schema-definitions");
|
|
15
|
-
const integration_engine_1 = require("@golemio/core/dist/integration-engine");
|
|
16
|
-
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
17
|
-
const golemio_validator_1 = require("@golemio/core/dist/shared/golemio-validator");
|
|
18
|
-
const sequelize_1 = require("@golemio/core/dist/shared/sequelize");
|
|
19
|
-
const LteCze90PointsChecker_1 = require("./helpers/LteCze90PointsChecker");
|
|
20
|
-
class FCDWorker extends integration_engine_1.BaseWorker {
|
|
21
|
-
constructor() {
|
|
22
|
-
super();
|
|
23
|
-
this.DATA_RETENTION_IN_MINUTES = 2880; // 2 days
|
|
24
|
-
this.saveFloatingCarData = (msg) => __awaiter(this, void 0, void 0, function* () {
|
|
25
|
-
try {
|
|
26
|
-
const data = JSON.parse(msg.content.toString());
|
|
27
|
-
const transformedData = yield this.floatingCarDataTransformation.transform(data);
|
|
28
|
-
yield this.floatingCarDataModel.save(transformedData);
|
|
29
|
-
}
|
|
30
|
-
catch (error) {
|
|
31
|
-
throw new golemio_errors_1.GeneralError("Error while processing Floating Car Data data.", "FCDWorker", error, 422);
|
|
32
|
-
}
|
|
33
|
-
});
|
|
34
|
-
this.saveRegionsData = (msg) => __awaiter(this, void 0, void 0, function* () {
|
|
35
|
-
try {
|
|
36
|
-
const data = JSON.parse(msg.content.toString());
|
|
37
|
-
const transformedData = yield this.floatingCarDataTransformation.transform(data);
|
|
38
|
-
yield this.lteCze90PointsChecker.initialize();
|
|
39
|
-
const filteredData = transformedData.filter((element) => this.lteCze90PointsChecker.shouldSave(element.source_identification));
|
|
40
|
-
yield this.floatingCarDataRegionsModel.save(filteredData);
|
|
41
|
-
}
|
|
42
|
-
catch (error) {
|
|
43
|
-
throw new golemio_errors_1.GeneralError("Error while processing Floating Car Data for regions.", "FCDWorker", error, 422);
|
|
44
|
-
}
|
|
45
|
-
});
|
|
46
|
-
this.regionsDataRetention = (msg) => __awaiter(this, void 0, void 0, function* () {
|
|
47
|
-
const sequelize = integration_engine_1.PostgresConnector.getConnection();
|
|
48
|
-
yield sequelize.query(`CALL ${_sch_1.FCD.pgSchema}.regions_data_retention(${this.DATA_RETENTION_IN_MINUTES});`, {
|
|
49
|
-
plain: true,
|
|
50
|
-
type: sequelize_1.QueryTypes.SELECT,
|
|
51
|
-
});
|
|
52
|
-
});
|
|
53
|
-
this.queuePrefix = integration_engine_1.config.RABBIT_EXCHANGE_NAME + "." + _sch_1.FCD.name.toLowerCase();
|
|
54
|
-
this.floatingCarDataTransformation = new FloatingCarDataTransformation_1.FloatingCarDataTransformation();
|
|
55
|
-
this.floatingCarDataModel = new integration_engine_1.PostgresModel(_sch_1.FCD.fcd_info.name + "Model", {
|
|
56
|
-
outputSequelizeAttributes: _sch_1.FCD.fcd_info.outputSequelizeAttributes,
|
|
57
|
-
pgSchema: _sch_1.FCD.pgSchema,
|
|
58
|
-
pgTableName: _sch_1.FCD.fcd_info.pgTableName,
|
|
59
|
-
savingType: "insertOnly",
|
|
60
|
-
}, new golemio_validator_1.JSONSchemaValidator(_sch_1.FCD.fcd_info.name + "PgModelValidator", _sch_1.FCD.fcd_info.outputSchema));
|
|
61
|
-
this.floatingCarDataRegionsModel = new integration_engine_1.PostgresModel(_sch_1.FCD.fcd_info.name + "Model", {
|
|
62
|
-
outputSequelizeAttributes: _sch_1.FCD.fcd_info.outputSequelizeAttributes,
|
|
63
|
-
pgSchema: _sch_1.FCD.pgSchema,
|
|
64
|
-
pgTableName: "fcd_traff_params_regions",
|
|
65
|
-
savingType: "insertOnly",
|
|
66
|
-
}, new golemio_validator_1.JSONSchemaValidator(_sch_1.FCD.fcd_info.name + "PgModelValidator", _sch_1.FCD.fcd_info.outputSchema));
|
|
67
|
-
this.lteCze90PointsChecker = new LteCze90PointsChecker_1.LteCze90PointsChecker();
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
exports.FCDWorker = FCDWorker;
|
|
71
|
-
//# sourceMappingURL=FCDWorker.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"FCDWorker.js","sourceRoot":"","sources":["../../src/integration-engine/FCDWorker.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.queueDefinitions = void 0;
|
|
4
|
-
const integration_engine_1 = require("@golemio/core/dist/integration-engine");
|
|
5
|
-
const _sch_1 = require("../schema-definitions");
|
|
6
|
-
const FCDWorker_1 = require("./FCDWorker");
|
|
7
|
-
const queueDefinitions = [
|
|
8
|
-
{
|
|
9
|
-
name: _sch_1.FCD.name,
|
|
10
|
-
queuePrefix: integration_engine_1.config.RABBIT_EXCHANGE_NAME + "." + _sch_1.FCD.name.toLowerCase(),
|
|
11
|
-
queues: [
|
|
12
|
-
{
|
|
13
|
-
name: "saveFloatingCarData",
|
|
14
|
-
options: {
|
|
15
|
-
deadLetterExchange: integration_engine_1.config.RABBIT_EXCHANGE_NAME,
|
|
16
|
-
deadLetterRoutingKey: "dead",
|
|
17
|
-
messageTtl: 59 * 60 * 1000, // 59 minutes
|
|
18
|
-
},
|
|
19
|
-
worker: FCDWorker_1.FCDWorker,
|
|
20
|
-
workerMethod: "saveFloatingCarData",
|
|
21
|
-
},
|
|
22
|
-
{
|
|
23
|
-
name: "saveRegionsData",
|
|
24
|
-
options: {
|
|
25
|
-
deadLetterExchange: integration_engine_1.config.RABBIT_EXCHANGE_NAME,
|
|
26
|
-
deadLetterRoutingKey: "dead",
|
|
27
|
-
messageTtl: 59 * 60 * 1000, // 59 minutes
|
|
28
|
-
},
|
|
29
|
-
worker: FCDWorker_1.FCDWorker,
|
|
30
|
-
workerMethod: "saveRegionsData",
|
|
31
|
-
},
|
|
32
|
-
{
|
|
33
|
-
name: "regionsDataRetention",
|
|
34
|
-
options: {
|
|
35
|
-
deadLetterExchange: integration_engine_1.config.RABBIT_EXCHANGE_NAME,
|
|
36
|
-
deadLetterRoutingKey: "dead",
|
|
37
|
-
messageTtl: 59 * 60 * 1000, // 59 minutes
|
|
38
|
-
},
|
|
39
|
-
worker: FCDWorker_1.FCDWorker,
|
|
40
|
-
workerMethod: "regionsDataRetention",
|
|
41
|
-
},
|
|
42
|
-
],
|
|
43
|
-
},
|
|
44
|
-
];
|
|
45
|
-
exports.queueDefinitions = queueDefinitions;
|
|
46
|
-
//# sourceMappingURL=queueDefinitions.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"queueDefinitions.js","sourceRoot":"","sources":["../../src/integration-engine/queueDefinitions.ts"],"names":[],"mappings":";;;AAAA,8EAAiF;AACjF,gDAA2B;AAC3B,2CAA0C;AAE1C,MAAM,gBAAgB,GAAuB;IACzC;QACI,IAAI,EAAE,UAAG,CAAC,IAAI;QACd,WAAW,EAAE,2BAAM,CAAC,oBAAoB,GAAG,GAAG,GAAG,UAAG,CAAC,IAAI,CAAC,WAAW,EAAE;QACvE,MAAM,EAAE;YACJ;gBACI,IAAI,EAAE,qBAAqB;gBAC3B,OAAO,EAAE;oBACL,kBAAkB,EAAE,2BAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,aAAa;iBAC5C;gBACD,MAAM,EAAE,qBAAS;gBACjB,YAAY,EAAE,qBAAqB;aACtC;YACD;gBACI,IAAI,EAAE,iBAAiB;gBACvB,OAAO,EAAE;oBACL,kBAAkB,EAAE,2BAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,aAAa;iBAC5C;gBACD,MAAM,EAAE,qBAAS;gBACjB,YAAY,EAAE,iBAAiB;aAClC;YACD;gBACI,IAAI,EAAE,sBAAsB;gBAC5B,OAAO,EAAE;oBACL,kBAAkB,EAAE,2BAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,aAAa;iBAC5C;gBACD,MAAM,EAAE,qBAAS;gBACjB,YAAY,EAAE,sBAAsB;aACvC;SACJ;KACJ;CACJ,CAAC;AAEO,4CAAgB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"FloatingCarDataInterface.js","sourceRoot":"","sources":["../../../src/integration-engine/transformations/FloatingCarDataInterface.ts"],"names":[],"mappings":""}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getLocationPointsFromTsString = void 0;
|
|
4
|
-
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
5
|
-
function getLocationPointsFromTsString(location) {
|
|
6
|
-
const regex = /((?<=TS)(.*?)(?=T))|((?<=\dT)(.*?)(?=$))/g;
|
|
7
|
-
const pointsArr = location.match(regex);
|
|
8
|
-
if ((pointsArr === null || pointsArr === void 0 ? void 0 : pointsArr.length) == 2 && pointsArr[0] && pointsArr[1]) {
|
|
9
|
-
return {
|
|
10
|
-
ltStart: Number(pointsArr[0]),
|
|
11
|
-
ltEnd: Number(pointsArr[1]),
|
|
12
|
-
};
|
|
13
|
-
}
|
|
14
|
-
else {
|
|
15
|
-
throw new golemio_errors_1.GeneralError("Unable to parse RsdTmcOsmMappingModelOptions from the location", "FCDRouter", location, 500);
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
exports.getLocationPointsFromTsString = getLocationPointsFromTsString;
|
|
19
|
-
//# sourceMappingURL=getLocationPointsFromTsString.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getLocationPointsFromTsString.js","sourceRoot":"","sources":["../../../src/output-gateway/transformations/getLocationPointsFromTsString.ts"],"names":[],"mappings":";;;AAAA,6EAAwE;AAGxE,SAAgB,6BAA6B,CAAC,QAAgB;IAC1D,MAAM,KAAK,GAAG,2CAA2C,CAAC;IAC1D,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACxC,IAAI,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM,KAAI,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,EAAE;QACxD,OAAO;YACH,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAC7B,KAAK,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;SAC9B,CAAC;KACL;SAAM;QACH,MAAM,IAAI,6BAAY,CAAC,gEAAgE,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;KACxH;AACL,CAAC;AAXD,sEAWC"}
|