@golemio/pid 2.7.12-dev.933335144 → 2.7.12-dev.935052944

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 (70) hide show
  1. package/dist/integration-engine/index.js +2 -0
  2. package/dist/integration-engine/index.js.map +1 -1
  3. package/dist/integration-engine/queueDefinitions.js +0 -50
  4. package/dist/integration-engine/queueDefinitions.js.map +1 -1
  5. package/dist/integration-engine/ropid-gtfs/LegacyRopidGTFSWorker.d.ts +0 -63
  6. package/dist/integration-engine/ropid-gtfs/LegacyRopidGTFSWorker.js +3 -541
  7. package/dist/integration-engine/ropid-gtfs/LegacyRopidGTFSWorker.js.map +1 -1
  8. package/dist/integration-engine/ropid-gtfs/data-access/cache/StaticFileRedisRepository.js +18 -4
  9. package/dist/integration-engine/ropid-gtfs/data-access/cache/StaticFileRedisRepository.js.map +1 -1
  10. package/dist/integration-engine/ropid-gtfs/ioc/Di.d.ts +3 -0
  11. package/dist/integration-engine/ropid-gtfs/ioc/Di.js +29 -0
  12. package/dist/integration-engine/ropid-gtfs/ioc/Di.js.map +1 -0
  13. package/dist/integration-engine/ropid-gtfs/ioc/RopidGtfsContainerToken.d.ts +8 -0
  14. package/dist/integration-engine/ropid-gtfs/ioc/RopidGtfsContainerToken.js +12 -0
  15. package/dist/integration-engine/ropid-gtfs/ioc/RopidGtfsContainerToken.js.map +1 -0
  16. package/dist/integration-engine/ropid-gtfs/transformations/RopidGTFSTransformation.js +16 -3
  17. package/dist/integration-engine/ropid-gtfs/transformations/RopidGTFSTransformation.js.map +1 -1
  18. package/dist/integration-engine/ropid-gtfs/workers/timetables/TimetableWorker.d.ts +5 -0
  19. package/dist/integration-engine/ropid-gtfs/workers/timetables/TimetableWorker.js +23 -0
  20. package/dist/integration-engine/ropid-gtfs/workers/timetables/TimetableWorker.js.map +1 -0
  21. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/CheckForNewDataTask.d.ts +12 -0
  22. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/CheckForNewDataTask.js +61 -0
  23. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/CheckForNewDataTask.js.map +1 -0
  24. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/CheckSavedRowsAndReplaceTablesTask.d.ts +14 -0
  25. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/CheckSavedRowsAndReplaceTablesTask.js +93 -0
  26. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/CheckSavedRowsAndReplaceTablesTask.js.map +1 -0
  27. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/DownloadDatasetsTask.d.ts +19 -0
  28. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/DownloadDatasetsTask.js +152 -0
  29. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/DownloadDatasetsTask.js.map +1 -0
  30. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/RefreshPrecomputedTablesTask.d.ts +11 -0
  31. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/RefreshPrecomputedTablesTask.js +57 -0
  32. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/RefreshPrecomputedTablesTask.js.map +1 -0
  33. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/TransformAndSaveDataTask.d.ts +21 -0
  34. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/TransformAndSaveDataTask.js +160 -0
  35. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/TransformAndSaveDataTask.js.map +1 -0
  36. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/helpers/HelperTypes.d.ts +24 -0
  37. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/helpers/HelperTypes.js +36 -0
  38. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/helpers/HelperTypes.js.map +1 -0
  39. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/helpers/PrecomputedTablesFacade.d.ts +12 -0
  40. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/helpers/PrecomputedTablesFacade.js +67 -0
  41. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/helpers/PrecomputedTablesFacade.js.map +1 -0
  42. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/helpers/RopidGtfsFactory.d.ts +13 -0
  43. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/helpers/RopidGtfsFactory.js +102 -0
  44. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/helpers/RopidGtfsFactory.js.map +1 -0
  45. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/interfaces/ICheckForNewDataInput.js.map +1 -0
  46. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/interfaces/IDatasetsInput.d.ts +4 -0
  47. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/interfaces/IDatasetsInput.js +3 -0
  48. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/interfaces/IDatasetsInput.js.map +1 -0
  49. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/schema/CachedDatasetSchema.d.ts +8 -0
  50. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/schema/CachedDatasetSchema.js +40 -0
  51. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/schema/CachedDatasetSchema.js.map +1 -0
  52. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/schema/CheckForNewDataMessageValidation.d.ts +4 -0
  53. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/schema/CheckForNewDataMessageValidation.js +22 -0
  54. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/schema/CheckForNewDataMessageValidation.js.map +1 -0
  55. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/schema/DownloadDataInputSchema.d.ts +5 -0
  56. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/schema/DownloadDataInputSchema.js +23 -0
  57. package/dist/integration-engine/ropid-gtfs/workers/timetables/tasks/schema/DownloadDataInputSchema.js.map +1 -0
  58. package/dist/output-gateway/pid/controllers/DepartureBoardsController.js +1 -2
  59. package/dist/output-gateway/pid/controllers/DepartureBoardsController.js.map +1 -1
  60. package/dist/output-gateway/pid/controllers/InfotextsController.js +1 -1
  61. package/dist/output-gateway/pid/controllers/InfotextsController.js.map +1 -1
  62. package/dist/output-gateway/pid/models/PIDDepartureBoardsModel.js +4 -5
  63. package/dist/output-gateway/pid/models/PIDDepartureBoardsModel.js.map +1 -1
  64. package/dist/output-gateway/vehicle-positions/VehiclePositionsRouter.js +1 -2
  65. package/dist/output-gateway/vehicle-positions/VehiclePositionsRouter.js.map +1 -1
  66. package/docs/implementation_documentation.md +39 -37
  67. package/package.json +2 -2
  68. package/dist/integration-engine/ropid-gtfs/interfaces/ICheckForNewDataInput.js.map +0 -1
  69. /package/dist/integration-engine/ropid-gtfs/{interfaces → workers/timetables/tasks/interfaces}/ICheckForNewDataInput.d.ts +0 -0
  70. /package/dist/integration-engine/ropid-gtfs/{interfaces → workers/timetables/tasks/interfaces}/ICheckForNewDataInput.js +0 -0
