@golemio/pid 2.3.8-rc.748308189 → 2.4.0-dev.754696501

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 (40) hide show
  1. package/README.md +2 -2
  2. package/db/example/99_precomputed_tables.sql +65 -44
  3. package/db/migrations/postgresql/20230104135230-add-first-last-stop-to-scheduled-trips.js +53 -0
  4. package/db/migrations/postgresql/sqls/20230104135230-add-first-last-stop-to-scheduled-trips-down.sql +3 -0
  5. package/db/migrations/postgresql/sqls/20230104135230-add-first-last-stop-to-scheduled-trips-up.sql +3 -0
  6. package/dist/integration-engine/ropid-gtfs/RopidGTFSScheduledTripsModel.js +65 -44
  7. package/dist/integration-engine/ropid-gtfs/RopidGTFSScheduledTripsModel.js.map +1 -1
  8. package/dist/integration-engine/vehicle-positions/VehiclePositionsInterfaces.d.ts +4 -1
  9. package/dist/integration-engine/vehicle-positions/VehiclePositionsWorker.js +13 -5
  10. package/dist/integration-engine/vehicle-positions/VehiclePositionsWorker.js.map +1 -1
  11. package/dist/integration-engine/vehicle-positions/helpers/gtfs-trip-run/AbstractGTFSTripRunManager.d.ts +7 -3
  12. package/dist/integration-engine/vehicle-positions/helpers/gtfs-trip-run/AbstractGTFSTripRunManager.js +22 -3
  13. package/dist/integration-engine/vehicle-positions/helpers/gtfs-trip-run/AbstractGTFSTripRunManager.js.map +1 -1
  14. package/dist/integration-engine/vehicle-positions/models/VehiclePositionsPositionsModel.js +1 -3
  15. package/dist/integration-engine/vehicle-positions/models/VehiclePositionsPositionsModel.js.map +1 -1
  16. package/dist/integration-engine/vehicle-positions/models/VehiclePositionsRunsModel.d.ts +5 -2
  17. package/dist/integration-engine/vehicle-positions/models/VehiclePositionsRunsModel.js +6 -6
  18. package/dist/integration-engine/vehicle-positions/models/VehiclePositionsRunsModel.js.map +1 -1
  19. package/dist/integration-engine/vehicle-positions/models/VehiclePositionsTripsModel.js +1 -1
  20. package/dist/integration-engine/vehicle-positions/models/VehiclePositionsTripsModel.js.map +1 -1
  21. package/dist/integration-engine/vehicle-positions/models/helpers/VPPositionsMapper.js +1 -1
  22. package/dist/output-gateway/shared/data-access/FeatureFlagDictionary.d.ts +3 -0
  23. package/dist/output-gateway/shared/data-access/FeatureFlagDictionary.js +7 -0
  24. package/dist/output-gateway/shared/data-access/FeatureFlagDictionary.js.map +1 -0
  25. package/dist/output-gateway/shared/data-access/index.d.ts +1 -0
  26. package/dist/output-gateway/shared/data-access/index.js +18 -0
  27. package/dist/output-gateway/shared/data-access/index.js.map +1 -0
  28. package/dist/output-gateway/vehicle-positions/models/VehiclePositionsTripsModel.d.ts +1 -0
  29. package/dist/output-gateway/vehicle-positions/models/VehiclePositionsTripsModel.js +7 -0
  30. package/dist/output-gateway/vehicle-positions/models/VehiclePositionsTripsModel.js.map +1 -1
  31. package/dist/schema-definitions/gtfsrt-alerts/GtfsRtAlert.d.ts +2 -2
  32. package/dist/schema-definitions/ropid-gtfs/RopidGTFSPrecomputed.d.ts +6 -0
  33. package/dist/schema-definitions/ropid-gtfs/RopidGTFSPrecomputed.js +8 -0
  34. package/dist/schema-definitions/ropid-gtfs/RopidGTFSPrecomputed.js.map +1 -1
  35. package/dist/schema-definitions/ropid-gtfs/RopidGtfsSchedule.d.ts +1 -26
  36. package/dist/schema-definitions/shared/index.d.ts +1 -1
  37. package/dist/schema-definitions/vehicle-positions/index.d.ts +1 -26
  38. package/docs/implementation_documentation.md +12 -13
  39. package/docs/openapi-output.yaml +1 -1
  40. package/package.json +17 -12
