@golemio/pid 2.11.6-dev.1157246600 → 2.11.6-dev.1157542305
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/17_blocked_trains.sql +5 -8
- package/db/example/redis/publicVehiclePositionsMock.json +26 -8
- package/db/migrations/postgresql/20240122141600-public-api-detailed-endpoint.js +53 -0
- package/db/migrations/postgresql/sqls/20240122141600-public-api-detailed-endpoint-down.sql +16 -0
- package/db/migrations/postgresql/sqls/20240122141600-public-api-detailed-endpoint-up.sql +137 -0
- package/dist/integration-engine/ioc/Di.d.ts +2 -1
- package/dist/integration-engine/ioc/Di.js.map +1 -1
- package/dist/integration-engine/ropid-gtfs/RopidGTFSTripsModel.js +1 -1
- package/dist/integration-engine/ropid-gtfs/RopidGTFSTripsModel.js.map +1 -1
- package/dist/integration-engine/ropid-gtfs/data-access/cache/DelayComputationRedisRepository.d.ts +1 -0
- package/dist/integration-engine/ropid-gtfs/data-access/cache/DelayComputationRedisRepository.js +27 -1
- package/dist/integration-engine/ropid-gtfs/data-access/cache/DelayComputationRedisRepository.js.map +1 -1
- package/dist/integration-engine/ropid-gtfs/data-access/precomputed/TripScheduleRepository.js +4 -2
- package/dist/integration-engine/ropid-gtfs/data-access/precomputed/TripScheduleRepository.js.map +1 -1
- package/dist/integration-engine/ropid-gtfs/interfaces/TripModelInterfaces.d.ts +1 -0
- package/dist/integration-engine/vehicle-positions/ioc/Di.js +8 -2
- package/dist/integration-engine/vehicle-positions/ioc/Di.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/ioc/VPContainerToken.d.ts +4 -1
- package/dist/integration-engine/vehicle-positions/ioc/VPContainerToken.js +4 -1
- package/dist/integration-engine/vehicle-positions/ioc/VPContainerToken.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/VPWorker.js +2 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/VPWorker.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/TripsRepository.js +13 -2
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/TripsRepository.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/cache/PublicApiCacheRepository.js +2 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/cache/PublicApiCacheRepository.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/cache/PublicStopTimeCacheRepository.d.ts +7 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/cache/PublicStopTimeCacheRepository.js +70 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/cache/PublicStopTimeCacheRepository.js.map +1 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/helpers/RawQueryProvider.js +7 -3
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/helpers/RawQueryProvider.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/helpers/TripsMapper.js +1 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/helpers/TripsMapper.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/interfaces/TripRepositoryInterfaces.d.ts +13 -2
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/views/PublicStopTimeRepository.d.ts +9 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/views/PublicStopTimeRepository.js +54 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/data-access/views/PublicStopTimeRepository.js.map +1 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/DelayComputationManager.d.ts +2 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/DelayComputationManager.js +9 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/DelayComputationManager.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/VPUtils.js +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/VPUtils.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/anchor-points/AnchorPointSegmenter.js +0 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/helpers/anchor-points/AnchorPointSegmenter.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/interfaces/VPInterfaces.d.ts +2 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/ProcessRegionalBusPositionsTask.d.ts +4 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/ProcessRegionalBusPositionsTask.js +14 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/ProcessRegionalBusPositionsTask.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/RefreshPublicStopTimeCacheTask.d.ts +19 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/RefreshPublicStopTimeCacheTask.js +117 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/RefreshPublicStopTimeCacheTask.js.map +1 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/{RefreshPublicCacheTask.d.ts → RefreshPublicTripCacheTask.d.ts} +3 -3
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/{RefreshPublicCacheTask.js → RefreshPublicTripCacheTask.js} +15 -15
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/RefreshPublicTripCacheTask.js.map +1 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/UpdateDelayTask.d.ts +4 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/UpdateDelayTask.js +14 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/UpdateDelayTask.js.map +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/transformations/PublicApiTripTransformation.d.ts +2 -0
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/transformations/PublicApiTripTransformation.js +21 -3
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/transformations/PublicApiTripTransformation.js.map +1 -1
- package/dist/output-gateway/pid/PIDRouter.d.ts +1 -1
- package/dist/output-gateway/pid/PIDRouter.js +1 -1
- package/dist/output-gateway/pid/PIDRouter.js.map +1 -1
- package/dist/output-gateway/public/controllers/v1/PublicVehiclePositionsController.d.ts +6 -5
- package/dist/output-gateway/public/controllers/v1/PublicVehiclePositionsController.js +22 -3
- package/dist/output-gateway/public/controllers/v1/PublicVehiclePositionsController.js.map +1 -1
- package/dist/output-gateway/public/controllers/v1/interfaces/PublicParamsInterfaces.d.ts +12 -0
- package/dist/output-gateway/public/controllers/v1/interfaces/PublicParamsInterfaces.js +3 -0
- package/dist/output-gateway/public/controllers/v1/interfaces/PublicParamsInterfaces.js.map +1 -0
- package/dist/output-gateway/public/data-access/VehicleDescriptorCachedRepository.d.ts +13 -0
- package/dist/output-gateway/public/data-access/VehicleDescriptorCachedRepository.js +71 -0
- package/dist/output-gateway/public/data-access/VehicleDescriptorCachedRepository.js.map +1 -0
- package/dist/output-gateway/public/data-access/redis/DelayComputationRepository.d.ts +10 -0
- package/dist/output-gateway/public/data-access/redis/DelayComputationRepository.js +68 -0
- package/dist/output-gateway/public/data-access/redis/DelayComputationRepository.js.map +1 -0
- package/dist/output-gateway/public/data-access/redis/PublicStopTimeRepository.d.ts +10 -0
- package/dist/output-gateway/public/data-access/redis/PublicStopTimeRepository.js +68 -0
- package/dist/output-gateway/public/data-access/redis/PublicStopTimeRepository.js.map +1 -0
- package/dist/output-gateway/public/data-access/redis/PublicVehiclePositionsRepository.d.ts +3 -1
- package/dist/output-gateway/public/data-access/redis/PublicVehiclePositionsRepository.js +64 -7
- package/dist/output-gateway/public/data-access/redis/PublicVehiclePositionsRepository.js.map +1 -1
- package/dist/output-gateway/public/domain/PublicApiDetailedTripInterfaces.d.ts +48 -0
- package/dist/output-gateway/public/domain/PublicApiDetailedTripInterfaces.js +3 -0
- package/dist/output-gateway/public/domain/PublicApiDetailedTripInterfaces.js.map +1 -0
- package/dist/output-gateway/public/domain/repository/IDelayComputationRepository.d.ts +4 -0
- package/dist/output-gateway/public/domain/repository/IDelayComputationRepository.js +3 -0
- package/dist/output-gateway/public/domain/repository/IDelayComputationRepository.js.map +1 -0
- package/dist/output-gateway/public/domain/repository/IStopTimeRepository.d.ts +4 -0
- package/dist/output-gateway/public/domain/repository/IStopTimeRepository.js +3 -0
- package/dist/output-gateway/public/domain/repository/IStopTimeRepository.js.map +1 -0
- package/dist/output-gateway/public/domain/repository/IVehiclePositionsRepository.d.ts +3 -1
- package/dist/output-gateway/public/ioc/Di.js +20 -0
- package/dist/output-gateway/public/ioc/Di.js.map +1 -1
- package/dist/output-gateway/public/ioc/OgModuleToken.d.ts +8 -0
- package/dist/output-gateway/public/ioc/OgModuleToken.js +8 -0
- package/dist/output-gateway/public/ioc/OgModuleToken.js.map +1 -1
- package/dist/output-gateway/public/routers/v1/PublicRouter.d.ts +1 -1
- package/dist/output-gateway/public/routers/v1/PublicRouter.js +4 -2
- package/dist/output-gateway/public/routers/v1/PublicRouter.js.map +1 -1
- package/dist/output-gateway/public/routers/v1/helpers/CustomScopeValidator.d.ts +6 -0
- package/dist/output-gateway/public/routers/v1/helpers/CustomScopeValidator.js +26 -0
- package/dist/output-gateway/public/routers/v1/helpers/CustomScopeValidator.js.map +1 -0
- package/dist/output-gateway/public/routers/v1/helpers/DetailedTripScopeEnum.d.ts +6 -0
- package/dist/output-gateway/public/routers/v1/helpers/DetailedTripScopeEnum.js +11 -0
- package/dist/output-gateway/public/routers/v1/helpers/DetailedTripScopeEnum.js.map +1 -0
- package/dist/output-gateway/public/service/facade/DetailedTripFacade.d.ts +8 -0
- package/dist/output-gateway/public/service/facade/DetailedTripFacade.js +42 -0
- package/dist/output-gateway/public/service/facade/DetailedTripFacade.js.map +1 -0
- package/dist/output-gateway/public/service/facade/VehiclePositionsFacade.js +10 -1
- package/dist/output-gateway/public/service/facade/VehiclePositionsFacade.js.map +1 -1
- package/dist/output-gateway/public/service/helpers/trip-scope/TripScopeHelper.d.ts +6 -0
- package/dist/output-gateway/public/service/helpers/trip-scope/TripScopeHelper.js +11 -0
- package/dist/output-gateway/public/service/helpers/trip-scope/TripScopeHelper.js.map +1 -0
- package/dist/output-gateway/public/service/helpers/trip-scope/strategy/AbstractTripScopeHandler.d.ts +5 -0
- package/dist/output-gateway/public/service/helpers/trip-scope/strategy/AbstractTripScopeHandler.js +7 -0
- package/dist/output-gateway/public/service/helpers/trip-scope/strategy/AbstractTripScopeHandler.js.map +1 -0
- package/dist/output-gateway/public/service/helpers/trip-scope/strategy/InfoTripScopeHelper.d.ts +8 -0
- package/dist/output-gateway/public/service/helpers/trip-scope/strategy/InfoTripScopeHelper.js +41 -0
- package/dist/output-gateway/public/service/helpers/trip-scope/strategy/InfoTripScopeHelper.js.map +1 -0
- package/dist/output-gateway/public/service/helpers/trip-scope/strategy/ShapesTripScopeHelper.d.ts +10 -0
- package/dist/output-gateway/public/service/helpers/trip-scope/strategy/ShapesTripScopeHelper.js +53 -0
- package/dist/output-gateway/public/service/helpers/trip-scope/strategy/ShapesTripScopeHelper.js.map +1 -0
- package/dist/output-gateway/public/service/helpers/trip-scope/strategy/StopTimesTripScopeHelper.d.ts +12 -0
- package/dist/output-gateway/public/service/helpers/trip-scope/strategy/StopTimesTripScopeHelper.js +77 -0
- package/dist/output-gateway/public/service/helpers/trip-scope/strategy/StopTimesTripScopeHelper.js.map +1 -0
- package/dist/output-gateway/public/service/helpers/trip-scope/strategy/TripScopeHandlerFactory.d.ts +9 -0
- package/dist/output-gateway/public/service/helpers/trip-scope/strategy/TripScopeHandlerFactory.js +30 -0
- package/dist/output-gateway/public/service/helpers/trip-scope/strategy/TripScopeHandlerFactory.js.map +1 -0
- package/dist/output-gateway/public/service/helpers/trip-scope/strategy/VehicleDescriptorTripScopeHelper.d.ts +10 -0
- package/dist/output-gateway/public/service/helpers/trip-scope/strategy/VehicleDescriptorTripScopeHelper.js +54 -0
- package/dist/output-gateway/public/service/helpers/trip-scope/strategy/VehicleDescriptorTripScopeHelper.js.map +1 -0
- package/dist/output-gateway/public/service/transformations/PublicVehiclePositionsTransformation.d.ts +1 -1
- package/dist/output-gateway/public/service/transformations/PublicVehiclePositionsTransformation.js +15 -3
- package/dist/output-gateway/public/service/transformations/PublicVehiclePositionsTransformation.js.map +1 -1
- package/dist/output-gateway/public/service/transformations/scopes/PublicVPTripInfoTransformation.d.ts +26 -0
- package/dist/output-gateway/public/service/transformations/scopes/PublicVPTripInfoTransformation.js +47 -0
- package/dist/output-gateway/public/service/transformations/scopes/PublicVPTripInfoTransformation.js.map +1 -0
- package/dist/output-gateway/public/service/transformations/scopes/PublicVPTripShapesTransformation.d.ts +7 -0
- package/dist/output-gateway/public/service/transformations/scopes/PublicVPTripShapesTransformation.js +21 -0
- package/dist/output-gateway/public/service/transformations/scopes/PublicVPTripShapesTransformation.js.map +1 -0
- package/dist/output-gateway/public/service/transformations/scopes/PublicVPTripStopTimesTransformation.d.ts +7 -0
- package/dist/output-gateway/public/service/transformations/scopes/PublicVPTripStopTimesTransformation.js +41 -0
- package/dist/output-gateway/public/service/transformations/scopes/PublicVPTripStopTimesTransformation.js.map +1 -0
- package/dist/output-gateway/public/service/transformations/scopes/PublicVPVehicleDescriptorTransformation.d.ts +14 -0
- package/dist/output-gateway/public/service/transformations/scopes/PublicVPVehicleDescriptorTransformation.js +22 -0
- package/dist/output-gateway/public/service/transformations/scopes/PublicVPVehicleDescriptorTransformation.js.map +1 -0
- package/dist/output-gateway/vehicle-positions/data-access/TripRepository.js +1 -0
- package/dist/output-gateway/vehicle-positions/data-access/TripRepository.js.map +1 -1
- package/dist/schema-definitions/ropid-gtfs/RopidGTFSPrecomputed.d.ts +3 -0
- package/dist/schema-definitions/ropid-gtfs/RopidGTFSPrecomputed.js +4 -0
- package/dist/schema-definitions/ropid-gtfs/RopidGTFSPrecomputed.js.map +1 -1
- package/dist/schema-definitions/ropid-gtfs/redis/interfaces/IDelayComputationDto.d.ts +6 -0
- package/dist/schema-definitions/ropid-gtfs/redis/schemas/DelayComputationDtoSchema.js +19 -2
- package/dist/schema-definitions/ropid-gtfs/redis/schemas/DelayComputationDtoSchema.js.map +1 -1
- package/dist/schema-definitions/vehicle-positions/models/VPTripsModel.d.ts +1 -0
- package/dist/schema-definitions/vehicle-positions/models/VPTripsModel.js +4 -0
- package/dist/schema-definitions/vehicle-positions/models/VPTripsModel.js.map +1 -1
- package/dist/schema-definitions/vehicle-positions/models/interfaces/IVPTripsModel.d.ts +1 -0
- package/dist/schema-definitions/vehicle-positions/models/views/PublicStopTimeModel.d.ts +10 -0
- package/dist/schema-definitions/vehicle-positions/models/views/PublicStopTimeModel.js +33 -0
- package/dist/schema-definitions/vehicle-positions/models/views/PublicStopTimeModel.js.map +1 -0
- package/dist/schema-definitions/vehicle-positions/models/views/index.d.ts +1 -0
- package/dist/schema-definitions/vehicle-positions/models/views/index.js +1 -0
- package/dist/schema-definitions/vehicle-positions/models/views/index.js.map +1 -1
- package/dist/schema-definitions/vehicle-positions/models/views/interfaces/IPublicStopTimeDto.d.ts +6 -0
- package/dist/{output-gateway/public/controllers/v1/IParams.js → schema-definitions/vehicle-positions/models/views/interfaces/IPublicStopTimeDto.js} +1 -1
- package/dist/schema-definitions/vehicle-positions/models/views/interfaces/IPublicStopTimeDto.js.map +1 -0
- package/dist/schema-definitions/vehicle-positions/redis/const.d.ts +2 -0
- package/dist/schema-definitions/vehicle-positions/redis/const.js +3 -1
- package/dist/schema-definitions/vehicle-positions/redis/const.js.map +1 -1
- package/dist/schema-definitions/vehicle-positions/redis/interfaces/IGtfsRunTripCacheDto.d.ts +1 -0
- package/dist/schema-definitions/vehicle-positions/redis/interfaces/IPublicApiCacheDto.d.ts +13 -0
- package/dist/schema-definitions/vehicle-positions/redis/interfaces/IPublicStopTimeCacheDto.d.ts +5 -0
- package/dist/schema-definitions/vehicle-positions/redis/interfaces/IPublicStopTimeCacheDto.js +3 -0
- package/dist/schema-definitions/vehicle-positions/redis/interfaces/IPublicStopTimeCacheDto.js.map +1 -0
- package/dist/schema-definitions/vehicle-positions/redis/schemas/GtfsRunTripCacheDtoSchema.js +1 -0
- package/dist/schema-definitions/vehicle-positions/redis/schemas/GtfsRunTripCacheDtoSchema.js.map +1 -1
- package/dist/schema-definitions/vehicle-positions/redis/schemas/PublicApiCacheDtoSchema.js +49 -0
- package/dist/schema-definitions/vehicle-positions/redis/schemas/PublicApiCacheDtoSchema.js.map +1 -1
- package/dist/schema-definitions/vehicle-positions/redis/schemas/PublicStopTimeCacheDtoSchema.d.ts +4 -0
- package/dist/schema-definitions/vehicle-positions/redis/schemas/PublicStopTimeCacheDtoSchema.js +41 -0
- package/dist/schema-definitions/vehicle-positions/redis/schemas/PublicStopTimeCacheDtoSchema.js.map +1 -0
- package/docs/implementation_documentation.md +31 -4
- package/docs/openapi-input.yaml +4 -5
- package/docs/openapi-output.yaml +262 -3
- package/package.json +1 -1
- package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/RefreshPublicCacheTask.js.map +0 -1
- package/dist/output-gateway/public/controllers/v1/IParams.d.ts +0 -7
- package/dist/output-gateway/public/controllers/v1/IParams.js.map +0 -1
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { ISimpleConfig } from "@golemio/core/dist/helpers/configuration/ISimpleConfig";
|
|
2
|
+
import { IoRedisConnector } from "@golemio/core/dist/helpers/data-access/redis/IoRedisConnector";
|
|
3
|
+
import { ILogger } from "@golemio/core/dist/helpers/logger";
|
|
4
|
+
import { AbstractEmptyTask } from "@golemio/core/dist/integration-engine/workers";
|
|
5
|
+
import { PublicStopTimeCacheRepository } from "../data-access/cache/PublicStopTimeCacheRepository";
|
|
6
|
+
import { PublicStopTimeRepository } from "../data-access/views/PublicStopTimeRepository";
|
|
7
|
+
export declare class RefreshPublicStopTimeCacheTask extends AbstractEmptyTask {
|
|
8
|
+
private logger;
|
|
9
|
+
private redisClient;
|
|
10
|
+
private publicStopTimeRepository;
|
|
11
|
+
private publicStopTimeCacheRepository;
|
|
12
|
+
readonly queueName = "refreshPublicStopTimeCache";
|
|
13
|
+
readonly queueTtl = 10000;
|
|
14
|
+
private lockTimeout;
|
|
15
|
+
private refreshInterval;
|
|
16
|
+
constructor(config: ISimpleConfig, logger: ILogger, redisClient: IoRedisConnector, publicStopTimeRepository: PublicStopTimeRepository, publicStopTimeCacheRepository: PublicStopTimeCacheRepository);
|
|
17
|
+
protected execute(): Promise<void>;
|
|
18
|
+
private createMutex;
|
|
19
|
+
}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
14
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
15
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
16
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
17
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
18
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
19
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
20
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
21
|
+
});
|
|
22
|
+
};
|
|
23
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
24
|
+
exports.RefreshPublicStopTimeCacheTask = void 0;
|
|
25
|
+
const VPContainerToken_1 = require("../../../ioc/VPContainerToken");
|
|
26
|
+
const IoRedisConnector_1 = require("@golemio/core/dist/helpers/data-access/redis/IoRedisConnector");
|
|
27
|
+
const CoreToken_1 = require("@golemio/core/dist/helpers/ioc/CoreToken");
|
|
28
|
+
const integration_engine_1 = require("@golemio/core/dist/integration-engine");
|
|
29
|
+
const ioc_1 = require("@golemio/core/dist/integration-engine/ioc");
|
|
30
|
+
const workers_1 = require("@golemio/core/dist/integration-engine/workers");
|
|
31
|
+
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
32
|
+
const redis_semaphore_1 = require("@golemio/core/dist/shared/redis-semaphore");
|
|
33
|
+
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
34
|
+
const promises_1 = require("node:timers/promises");
|
|
35
|
+
const constants_1 = require("../constants");
|
|
36
|
+
const PublicStopTimeCacheRepository_1 = require("../data-access/cache/PublicStopTimeCacheRepository");
|
|
37
|
+
const PublicStopTimeRepository_1 = require("../data-access/views/PublicStopTimeRepository");
|
|
38
|
+
const VPUtils_1 = require("../helpers/VPUtils");
|
|
39
|
+
let RefreshPublicStopTimeCacheTask = exports.RefreshPublicStopTimeCacheTask = class RefreshPublicStopTimeCacheTask extends workers_1.AbstractEmptyTask {
|
|
40
|
+
constructor(config, logger, redisClient, publicStopTimeRepository, publicStopTimeCacheRepository) {
|
|
41
|
+
super(constants_1.WORKER_NAME);
|
|
42
|
+
this.logger = logger;
|
|
43
|
+
this.redisClient = redisClient;
|
|
44
|
+
this.publicStopTimeRepository = publicStopTimeRepository;
|
|
45
|
+
this.publicStopTimeCacheRepository = publicStopTimeCacheRepository;
|
|
46
|
+
this.queueName = "refreshPublicStopTimeCache";
|
|
47
|
+
this.queueTtl = 10000; // 10s
|
|
48
|
+
this.lockTimeout = config.getValue("old.datasources.pid.vehicle-positions.publicCache.mutexLockStopTimeTimeout", 6000); // default 6s
|
|
49
|
+
this.refreshInterval = this.lockTimeout * 0.8;
|
|
50
|
+
}
|
|
51
|
+
execute() {
|
|
52
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
53
|
+
const startDateTime = new Date();
|
|
54
|
+
const mutex = this.createMutex();
|
|
55
|
+
const lockAcquired = yield mutex.tryAcquire();
|
|
56
|
+
if (!lockAcquired) {
|
|
57
|
+
this.logger.info(`${this.constructor.name}: mutex lock was not acquired`);
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
try {
|
|
61
|
+
const stopTimes = yield this.publicStopTimeRepository.findAll();
|
|
62
|
+
if (stopTimes.length === 0) {
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
const data = new Map();
|
|
66
|
+
for (const stopTime of stopTimes) {
|
|
67
|
+
if (!data.has(stopTime.gtfs_trip_id)) {
|
|
68
|
+
data.set(stopTime.gtfs_trip_id, []);
|
|
69
|
+
}
|
|
70
|
+
data.get(stopTime.gtfs_trip_id).push({
|
|
71
|
+
sequence: stopTime.stop_sequence,
|
|
72
|
+
arr_delay: stopTime.stop_arr_delay,
|
|
73
|
+
dep_delay: stopTime.stop_dep_delay,
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
yield this.publicStopTimeCacheRepository.createOrUpdate(data, VPUtils_1.VPUtils.DELAY_COMPUTATION_CACHE_TTL);
|
|
77
|
+
}
|
|
78
|
+
catch (err) {
|
|
79
|
+
if (err instanceof golemio_errors_1.AbstractGolemioError) {
|
|
80
|
+
throw err;
|
|
81
|
+
}
|
|
82
|
+
throw new golemio_errors_1.GeneralError(`${this.constructor.name}: error while refreshing public stop time cache`, this.constructor.name, err);
|
|
83
|
+
}
|
|
84
|
+
finally {
|
|
85
|
+
yield mutex.release();
|
|
86
|
+
}
|
|
87
|
+
const ellapsedTimeInMs = new Date().getTime() - startDateTime.getTime();
|
|
88
|
+
this.logger.info(`${this.constructor.name}: finished in ${ellapsedTimeInMs}ms`);
|
|
89
|
+
if (ellapsedTimeInMs < this.refreshInterval) {
|
|
90
|
+
yield (0, promises_1.setTimeout)(this.refreshInterval - ellapsedTimeInMs);
|
|
91
|
+
}
|
|
92
|
+
integration_engine_1.QueueManager.sendMessageToExchange(this.queuePrefix, this.queueName, {});
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
createMutex() {
|
|
96
|
+
return new redis_semaphore_1.Mutex(this.redisClient.getConnection(), this.queueName, {
|
|
97
|
+
acquireAttemptsLimit: 1,
|
|
98
|
+
lockTimeout: this.lockTimeout,
|
|
99
|
+
refreshInterval: this.refreshInterval,
|
|
100
|
+
onLockLost: (err) => {
|
|
101
|
+
this.logger.error(err, `${this.constructor.name}: mutex lock was lost`);
|
|
102
|
+
},
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
};
|
|
106
|
+
exports.RefreshPublicStopTimeCacheTask = RefreshPublicStopTimeCacheTask = __decorate([
|
|
107
|
+
(0, tsyringe_1.injectable)(),
|
|
108
|
+
__param(0, (0, tsyringe_1.inject)(CoreToken_1.CoreToken.SimpleConfig)),
|
|
109
|
+
__param(1, (0, tsyringe_1.inject)(CoreToken_1.CoreToken.Logger)),
|
|
110
|
+
__param(2, (0, tsyringe_1.inject)(ioc_1.ContainerToken.RedisConnector)),
|
|
111
|
+
__param(3, (0, tsyringe_1.inject)(VPContainerToken_1.VPContainerToken.PublicStopTimeRepository)),
|
|
112
|
+
__param(4, (0, tsyringe_1.inject)(VPContainerToken_1.VPContainerToken.PublicStopTimeCacheRepository)),
|
|
113
|
+
__metadata("design:paramtypes", [Object, Object, IoRedisConnector_1.IoRedisConnector,
|
|
114
|
+
PublicStopTimeRepository_1.PublicStopTimeRepository,
|
|
115
|
+
PublicStopTimeCacheRepository_1.PublicStopTimeCacheRepository])
|
|
116
|
+
], RefreshPublicStopTimeCacheTask);
|
|
117
|
+
//# sourceMappingURL=RefreshPublicStopTimeCacheTask.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RefreshPublicStopTimeCacheTask.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/RefreshPublicStopTimeCacheTask.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,13 +4,13 @@ import { ILogger } from "@golemio/core/dist/helpers/logger";
|
|
|
4
4
|
import { AbstractEmptyTask } from "@golemio/core/dist/integration-engine/workers";
|
|
5
5
|
import { PublicApiCacheRepository } from "../data-access/cache/PublicApiCacheRepository";
|
|
6
6
|
import { PublicApiTripTransformation } from "../transformations/PublicApiTripTransformation";
|
|
7
|
-
export declare class
|
|
7
|
+
export declare class RefreshPublicTripCacheTask extends AbstractEmptyTask {
|
|
8
8
|
private logger;
|
|
9
9
|
private redisClient;
|
|
10
10
|
private publicApiCacheRepository;
|
|
11
11
|
private publicApiTripTransformation;
|
|
12
|
-
readonly queueName = "
|
|
13
|
-
readonly queueTtl =
|
|
12
|
+
readonly queueName = "refreshPublicTripCache";
|
|
13
|
+
readonly queueTtl = 10000;
|
|
14
14
|
private lockTimeout;
|
|
15
15
|
private refreshInterval;
|
|
16
16
|
private tripRepository;
|
|
@@ -21,7 +21,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
21
21
|
});
|
|
22
22
|
};
|
|
23
23
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
24
|
-
exports.
|
|
24
|
+
exports.RefreshPublicTripCacheTask = void 0;
|
|
25
25
|
const VPContainerToken_1 = require("../../../ioc/VPContainerToken");
|
|
26
26
|
const const_1 = require("../../../../../schema-definitions/vehicle-positions/redis/const");
|
|
27
27
|
const IoRedisConnector_1 = require("@golemio/core/dist/helpers/data-access/redis/IoRedisConnector");
|
|
@@ -39,15 +39,15 @@ const TripsRepository_1 = require("../data-access/TripsRepository");
|
|
|
39
39
|
const PublicApiCacheRepository_1 = require("../data-access/cache/PublicApiCacheRepository");
|
|
40
40
|
const PublicApiTripTransformation_1 = require("../transformations/PublicApiTripTransformation");
|
|
41
41
|
const PublicCacheTripsFilter_1 = require("../helpers/public-api/PublicCacheTripsFilter");
|
|
42
|
-
let
|
|
42
|
+
let RefreshPublicTripCacheTask = exports.RefreshPublicTripCacheTask = class RefreshPublicTripCacheTask extends workers_1.AbstractEmptyTask {
|
|
43
43
|
constructor(config, logger, redisClient, publicApiCacheRepository, publicApiTripTransformation) {
|
|
44
44
|
super(constants_1.WORKER_NAME);
|
|
45
45
|
this.logger = logger;
|
|
46
46
|
this.redisClient = redisClient;
|
|
47
47
|
this.publicApiCacheRepository = publicApiCacheRepository;
|
|
48
48
|
this.publicApiTripTransformation = publicApiTripTransformation;
|
|
49
|
-
this.queueName = "
|
|
50
|
-
this.queueTtl =
|
|
49
|
+
this.queueName = "refreshPublicTripCache";
|
|
50
|
+
this.queueTtl = 10000; // 10s
|
|
51
51
|
this.lockTimeout = config.getValue("old.datasources.pid.vehicle-positions.publicCache.mutexLockTimeout", 3000); // default 3s
|
|
52
52
|
this.refreshInterval = this.lockTimeout * 0.8;
|
|
53
53
|
this.tripRepository = new TripsRepository_1.TripsRepository();
|
|
@@ -76,21 +76,21 @@ let RefreshPublicCacheTask = exports.RefreshPublicCacheTask = class RefreshPubli
|
|
|
76
76
|
if (err instanceof golemio_errors_1.AbstractGolemioError) {
|
|
77
77
|
throw err;
|
|
78
78
|
}
|
|
79
|
-
throw new golemio_errors_1.GeneralError(`${this.constructor.name}: error while refreshing public cache`, this.constructor.name, err);
|
|
79
|
+
throw new golemio_errors_1.GeneralError(`${this.constructor.name}: error while refreshing public trip cache`, this.constructor.name, err);
|
|
80
80
|
}
|
|
81
81
|
finally {
|
|
82
82
|
yield mutex.release();
|
|
83
|
-
const ellapsedTimeInMs = new Date().getTime() - startDateTime.getTime();
|
|
84
|
-
this.logger.info(`${this.constructor.name}: finished in ${ellapsedTimeInMs}ms`);
|
|
85
|
-
if (ellapsedTimeInMs < this.refreshInterval) {
|
|
86
|
-
yield (0, promises_1.setTimeout)(this.refreshInterval - ellapsedTimeInMs);
|
|
87
|
-
}
|
|
88
|
-
integration_engine_1.QueueManager.sendMessageToExchange(this.queuePrefix, this.queueName, {});
|
|
89
83
|
}
|
|
84
|
+
const ellapsedTimeInMs = new Date().getTime() - startDateTime.getTime();
|
|
85
|
+
this.logger.info(`${this.constructor.name}: finished in ${ellapsedTimeInMs}ms`);
|
|
86
|
+
if (ellapsedTimeInMs < this.refreshInterval) {
|
|
87
|
+
yield (0, promises_1.setTimeout)(this.refreshInterval - ellapsedTimeInMs);
|
|
88
|
+
}
|
|
89
|
+
integration_engine_1.QueueManager.sendMessageToExchange(this.queuePrefix, this.queueName, {});
|
|
90
90
|
});
|
|
91
91
|
}
|
|
92
92
|
createMutex() {
|
|
93
|
-
return new redis_semaphore_1.Mutex(this.redisClient.getConnection(), this.
|
|
93
|
+
return new redis_semaphore_1.Mutex(this.redisClient.getConnection(), this.queueName, {
|
|
94
94
|
acquireAttemptsLimit: 1,
|
|
95
95
|
lockTimeout: this.lockTimeout,
|
|
96
96
|
refreshInterval: this.refreshInterval,
|
|
@@ -100,7 +100,7 @@ let RefreshPublicCacheTask = exports.RefreshPublicCacheTask = class RefreshPubli
|
|
|
100
100
|
});
|
|
101
101
|
}
|
|
102
102
|
};
|
|
103
|
-
exports.
|
|
103
|
+
exports.RefreshPublicTripCacheTask = RefreshPublicTripCacheTask = __decorate([
|
|
104
104
|
(0, tsyringe_1.injectable)(),
|
|
105
105
|
__param(0, (0, tsyringe_1.inject)(CoreToken_1.CoreToken.SimpleConfig)),
|
|
106
106
|
__param(1, (0, tsyringe_1.inject)(CoreToken_1.CoreToken.Logger)),
|
|
@@ -110,5 +110,5 @@ exports.RefreshPublicCacheTask = RefreshPublicCacheTask = __decorate([
|
|
|
110
110
|
__metadata("design:paramtypes", [Object, Object, IoRedisConnector_1.IoRedisConnector,
|
|
111
111
|
PublicApiCacheRepository_1.PublicApiCacheRepository,
|
|
112
112
|
PublicApiTripTransformation_1.PublicApiTripTransformation])
|
|
113
|
-
],
|
|
114
|
-
//# sourceMappingURL=
|
|
113
|
+
], RefreshPublicTripCacheTask);
|
|
114
|
+
//# sourceMappingURL=RefreshPublicTripCacheTask.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RefreshPublicTripCacheTask.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/RefreshPublicTripCacheTask.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,4 +28,8 @@ export declare class UpdateDelayTask extends AbstractTask<IUpdateDelayInput> {
|
|
|
28
28
|
* @param processedPositions - Arrays of all newly computed positions
|
|
29
29
|
*/
|
|
30
30
|
private updateComputedPositionsAndTrips;
|
|
31
|
+
/**
|
|
32
|
+
* Expire delay computation cache for given trips
|
|
33
|
+
*/
|
|
34
|
+
private expireDelayComputationCache;
|
|
31
35
|
}
|
package/dist/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/UpdateDelayTask.js
CHANGED
|
@@ -197,6 +197,7 @@ class UpdateDelayTask extends workers_1.AbstractTask {
|
|
|
197
197
|
})));
|
|
198
198
|
const validProcessedPositions = processedPositions.filter((e) => !!e);
|
|
199
199
|
yield this.updateComputedPositionsAndTrips(validProcessedPositions);
|
|
200
|
+
yield this.expireDelayComputationCache(validProcessedPositions);
|
|
200
201
|
yield queueprocessors_1.QueueManager.sendMessageToExchange(this.queuePrefix, "propagateDelay", {
|
|
201
202
|
processedPositions: validProcessedPositions,
|
|
202
203
|
trips: data.updatedTrips,
|
|
@@ -210,6 +211,19 @@ class UpdateDelayTask extends workers_1.AbstractTask {
|
|
|
210
211
|
}
|
|
211
212
|
});
|
|
212
213
|
}
|
|
214
|
+
/**
|
|
215
|
+
* Expire delay computation cache for given trips
|
|
216
|
+
*/
|
|
217
|
+
expireDelayComputationCache(processedPositions) {
|
|
218
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
219
|
+
try {
|
|
220
|
+
yield this.delayComputationRedisRepository.expire(processedPositions.map(({ context }) => context.tripId), VPUtils_1.VPUtils.DELAY_COMPUTATION_CACHE_TTL);
|
|
221
|
+
}
|
|
222
|
+
catch (err) {
|
|
223
|
+
this.logger.error(err);
|
|
224
|
+
}
|
|
225
|
+
});
|
|
226
|
+
}
|
|
213
227
|
}
|
|
214
228
|
exports.UpdateDelayTask = UpdateDelayTask;
|
|
215
229
|
//# sourceMappingURL=UpdateDelayTask.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UpdateDelayTask.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/UpdateDelayTask.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,4FAAiF;AACjF,oFAAyE;AACzE,oEAA8G;AAC9G,sDAA2D;AAC3D,gGAAqF;AACrF,wCAA2D;AAE3D,wEAAqE;AAErE,2EAAwF;AACxF,2FAAqF;AACrF,2EAA6E;AAC7E,6EAA8F;AAC9F,4EAAyE;AACzE,oEAAiE;AACjE,gFAA6E;AAC7E,mFAA2D;AAC3D,kEAA+D;AAC/D,gDAA6C;AAW7C,mEAA0E;AAE1E,MAAa,eAAgB,SAAQ,sBAA+B;IAYhE,YAAY,WAAmB;QAC3B,KAAK,CAAC,WAAW,CAAC,CAAC;QAZP,cAAS,GAAG,aAAa,CAAC;QAC1B,aAAQ,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,YAAY;QACtC,WAAM,GAAG,+CAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"UpdateDelayTask.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/tasks/UpdateDelayTask.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,8 @@ type TransformIn = IEnrichedTripForPublicApi;
|
|
|
5
5
|
type TransformOut = IPublicApiCacheDto;
|
|
6
6
|
export declare class PublicApiTripTransformation extends AbstractTransformation<TransformIn, TransformOut> {
|
|
7
7
|
name: string;
|
|
8
|
+
private vehicleIdGenerator;
|
|
9
|
+
constructor();
|
|
8
10
|
protected transformInternal: (data: TransformIn) => TransformOut;
|
|
9
11
|
}
|
|
10
12
|
export {};
|
|
@@ -5,6 +5,9 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
5
5
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
6
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
7
|
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
8
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
12
|
exports.PublicApiTripTransformation = void 0;
|
|
10
13
|
const AbstractTransformation_1 = require("@golemio/core/dist/helpers/transformation/AbstractTransformation");
|
|
@@ -12,7 +15,7 @@ const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
|
12
15
|
const VehicleIdGenerator_1 = require("../../gtfs-rt/helpers/VehicleIdGenerator");
|
|
13
16
|
let PublicApiTripTransformation = exports.PublicApiTripTransformation = class PublicApiTripTransformation extends AbstractTransformation_1.AbstractTransformation {
|
|
14
17
|
constructor() {
|
|
15
|
-
super(
|
|
18
|
+
super();
|
|
16
19
|
this.name = "PublicApiTripTransformation";
|
|
17
20
|
this.transformInternal = (data) => {
|
|
18
21
|
return {
|
|
@@ -24,12 +27,27 @@ let PublicApiTripTransformation = exports.PublicApiTripTransformation = class Pu
|
|
|
24
27
|
bearing: data.bearing,
|
|
25
28
|
delay: data.delay,
|
|
26
29
|
state_position: data.state_position,
|
|
27
|
-
vehicle_id:
|
|
30
|
+
vehicle_id: this.vehicleIdGenerator.getVehicleId(data.gtfs_route_type, data.gtfs_route_short_name, data.cis_trip_number, data.vehicle_registration_number, data.run_number),
|
|
31
|
+
detailed_info: {
|
|
32
|
+
is_wheelchair_accessible: data.wheelchair_accessible,
|
|
33
|
+
origin_route_name: data.origin_route_name,
|
|
34
|
+
shape_id: data.gtfs_shape_id,
|
|
35
|
+
run_number: data.run_number,
|
|
36
|
+
trip_headsign: data.gtfs_trip_headsign,
|
|
37
|
+
shape_dist_traveled: data.shape_dist_traveled === null ? null : Number.parseFloat(data.shape_dist_traveled),
|
|
38
|
+
last_stop_sequence: data.last_stop_sequence,
|
|
39
|
+
origin_timestamp: data.origin_timestamp.toISOString(),
|
|
40
|
+
registration_number: data.vehicle_registration_number,
|
|
41
|
+
operator: data.agency_name_real,
|
|
42
|
+
vehicle_type_id: data.vehicle_type_id,
|
|
43
|
+
},
|
|
28
44
|
};
|
|
29
45
|
};
|
|
46
|
+
this.vehicleIdGenerator = new VehicleIdGenerator_1.VehicleIdGenerator();
|
|
30
47
|
}
|
|
31
48
|
};
|
|
32
49
|
exports.PublicApiTripTransformation = PublicApiTripTransformation = __decorate([
|
|
33
|
-
(0, tsyringe_1.injectable)()
|
|
50
|
+
(0, tsyringe_1.injectable)(),
|
|
51
|
+
__metadata("design:paramtypes", [])
|
|
34
52
|
], PublicApiTripTransformation);
|
|
35
53
|
//# sourceMappingURL=PublicApiTripTransformation.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PublicApiTripTransformation.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/transformations/PublicApiTripTransformation.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"PublicApiTripTransformation.js","sourceRoot":"","sources":["../../../../../../src/integration-engine/vehicle-positions/workers/vehicle-positions/transformations/PublicApiTripTransformation.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,6GAA0G;AAC1G,iEAAgE;AAChE,iFAA8E;AAOvE,IAAM,2BAA2B,yCAAjC,MAAM,2BAA4B,SAAQ,+CAAiD;IAI9F;QACI,KAAK,EAAE,CAAC;QAJL,SAAI,GAAG,6BAA6B,CAAC;QAQlC,sBAAiB,GAAG,CAAC,IAAiB,EAAgB,EAAE;YAC9D,OAAO;gBACH,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,UAAU,EAAE,IAAI,CAAC,eAAe;gBAChC,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;gBACjD,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC;gBAChC,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC;gBAChC,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,UAAU,EAAE,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAC5C,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,qBAAqB,EAC1B,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,2BAA2B,EAChC,IAAI,CAAC,UAAU,CAClB;gBACD,aAAa,EAAE;oBACX,wBAAwB,EAAE,IAAI,CAAC,qBAAqB;oBACpD,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;oBACzC,QAAQ,EAAE,IAAI,CAAC,aAAa;oBAC5B,UAAU,EAAE,IAAI,CAAC,UAAU;oBAC3B,aAAa,EAAE,IAAI,CAAC,kBAAkB;oBACtC,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,mBAAmB,CAAC;oBAC3G,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;oBAC3C,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE;oBACrD,mBAAmB,EAAE,IAAI,CAAC,2BAA2B;oBACrD,QAAQ,EAAE,IAAI,CAAC,gBAAgB;oBAC/B,eAAe,EAAE,IAAI,CAAC,eAAe;iBACxC;aACJ,CAAC;QACN,CAAC,CAAC;QAlCE,IAAI,CAAC,kBAAkB,GAAG,IAAI,uCAAkB,EAAE,CAAC;IACvD,CAAC;CAkCJ,CAAA;sCAzCY,2BAA2B;IADvC,IAAA,qBAAU,GAAE;;GACA,2BAA2B,CAyCvC"}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
import { BaseRouter } from "@golemio/core/dist/output-gateway/routes/BaseRouter";
|
|
7
7
|
import { Router } from "@golemio/core/dist/shared/express";
|
|
8
8
|
export declare class PIDRouter extends BaseRouter {
|
|
9
|
-
readonly router:
|
|
9
|
+
readonly router: Router;
|
|
10
10
|
private readonly departureBoardsController;
|
|
11
11
|
private readonly infotextsController;
|
|
12
12
|
constructor();
|
|
@@ -5,9 +5,9 @@
|
|
|
5
5
|
*/
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
7
|
exports.pidRouter = exports.PIDRouter = void 0;
|
|
8
|
+
const Validation_1 = require("@golemio/core/dist/output-gateway/Validation");
|
|
8
9
|
const redis_1 = require("@golemio/core/dist/output-gateway/redis");
|
|
9
10
|
const BaseRouter_1 = require("@golemio/core/dist/output-gateway/routes/BaseRouter");
|
|
10
|
-
const Validation_1 = require("@golemio/core/dist/output-gateway/Validation");
|
|
11
11
|
const express_1 = require("@golemio/core/dist/shared/express");
|
|
12
12
|
const express_validator_1 = require("@golemio/core/dist/shared/express-validator");
|
|
13
13
|
const const_1 = require("../../const");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PIDRouter.js","sourceRoot":"","sources":["../../../src/output-gateway/pid/PIDRouter.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,mEAA6E;AAC7E,oFAAiF;AACjF
|
|
1
|
+
{"version":3,"file":"PIDRouter.js","sourceRoot":"","sources":["../../../src/output-gateway/pid/PIDRouter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
import {
|
|
3
|
-
import { IParams } from "./IParams";
|
|
1
|
+
/// <reference types="express" />
|
|
2
|
+
import { RequestHandler } from "@golemio/core/dist/shared/express";
|
|
4
3
|
export declare class PublicVehiclePositionsController {
|
|
5
4
|
constructor();
|
|
6
|
-
getAll:
|
|
7
|
-
|
|
5
|
+
getAll: RequestHandler;
|
|
6
|
+
getOneByVehicleId: RequestHandler;
|
|
7
|
+
private parsePositionsParams;
|
|
8
|
+
private parseDetailedParams;
|
|
8
9
|
}
|
|
@@ -10,16 +10,16 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.PublicVehiclePositionsController = void 0;
|
|
13
|
+
const RouteTypeEnums_1 = require("../../../../helpers/RouteTypeEnums");
|
|
13
14
|
const const_1 = require("../../domain/const");
|
|
14
15
|
const Di_1 = require("../../ioc/Di");
|
|
15
16
|
const OgModuleToken_1 = require("../../ioc/OgModuleToken");
|
|
16
|
-
const RouteTypeEnums_1 = require("../../../../helpers/RouteTypeEnums");
|
|
17
17
|
class PublicVehiclePositionsController {
|
|
18
18
|
constructor() {
|
|
19
19
|
this.getAll = (req, res, next) => __awaiter(this, void 0, void 0, function* () {
|
|
20
20
|
try {
|
|
21
21
|
const facade = Di_1.OgPublicContainer.resolve(OgModuleToken_1.OgModuleToken.PublicVehiclePositionsFacade);
|
|
22
|
-
const params = this.
|
|
22
|
+
const params = this.parsePositionsParams(req.query);
|
|
23
23
|
const result = yield facade.getAll(params.boundingBox, params.routeShortName, params.type);
|
|
24
24
|
res.json(result);
|
|
25
25
|
}
|
|
@@ -27,8 +27,19 @@ class PublicVehiclePositionsController {
|
|
|
27
27
|
next(err);
|
|
28
28
|
}
|
|
29
29
|
});
|
|
30
|
+
this.getOneByVehicleId = (req, res, next) => __awaiter(this, void 0, void 0, function* () {
|
|
31
|
+
try {
|
|
32
|
+
const facade = Di_1.OgPublicContainer.resolve(OgModuleToken_1.OgModuleToken.DetailedTripFacade);
|
|
33
|
+
const params = this.parseDetailedParams(req);
|
|
34
|
+
const info = yield facade.getOneByVehicleId(params.vehicleId, params.scopes);
|
|
35
|
+
res.json(info);
|
|
36
|
+
}
|
|
37
|
+
catch (err) {
|
|
38
|
+
next(err);
|
|
39
|
+
}
|
|
40
|
+
});
|
|
30
41
|
}
|
|
31
|
-
|
|
42
|
+
parsePositionsParams(query) {
|
|
32
43
|
const boundingBox = query.boundingBox ? query.boundingBox.split(",").map((x) => parseFloat(x)) : undefined;
|
|
33
44
|
// format "topLeft.lat,topLeft.lon,bottomRight.lat,bottomRight.lon"
|
|
34
45
|
return {
|
|
@@ -46,6 +57,14 @@ class PublicVehiclePositionsController {
|
|
|
46
57
|
: undefined,
|
|
47
58
|
};
|
|
48
59
|
}
|
|
60
|
+
parseDetailedParams(req) {
|
|
61
|
+
return {
|
|
62
|
+
vehicleId: req.params.vehicleId,
|
|
63
|
+
scopes: req.query.scopes instanceof Array
|
|
64
|
+
? Array.from(new Set(req.query.scopes))
|
|
65
|
+
: [req.query.scopes],
|
|
66
|
+
};
|
|
67
|
+
}
|
|
49
68
|
}
|
|
50
69
|
exports.PublicVehiclePositionsController = PublicVehiclePositionsController;
|
|
51
70
|
//# sourceMappingURL=PublicVehiclePositionsController.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PublicVehiclePositionsController.js","sourceRoot":"","sources":["../../../../../src/output-gateway/public/controllers/v1/PublicVehiclePositionsController.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8CAA6D;AAC7D,qCAAsD;AACtD,2DAA6D;
|
|
1
|
+
{"version":3,"file":"PublicVehiclePositionsController.js","sourceRoot":"","sources":["../../../../../src/output-gateway/public/controllers/v1/PublicVehiclePositionsController.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { GTFSRouteTypeEnum } from "../../../../../helpers/RouteTypeEnums";
|
|
2
|
+
import { IBoundingBox } from "../../../domain/IBoudingBox";
|
|
3
|
+
import { DetailedTripScope } from "../../../routers/v1/helpers/DetailedTripScopeEnum";
|
|
4
|
+
export interface IVehiclePositionsParams {
|
|
5
|
+
boundingBox: IBoundingBox;
|
|
6
|
+
routeShortName: string | undefined;
|
|
7
|
+
type: GTFSRouteTypeEnum[] | undefined;
|
|
8
|
+
}
|
|
9
|
+
export interface IDetailedInfoParams {
|
|
10
|
+
vehicleId: string;
|
|
11
|
+
scopes: DetailedTripScope[];
|
|
12
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PublicParamsInterfaces.js","sourceRoot":"","sources":["../../../../../../src/output-gateway/public/controllers/v1/interfaces/PublicParamsInterfaces.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { GTFSRouteTypeEnum } from "../../../helpers/RouteTypeEnums";
|
|
2
|
+
import { IDescriptorOutputDto } from "../../../schema-definitions/vehicle-descriptors/models/interfaces/IDescriptorOutputDto";
|
|
3
|
+
import { ILogger } from "@golemio/core/dist/helpers";
|
|
4
|
+
import { IDatabaseConnector } from "@golemio/core/dist/helpers/data-access/postgres/IDatabaseConnector";
|
|
5
|
+
import { AbstractCachedRepository } from "@golemio/core/dist/helpers/data-access/postgres/repositories/AbstractCachedRepository";
|
|
6
|
+
export declare class VehicleDescriptorCachedRepository extends AbstractCachedRepository<IDescriptorOutputDto> {
|
|
7
|
+
schema: string;
|
|
8
|
+
tableName: string;
|
|
9
|
+
private sequelizeModel;
|
|
10
|
+
constructor(connector: IDatabaseConnector, logger: ILogger);
|
|
11
|
+
protected getAllInternal(): Promise<IDescriptorOutputDto[]>;
|
|
12
|
+
getOneByRegNumber(routeType: GTFSRouteTypeEnum, registrationNumber: number): Promise<Partial<IDescriptorOutputDto> | null>;
|
|
13
|
+
}
|