@@ -31,6 +31,7 @@ const PresetWorker_1 = require("./ropid-gtfs/workers/presets/PresetWorker");
31
31
  const RailtrackWorker_1 = require("./ropid-gtfs/workers/railtrack/RailtrackWorker");
32
32
  const RopidVYMIWorker_1 = require("./ropid-vymi/workers/RopidVYMIWorker");
33
33
  const vehicle_positions_1 = require("./vehicle-positions");
34
+ const TimetableWorker_1 = require("./ropid-gtfs/workers/timetables/TimetableWorker");
34
35
  __exportStar(require("./queueDefinitions"), exports);
35
36
  exports.RopidGTFS = __importStar(require("./ropid-gtfs"));
36
37
  exports.RopidVYMI = __importStar(require("./ropid-vymi"));
@@ -45,6 +46,7 @@ exports.workers = [
45
46
  //#region ROPID GTFS
46
47
  RailtrackWorker_1.RailtrackWorker,
47
48
  PresetWorker_1.PresetWorker,
49
+ TimetableWorker_1.TimetableWorker,
48
50
  //#endregion
49
51
  //#region ROPID VYMI
50
52
  RopidVYMIWorker_1.RopidVYMIWorker,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/integration-engine/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,4EAAyE;AACzE,oFAAiF;AACjF,0EAAuE;AACvE,2DAAiG;AAEjG,qDAAmC;AACnC,0DAA0C;AAC1C,0DAA0C;AAC1C,wEAAwD;AAE3C,QAAA,OAAO,GAAoC;IACpD,2BAA2B;IAC3B,4BAAQ;IACR,oCAAgB;IAChB,8BAAU;IACV,sCAAkB;IAClB,YAAY;IAEZ,oBAAoB;IACpB,iCAAe;IACf,2BAAY;IACZ,YAAY;IAEZ,oBAAoB;IACpB,iCAAe;IACf,YAAY;CACf,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/integration-engine/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,4EAAyE;AACzE,oFAAiF;AACjF,0EAAuE;AACvE,2DAAiG;AACjG,qFAAkF;AAElF,qDAAmC;AACnC,0DAA0C;AAC1C,0DAA0C;AAC1C,wEAAwD;AAE3C,QAAA,OAAO,GAAoC;IACpD,2BAA2B;IAC3B,4BAAQ;IACR,oCAAgB;IAChB,8BAAU;IACV,sCAAkB;IAClB,YAAY;IAEZ,oBAAoB;IACpB,iCAAe;IACf,2BAAY;IACZ,iCAAe;IACf,YAAY;IAEZ,oBAAoB;IACpB,iCAAe;IACf,YAAY;CACf,CAAC"}
@@ -13,56 +13,6 @@ const queueDefinitions = [
13
13
  name: ropid_gtfs_1.RopidGTFS.name,
14
14
  queuePrefix: config_1.config.RABBIT_EXCHANGE_NAME + "." + ropid_gtfs_1.RopidGTFS.name.toLowerCase(),
15
15
  queues: [
16
- {
17
- name: "checkForNewData",
18
- options: {
19
- deadLetterExchange: config_1.config.RABBIT_EXCHANGE_NAME,
20
- deadLetterRoutingKey: "dead",
21
- messageTtl: 19 * 60 * 1000, // 19 minutes
22
- },
23
- worker: LegacyRopidGTFSWorker_1.LegacyRopidGTFSWorker,
24
- workerMethod: "checkForNewData",
25
- },
26
- {
27
- name: "downloadDatasets",
28
- options: {
29
- deadLetterExchange: config_1.config.RABBIT_EXCHANGE_NAME,
30
- deadLetterRoutingKey: "dead",
31
- messageTtl: 59 * 60 * 1000, // 59 minutes
32
- },
33
- worker: LegacyRopidGTFSWorker_1.LegacyRopidGTFSWorker,
34
- workerMethod: "downloadDatasets",
35
- },
36
- {
37
- name: "transformAndSaveData",
38
- options: {
39
- deadLetterExchange: config_1.config.RABBIT_EXCHANGE_NAME,
40
- deadLetterRoutingKey: "dead",
41
- messageTtl: 23 * 60 * 60 * 1000, // 23 hours
42
- },
43
- worker: LegacyRopidGTFSWorker_1.LegacyRopidGTFSWorker,
44
- workerMethod: "transformAndSaveData",
45
- },
46
- {
47
- name: "checkSavedRowsAndReplaceTables",
48
- options: {
49
- deadLetterExchange: config_1.config.RABBIT_EXCHANGE_NAME,
50
- deadLetterRoutingKey: "dead",
51
- messageTtl: 23 * 60 * 60 * 1000, // 23 hours
52
- },
53
- worker: LegacyRopidGTFSWorker_1.LegacyRopidGTFSWorker,
54
- workerMethod: "checkSavedRowsAndReplaceTables",
55
- },
56
- {
57
- name: "refreshPrecomputedTables",
58
- options: {
59
- deadLetterExchange: config_1.config.RABBIT_EXCHANGE_NAME,
60
- deadLetterRoutingKey: "dead",
61
- messageTtl: 59 * 60 * 1000, // 59 minutes
62
- },
63
- worker: LegacyRopidGTFSWorker_1.LegacyRopidGTFSWorker,
64
- workerMethod: "refreshPrecomputedTables",
65
- },
66
16
  {
67
17
  name: "checkForNewDeparturesPresets",
68
18
  options: {
@@ -1 +1 @@
1
- {"version":3,"file":"queueDefinitions.js","sourceRoot":"","sources":["../../src/integration-engine/queueDefinitions.ts"],"names":[],"mappings":";;;AAAA,8EAA6E;AAC7E,iEAA4C;AAC5C,yEAAsE;AAGtE;;GAEG;AACH,MAAM,gBAAgB,GAAuB;IACzC,+BAA+B;IAC/B;QACI,IAAI,EAAE,sBAAS,CAAC,IAAI;QACpB,WAAW,EAAE,eAAM,CAAC,oBAAoB,GAAG,GAAG,GAAG,sBAAS,CAAC,IAAI,CAAC,WAAW,EAAE;QAC7E,MAAM,EAAE;YACJ;gBACI,IAAI,EAAE,iBAAiB;gBACvB,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,aAAa;iBAC5C;gBACD,MAAM,EAAE,6CAAqB;gBAC7B,YAAY,EAAE,iBAAiB;aAClC;YACD;gBACI,IAAI,EAAE,kBAAkB;gBACxB,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,aAAa;iBAC5C;gBACD,MAAM,EAAE,6CAAqB;gBAC7B,YAAY,EAAE,kBAAkB;aACnC;YACD;gBACI,IAAI,EAAE,sBAAsB;gBAC5B,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,WAAW;iBAC/C;gBACD,MAAM,EAAE,6CAAqB;gBAC7B,YAAY,EAAE,sBAAsB;aACvC;YACD;gBACI,IAAI,EAAE,gCAAgC;gBACtC,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,WAAW;iBAC/C;gBACD,MAAM,EAAE,6CAAqB;gBAC7B,YAAY,EAAE,gCAAgC;aACjD;YACD;gBACI,IAAI,EAAE,0BAA0B;gBAChC,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,aAAa;iBAC5C;gBACD,MAAM,EAAE,6CAAqB;gBAC7B,YAAY,EAAE,0BAA0B;aAC3C;YACD;gBACI,IAAI,EAAE,8BAA8B;gBACpC,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,EAAE,YAAY;iBAC1C;gBACD,MAAM,EAAE,6CAAqB;gBAC7B,YAAY,EAAE,8BAA8B;aAC/C;YACD;gBACI,IAAI,EAAE,2BAA2B;gBACjC,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,EAAE,YAAY;iBAC1C;gBACD,MAAM,EAAE,6CAAqB;gBAC7B,YAAY,EAAE,2BAA2B;aAC5C;SACJ;KACJ;CACJ,CAAC;AAEO,4CAAgB"}
1
+ {"version":3,"file":"queueDefinitions.js","sourceRoot":"","sources":["../../src/integration-engine/queueDefinitions.ts"],"names":[],"mappings":";;;AAAA,8EAA6E;AAC7E,iEAA4C;AAC5C,yEAAsE;AAGtE;;GAEG;AACH,MAAM,gBAAgB,GAAuB;IACzC,+BAA+B;IAC/B;QACI,IAAI,EAAE,sBAAS,CAAC,IAAI;QACpB,WAAW,EAAE,eAAM,CAAC,oBAAoB,GAAG,GAAG,GAAG,sBAAS,CAAC,IAAI,CAAC,WAAW,EAAE;QAC7E,MAAM,EAAE;YACJ;gBACI,IAAI,EAAE,8BAA8B;gBACpC,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,EAAE,YAAY;iBAC1C;gBACD,MAAM,EAAE,6CAAqB;gBAC7B,YAAY,EAAE,8BAA8B;aAC/C;YACD;gBACI,IAAI,EAAE,2BAA2B;gBACjC,OAAO,EAAE;oBACL,kBAAkB,EAAE,eAAM,CAAC,oBAAoB;oBAC/C,oBAAoB,EAAE,MAAM;oBAC5B,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,EAAE,YAAY;iBAC1C;gBACD,MAAM,EAAE,6CAAqB;gBAC7B,YAAY,EAAE,2BAA2B;aAC5C;SACJ;KACJ;CACJ,CAAC;AAEO,4CAAgB"}
@@ -1,82 +1,19 @@
1
1
  import { IRopidDeparturesPreset } from "../../schema-definitions/ropid-departures-presets";
2
- import { DatasetModelName } from "../../schema-definitions/ropid-gtfs";
3
2
  import { BaseWorker } from "@golemio/core/dist/integration-engine/workers";
4
- import { Message as AMQPMessage } from "amqplib";
5
- import { DatasetEnum } from ".";
6
- type GTFSDatasets = Exclude<DatasetEnum, DatasetEnum.DEPARTURES_PRESETS>;
7
3
  export interface IDeparturesPresetsData {
8
4
  data: IRopidDeparturesPreset[];
9
5
  }
10
- export declare const datasetFileModelMap: (dataset: GTFSDatasets, name: string) => DatasetModelName | DatasetModelName[];
11
6
  export declare class LegacyRopidGTFSWorker extends BaseWorker {
12
- private static ORIGIN_HOSTNAME_HEADER;
13
- private dataSourceGtfs;
14
- private dataSourceCisStops;
15
- private dataSourceOisMapping;
16
- private dataSourceRunNumbers;
17
7
  private dataSourceDeparturesPresets;
18
- private transformationGtfs;
19
- private transformationCisStops;
20
- private transformationOisMapping;
21
- /** Precomputed data repositories */
22
- private departuresRepository;
23
- private minMaxStopSequencesRepository;
24
- private tripScheduleRepository;
25
- private servicesCalendarRepository;
26
8
  private metaModel;
27
- private staticFileRedisRepository;
28
- private dataCacheManager;
29
- private gtfsRedisChannel;
30
- private datasetMap;
31
9
  private readonly queuePrefix;
32
10
  constructor();
33
- /**
34
- * Queue listener method - triggers entire flow
35
- */
36
- checkForNewData: (msg: AMQPMessage) => Promise<void>;
37
- /**
38
- * Queue listener method - triggers dataset download
39
- * @param {object} msg
40
- * @param {Buffer} msg.content - array of dataset names, empty to force downloading all
41
- */
42
- downloadDatasets: (msg: AMQPMessage) => Promise<void>;
43
- /**
44
- * Helper method - download and persist dataset
45
- */
46
- private downloadAndPersistDatasetFiles;
47
11
  /**
48
12
  * Queue listener method - triggers for new presets only
49
13
  */
50
14
  checkForNewDeparturesPresets: () => Promise<void>;
51
- /**
52
- * Queue listener method - transform and save dataset item to tmp
53
- */
54
- transformAndSaveData: (msg: AMQPMessage) => Promise<void>;
55
- private saveTransformedDataset;
56
- /**
57
- * Queue listener method - verify tmp tables and replace public
58
- */
59
- checkSavedRowsAndReplaceTables: (msg: AMQPMessage) => Promise<boolean>;
60
- refreshPrecomputedTables: () => Promise<void>;
61
15
  /**
62
16
  * Queue listener method - triggers processing of DEPARTURES_PRESETS dataset
63
17
  */
64
18
  downloadDeparturesPresets: () => Promise<void>;
65
- /**
66
- * Validate dataset list against dataset enum
67
- *
68
- * @param {string[]} names - names of datasets
69
- */
70
- private validateDatasetNames;
71
- /**
72
- * Validate name against dataset enum
73
- *
74
- * @param {string} name - name of datasets
75
- */
76
- private validateDatasetName;
77
- private streamDataToTmp;
78
- private getTmpModelByName;
79
- private createTmpModel;
80
- private createAndPopulatePrecomputedTmpTables;
81
19
  }
82
- export {};