package/README.md CHANGED
@@ -35,10 +35,10 @@ The APIs may be unstable. Therefore, we recommend to install this module as an e
35
35
 
36
36
  ```bash
37
37
  # Latest version
38
- yarn add --exact @golemio/pid@latest
38
+ npm install --save-exact @golemio/pid@latest
39
39
 
40
40
  # Development version
41
- yarn add --exact @golemio/pid@dev
41
+ npm install --save-exact @golemio/pid@dev
42
42
  ```
43
43
 
44
44
  <!-- ## Description -->
@@ -75,49 +75,68 @@ SELECT t.stop_sequence,
75
75
  WHERE t0.stop_id IS NOT NULL;
76
76
 
77
77
  INSERT INTO ropidgtfs_scheduled_trips_actual
78
- SELECT t0.*,
79
- CASE
80
- WHEN EXTRACT(HOUR FROM t0.min_stop_time) > 23
81
- THEN make_timestamptz(
82
- DATE_PART('year', t0.date + INTERVAL '1 day')::INT,
83
- DATE_PART('month', t0.date + INTERVAL '1 day')::INT,
84
- DATE_PART('day', t0.date + INTERVAL '1 day')::INT,
85
- DATE_PART('hour', t0.min_stop_time)::INT - 24,
86
- DATE_PART('minute', t0.min_stop_time)::INT,
87
- DATE_PART('second', t0.min_stop_time),
88
- 'Europe/Prague'
89
- )
90
- ELSE make_timestamptz(
91
- DATE_PART('year', t0.date)::INT,
92
- DATE_PART('month', t0.date)::INT,
93
- DATE_PART('day', t0.date)::INT,
94
- DATE_PART('hour', t0.min_stop_time)::INT,
95
- DATE_PART('minute', t0.min_stop_time)::INT,
96
- DATE_PART('second', t0.min_stop_time),
97
- 'Europe/Prague'
98
- )
99
- END as start_timestamp,
100
- CASE
101
- WHEN EXTRACT(HOUR FROM t0.max_stop_time) > 23
102
- THEN make_timestamptz(
103
- DATE_PART('year', t0.date + INTERVAL '1 day')::INT,
104
- DATE_PART('month', t0.date + INTERVAL '1 day')::INT,
105
- DATE_PART('day', t0.date + INTERVAL '1 day')::INT,
106
- DATE_PART('hour', t0.max_stop_time)::INT - 24,
107
- DATE_PART('minute', t0.max_stop_time)::INT,
108
- DATE_PART('second', t0.max_stop_time),
109
- 'Europe/Prague'
110
- )
111
- ELSE make_timestamptz(
112
- DATE_PART('year', t0.date)::INT,
113
- DATE_PART('month', t0.date)::INT,
114
- DATE_PART('day', t0.date)::INT,
115
- DATE_PART('hour', t0.max_stop_time)::INT,
116
- DATE_PART('minute', t0.max_stop_time)::INT,
117
- DATE_PART('second', t0.max_stop_time),
118
- 'Europe/Prague'
119
- )
120
- END as end_timestamp
78
+ SELECT
79
+ t0.origin_route_id,
80
+ t0.trip_id,
81
+ t0.service_id,
82
+ t0.run_number,
83
+ t0.date,
84
+ t0.route_id,
85
+ t0.route_type,
86
+ t0.route_short_name,
87
+ t0.is_regional,
88
+ t0.is_substitute_transport,
89
+ t0.is_night,
90
+ t0.trip_headsign,
91
+ t0.trip_short_name,
92
+ t0.block_id,
93
+ t0.exceptional,
94
+ t0.min_stop_time,
95
+ t0.max_stop_time,
96
+ CASE
97
+ WHEN EXTRACT(HOUR FROM t0.min_stop_time) > 23
98
+ THEN make_timestamptz(
99
+ DATE_PART('year', t0.date + INTERVAL '1 day')::INT,
100
+ DATE_PART('month', t0.date + INTERVAL '1 day')::INT,
101
+ DATE_PART('day', t0.date + INTERVAL '1 day')::INT,
102
+ DATE_PART('hour', t0.min_stop_time)::INT - 24,
103
+ DATE_PART('minute', t0.min_stop_time)::INT,
104
+ DATE_PART('second', t0.min_stop_time),
105
+ 'Europe/Prague'
106
+ )
107
+ ELSE make_timestamptz(
108
+ DATE_PART('year', t0.date)::INT,
109
+ DATE_PART('month', t0.date)::INT,
110
+ DATE_PART('day', t0.date)::INT,
111
+ DATE_PART('hour', t0.min_stop_time)::INT,
112
+ DATE_PART('minute', t0.min_stop_time)::INT,
113
+ DATE_PART('second', t0.min_stop_time),
114
+ 'Europe/Prague'
115
+ )
116
+ END as start_timestamp,
117
+ CASE
118
+ WHEN EXTRACT(HOUR FROM t0.max_stop_time) > 23
119
+ THEN make_timestamptz(
120
+ DATE_PART('year', t0.date + INTERVAL '1 day')::INT,
121
+ DATE_PART('month', t0.date + INTERVAL '1 day')::INT,
122
+ DATE_PART('day', t0.date + INTERVAL '1 day')::INT,
123
+ DATE_PART('hour', t0.max_stop_time)::INT - 24,
124
+ DATE_PART('minute', t0.max_stop_time)::INT,
125
+ DATE_PART('second', t0.max_stop_time),
126
+ 'Europe/Prague'
127
+ )
128
+ ELSE make_timestamptz(
129
+ DATE_PART('year', t0.date)::INT,
130
+ DATE_PART('month', t0.date)::INT,
131
+ DATE_PART('day', t0.date)::INT,
132
+ DATE_PART('hour', t0.max_stop_time)::INT,
133
+ DATE_PART('minute', t0.max_stop_time)::INT,
134
+ DATE_PART('second', t0.max_stop_time),
135
+ 'Europe/Prague'
136
+ )
137
+ END as end_timestamp,
138
+ t0.first_stop_id,
139
+ t0.last_stop_id
121
140
  FROM (
122
141
  SELECT
123
142
  t1.route_id AS origin_route_id,
@@ -136,7 +155,9 @@ FROM (
136
155
  t8.block_id,
137
156
  t8.exceptional,
138
157
  LEAST(t5.arrival_time::INTERVAL, t5.departure_time::INTERVAL) AS min_stop_time,
139
- GREATEST(t6.arrival_time::INTERVAL, t6.departure_time::INTERVAL) AS max_stop_time
158
+ GREATEST(t6.arrival_time::INTERVAL, t6.departure_time::INTERVAL) AS max_stop_time,
159
+ t5.stop_id AS first_stop_id,
160
+ t6.stop_id AS last_stop_id
140
161
  FROM ropidgtfs_run_numbers t1
141
162
  LEFT JOIN ropidgtfs_services_first14days t3 ON t1.service_id = t3.service_id
142
163
  LEFT JOIN ropidgtfs_trips_minmaxsequences t4 ON t1.trip_id = t4.trip_id
@@ -0,0 +1,53 @@
1
+ 'use strict';
2
+
3
+ var dbm;
4
+ var type;
5
+ var seed;
6
+ var fs = require('fs');
7
+ var path = require('path');
8
+ var Promise;
9
+
10
+ /**
11
+ * We receive the dbmigrate dependency from dbmigrate initially.
12
+ * This enables us to not have to rely on NODE_PATH.
13
+ */
14
+ exports.setup = function(options, seedLink) {
15
+ dbm = options.dbmigrate;
16
+ type = dbm.dataType;
17
+ seed = seedLink;
18
+ Promise = options.Promise;
19
+ };
20
+
21
+ exports.up = function(db) {
22
+ var filePath = path.join(__dirname, 'sqls', '20230104135230-add-first-last-stop-to-scheduled-trips-up.sql');
23
+ return new Promise( function( resolve, reject ) {
24
+ fs.readFile(filePath, {encoding: 'utf-8'}, function(err,data){
25
+ if (err) return reject(err);
26
+ console.log('received data: ' + data);
27
+
28
+ resolve(data);
29
+ });
30
+ })
31
+ .then(function(data) {
32
+ return db.runSql(data);
33
+ });
34
+ };
35
+
36
+ exports.down = function(db) {
37
+ var filePath = path.join(__dirname, 'sqls', '20230104135230-add-first-last-stop-to-scheduled-trips-down.sql');
38
+ return new Promise( function( resolve, reject ) {
39
+ fs.readFile(filePath, {encoding: 'utf-8'}, function(err,data){
40
+ if (err) return reject(err);
41
+ console.log('received data: ' + data);
42
+
43
+ resolve(data);
44
+ });
45
+ })
46
+ .then(function(data) {
47
+ return db.runSql(data);
48
+ });
49
+ };
50
+
51
+ exports._meta = {
52
+ "version": 1
53
+ };
@@ -0,0 +1,3 @@
1
+ ALTER TABLE ropidgtfs_scheduled_trips
2
+ DROP COLUMN first_stop_id,
3
+ DROP COLUMN last_stop_id;
@@ -0,0 +1,3 @@
1
+ ALTER TABLE ropidgtfs_scheduled_trips
2
+ ADD first_stop_id varchar(255) NULL,
3
+ ADD last_stop_id varchar(255) NULL;
@@ -30,49 +30,68 @@ class RopidGTFSScheduledTripsModel extends models_1.PostgresModel {
30
30
  this.createAndPopulateFromTmp = () => __awaiter(this, void 0, void 0, function* () {
31
31
  /* eslint-disable max-len */
32
32
  const sql = `
33
- SELECT t0.*,
34
- CASE
35
- WHEN EXTRACT(HOUR FROM t0.min_stop_time) > 23
36
- THEN make_timestamptz(
37
- DATE_PART('year', t0.date + INTERVAL '1 day')::INT,
38
- DATE_PART('month', t0.date + INTERVAL '1 day')::INT,
39
- DATE_PART('day', t0.date + INTERVAL '1 day')::INT,
40
- DATE_PART('hour', t0.min_stop_time)::INT - 24,
41
- DATE_PART('minute', t0.min_stop_time)::INT,
42
- DATE_PART('second', t0.min_stop_time),
43
- 'Europe/Prague'
44
- )
45
- ELSE make_timestamptz(
46
- DATE_PART('year', t0.date)::INT,
47
- DATE_PART('month', t0.date)::INT,
48
- DATE_PART('day', t0.date)::INT,
49
- DATE_PART('hour', t0.min_stop_time)::INT,
50
- DATE_PART('minute', t0.min_stop_time)::INT,
51
- DATE_PART('second', t0.min_stop_time),
52
- 'Europe/Prague'
53
- )
54
- END as start_timestamp,
55
- CASE
56
- WHEN EXTRACT(HOUR FROM t0.max_stop_time) > 23
57
- THEN make_timestamptz(
58
- DATE_PART('year', t0.date + INTERVAL '1 day')::INT,
59
- DATE_PART('month', t0.date + INTERVAL '1 day')::INT,
60
- DATE_PART('day', t0.date + INTERVAL '1 day')::INT,
61
- DATE_PART('hour', t0.max_stop_time)::INT - 24,
62
- DATE_PART('minute', t0.max_stop_time)::INT,
63
- DATE_PART('second', t0.max_stop_time),
64
- 'Europe/Prague'
65
- )
66
- ELSE make_timestamptz(
67
- DATE_PART('year', t0.date)::INT,
68
- DATE_PART('month', t0.date)::INT,
69
- DATE_PART('day', t0.date)::INT,
70
- DATE_PART('hour', t0.max_stop_time)::INT,
71
- DATE_PART('minute', t0.max_stop_time)::INT,
72
- DATE_PART('second', t0.max_stop_time),
73
- 'Europe/Prague'
74
- )
75
- END as end_timestamp
33
+ SELECT
34
+ t0.origin_route_id,
35
+ t0.trip_id,
36
+ t0.service_id,
37
+ t0.run_number,
38
+ t0.date,
39
+ t0.route_id,
40
+ t0.route_type,
41
+ t0.route_short_name,
42
+ t0.is_regional,
43
+ t0.is_substitute_transport,
44
+ t0.is_night,
45
+ t0.trip_headsign,
46
+ t0.trip_short_name,
47
+ t0.block_id,
48
+ t0.exceptional,
49
+ t0.min_stop_time,
50
+ t0.max_stop_time,
51
+ CASE
52
+ WHEN EXTRACT(HOUR FROM t0.min_stop_time) > 23
53
+ THEN make_timestamptz(
54
+ DATE_PART('year', t0.date + INTERVAL '1 day')::INT,
55
+ DATE_PART('month', t0.date + INTERVAL '1 day')::INT,
56
+ DATE_PART('day', t0.date + INTERVAL '1 day')::INT,
57
+ DATE_PART('hour', t0.min_stop_time)::INT - 24,
58
+ DATE_PART('minute', t0.min_stop_time)::INT,
59
+ DATE_PART('second', t0.min_stop_time),
60
+ 'Europe/Prague'
61
+ )
62
+ ELSE make_timestamptz(
63
+ DATE_PART('year', t0.date)::INT,
64
+ DATE_PART('month', t0.date)::INT,
65
+ DATE_PART('day', t0.date)::INT,
66
+ DATE_PART('hour', t0.min_stop_time)::INT,
67
+ DATE_PART('minute', t0.min_stop_time)::INT,
68
+ DATE_PART('second', t0.min_stop_time),
69
+ 'Europe/Prague'
70
+ )
71
+ END as start_timestamp,
72
+ CASE
73
+ WHEN EXTRACT(HOUR FROM t0.max_stop_time) > 23
74
+ THEN make_timestamptz(
75
+ DATE_PART('year', t0.date + INTERVAL '1 day')::INT,
76
+ DATE_PART('month', t0.date + INTERVAL '1 day')::INT,
77
+ DATE_PART('day', t0.date + INTERVAL '1 day')::INT,
78
+ DATE_PART('hour', t0.max_stop_time)::INT - 24,
79
+ DATE_PART('minute', t0.max_stop_time)::INT,
80
+ DATE_PART('second', t0.max_stop_time),
81
+ 'Europe/Prague'
82
+ )
83
+ ELSE make_timestamptz(
84
+ DATE_PART('year', t0.date)::INT,
85
+ DATE_PART('month', t0.date)::INT,
86
+ DATE_PART('day', t0.date)::INT,
87
+ DATE_PART('hour', t0.max_stop_time)::INT,
88
+ DATE_PART('minute', t0.max_stop_time)::INT,
89
+ DATE_PART('second', t0.max_stop_time),
90
+ 'Europe/Prague'
91
+ )
92
+ END as end_timestamp,
93
+ t0.first_stop_id,
94
+ t0.last_stop_id
76
95
  FROM (
77
96
  SELECT
78
97
  t1.route_id AS origin_route_id,
@@ -91,7 +110,9 @@ class RopidGTFSScheduledTripsModel extends models_1.PostgresModel {
91
110
  t8.block_id,
92
111
  t8.exceptional,
93
112
  LEAST(t5.arrival_time::INTERVAL, t5.departure_time::INTERVAL) AS min_stop_time,
94
- GREATEST(t6.arrival_time::INTERVAL, t6.departure_time::INTERVAL) AS max_stop_time
113
+ GREATEST(t6.arrival_time::INTERVAL, t6.departure_time::INTERVAL) AS max_stop_time,
114
+ t5.stop_id AS first_stop_id,
115
+ t6.stop_id AS last_stop_id
95
116
  FROM "${ropid_gtfs_1.RopidGTFS.pgSchema}".ropidgtfs_run_numbers_tmp t1
96
117
  LEFT JOIN "${ropid_gtfs_1.RopidGTFS.pgSchema}".ropidgtfs_services_first14days_tmp t3 ON t1.service_id = t3.service_id
97
118
  LEFT JOIN "${ropid_gtfs_1.RopidGTFS.pgSchema}".ropidgtfs_trips_minmaxsequences_tmp t4 ON t1.trip_id = t4.trip_id
@@ -1 +1 @@
1
- {"version":3,"file":"RopidGTFSScheduledTripsModel.js","sourceRoot":"","sources":["../../../src/integration-engine/ropid-gtfs/RopidGTFSScheduledTripsModel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RopidGTFSScheduledTripsModel.js","sourceRoot":"","sources":["../../../src/integration-engine/ropid-gtfs/RopidGTFSScheduledTripsModel.ts"],"names":[],"mappings":"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"}
@@ -116,7 +116,10 @@ export interface ILastPositionProperties {
116
116
  atStopStreak: IVPTripsComputedPositionAtStopStreak;
117
117
  }
118
118
  export interface IPropagateDelay {
119
- nextGtfsTrips: string[];
119
+ nextGtfsTrips: Array<{
120
+ trip_id: string;
121
+ requiredTurnaroundSeconds?: number | undefined;
122
+ }>;
120
123
  currentOriginTimestamp: number;
121
124
  currentGtfsTripId: string;
122
125
  currentRegistrationNumber: number;
@@ -222,9 +222,7 @@ class VehiclePositionsWorker extends workers_1.BaseWorker {
222
222
  results.forEach((r) => {
223
223
  const tripDescriptor = {
224
224
  scheduleRelationship: r.last_position.is_canceled ? "CANCELED" : "SCHEDULED",
225
- startDate: (0, moment_timezone_1.default)(+r.start_timestamp)
226
- .utc()
227
- .format("YYYYMMDD"),
225
+ startDate: (0, moment_timezone_1.default)(+r.start_timestamp).utc().format("YYYYMMDD"),
228
226
  startTime: r.start_time,
229
227
  tripId: r.gtfs_trip_id,
230
228
  routeId: r.gtfs_route_id,
@@ -329,7 +327,12 @@ class VehiclePositionsWorker extends workers_1.BaseWorker {
329
327
  return;
330
328
  let turnTimeAcc = (+results[0].start_timestamp - moment_timezone_1.default.utc(data.currentEndTime).valueOf()) / 1000;
331
329
  const positionsToUpdate = results.map((item, i) => {
332
- turnTimeAcc += i > 0 ? (results[i].start_timestamp - results[i - 1].end_timestamp) / 1000 : 0;
330
+ var _a, _b;
331
+ const requiredTurnaroundSeconds = (_b = (_a = data.nextGtfsTrips.find((element) => element.trip_id === results[i].gtfs_trip_id)) === null || _a === void 0 ? void 0 : _a.requiredTurnaroundSeconds) !== null && _b !== void 0 ? _b : 0;
332
+ turnTimeAcc +=
333
+ i > 0
334
+ ? (results[i].start_timestamp - results[i - 1].end_timestamp) / 1000 - requiredTurnaroundSeconds
335
+ : -requiredTurnaroundSeconds;
333
336
  return {
334
337
  id: item.last_position_id,
335
338
  delay: Math.max(0, data.currentDelay - turnTimeAcc),
@@ -358,7 +361,12 @@ class VehiclePositionsWorker extends workers_1.BaseWorker {
358
361
  currentRegistrationNumber: vehicle_registration_number,
359
362
  currentStartTime: gtfsCurrentTrip.start_timestamp,
360
363
  currentEndTime: gtfsCurrentTrip.end_timestamp,
361
- nextGtfsTrips: gtfsNextTrips.map((trip) => trip.trip_id),
364
+ nextGtfsTrips: gtfsNextTrips.map((trip) => {
365
+ return {
366
+ trip_id: trip.trip_id,
367
+ requiredTurnaroundSeconds: trip.requiredTurnaroundSeconds,
368
+ };
369
+ }),
362
370
  });
363
371
  }
364
372
  }
@@ -1 +1 @@
1
- {"version":3,"file":"VehiclePositionsWorker.js","sourceRoot":"","sources":["../../../src/integration-engine/vehicle-positions/VehiclePositionsWorker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VehiclePositionsWorker.js","sourceRoot":"","sources":["../../../src/integration-engine/vehicle-positions/VehiclePositionsWorker.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
- import { Moment } from "@golemio/core/dist/shared/moment-timezone";
2
1
  import { IVehiclePositionsSchedule } from "../..";
3
- import { IGtfsRunTripCache, VehiclePositionsPositionsModel, VehiclePositionsTripsModel, VehiclePositionsRunsModel } from "../../models";
2
+ import { IGtfsRunTripCache, VehiclePositionsPositionsModel, VehiclePositionsRunsModel, VehiclePositionsTripsModel } from "../../models";
3
+ import { IVehiclePositionsRunCommon } from "../../transformations";
4
4
  import { RunTripsRedisRepository } from "../../workers/runs/tasks/data-access/RunTripsRedisRepository";
5
5
  import { IMetroRunInputForProcessing } from "../../workers/runs/tasks/interfaces/IMetroRunInputForProcessing";
6
- import { IVehiclePositionsRunCommon } from "../../transformations";
6
+ import { Moment } from "@golemio/core/dist/shared/moment-timezone";
7
7
  import { IDelayMessage } from "./interfaces/IDelayMessage";
8
8
  export declare abstract class AbstractGTFSTripRunManager {
9
9
  protected readonly positionsRepository: VehiclePositionsPositionsModel;
@@ -11,6 +11,8 @@ export declare abstract class AbstractGTFSTripRunManager {
11
11
  protected readonly runsRepository: VehiclePositionsRunsModel;
12
12
  protected readonly runTripsRedisRepository: RunTripsRedisRepository;
13
13
  protected readonly testMode: boolean;
14
+ private turnaroundEstimateInSeconds;
15
+ private nodeExtractRegex;
14
16
  constructor(positionsRepository: VehiclePositionsPositionsModel, tripsRepository: VehiclePositionsTripsModel, runsRepository: VehiclePositionsRunsModel, runTripsRedisRepository: RunTripsRedisRepository, testMode?: boolean);
15
17
  abstract generateDelayMsg(schedule: IGtfsRunTripCache[], input: IVehiclePositionsRunCommon | IMetroRunInputForProcessing): Promise<IDelayMessage>;
16
18
  setAndReturnScheduledTrips: (scheduleData: IVehiclePositionsSchedule) => Promise<IGtfsRunTripCache[]>;
@@ -21,4 +23,6 @@ export declare abstract class AbstractGTFSTripRunManager {
21
23
  */
22
24
  protected getAdjacentTrips(schedule: IGtfsRunTripCache[], timestampScheduled: Moment, currentTripId: string | undefined): IGtfsRunTripCache[];
23
25
  private isTripAdjacent;
26
+ private isFollowupConnection;
27
+ private getNodeId;
24
28
  }