@golemio/pid
Version:
Golemio PID Module
29 lines (28 loc) • 2.15 kB
TypeScript
import { RunTripsRedisRepository } from "../../../../ropid-gtfs/data-access/cache";
import { TripScheduleRepository } from "../../../../ropid-gtfs/data-access/precomputed";
import { PositionsRepository } from "../../vehicle-positions/data-access/PositionsRepository";
import type { TripsRepository } from "../../vehicle-positions/data-access/TripsRepository";
import { AbstractTask } from "@golemio/core/dist/integration-engine";
import { MessageProperties } from "@golemio/core/dist/shared/amqplib";
import { CommonRunsRepository } from "../data-access/CommonRunsRepository";
import { IProcessMetroRunsMessagesInput } from "../interfaces/IProcessMetroRunsMessagesInput";
import { MetroTransformedRunsValidationSchema } from "../schema/MetroTransformedRunsSchema";
import { MetroRunsMessageProcessingTransformation } from "../transformations/MetroRunsMessageProcessingTransformation";
import { MetroRailtrackGPSRepository } from "../../../../ropid-gtfs/workers/timetables/tasks/data-access/MetroRailtrackGPSRepository";
export declare class ProcessMetroRunMessagesTask extends AbstractTask<IProcessMetroRunsMessagesInput> {
private readonly railtrackGPSRepository;
private readonly positionsRepository;
private readonly tripsRepository;
private readonly runsRepository;
private readonly runTripsRedisRepository;
private readonly processingTransformation;
private readonly tripScheduleRepository;
readonly queueName = "processMetroRunMessages";
readonly queueTtl: number;
readonly schema: typeof MetroTransformedRunsValidationSchema;
private readonly gtfsTripRunManager;
constructor(railtrackGPSRepository: MetroRailtrackGPSRepository, positionsRepository: PositionsRepository, tripsRepository: TripsRepository, runsRepository: CommonRunsRepository, runTripsRedisRepository: RunTripsRedisRepository, processingTransformation: MetroRunsMessageProcessingTransformation, tripScheduleRepository: TripScheduleRepository);
protected execute({ routeName, messages }: IProcessMetroRunsMessagesInput, msgProperties?: MessageProperties): Promise<void>;
private processMessage;
private enrichRunMessage;
}