mirror of
https://github.com/brendan-ch/project-inter-server.git
synced 2026-04-19 17:00:30 +00:00
Unify eventual getter implementations in a BaseRedisETARepository class
This commit is contained in:
62
src/repositories/shuttle/eta/BaseRedisETARepository.ts
Normal file
62
src/repositories/shuttle/eta/BaseRedisETARepository.ts
Normal file
@@ -0,0 +1,62 @@
|
||||
import { IEta } from "../../../entities/ShuttleRepositoryEntities";
|
||||
import { BaseRedisRepository } from "../../BaseRedisRepository";
|
||||
import { ETAGetterRepository, ETARepositoryEventListener, ETARepositoryEventName } from "./ETAGetterRepository";
|
||||
|
||||
export abstract class BaseRedisETARepository extends BaseRedisRepository implements ETAGetterRepository {
|
||||
getEtasForShuttleId(shuttleId: string): Promise<IEta[]> {
|
||||
throw new Error("Method not implemented.");
|
||||
}
|
||||
|
||||
getEtasForStopId(stopId: string): Promise<IEta[]> {
|
||||
throw new Error("Method not implemented.");
|
||||
}
|
||||
|
||||
getEtaForShuttleAndStopId(shuttleId: string, stopId: string): Promise<IEta | null> {
|
||||
throw new Error("Method not implemented.");
|
||||
}
|
||||
|
||||
// EventEmitter override methods for type safety
|
||||
override on<T extends ETARepositoryEventName>(
|
||||
event: T,
|
||||
listener: ETARepositoryEventListener<T>,
|
||||
): this;
|
||||
override on(event: string | symbol, listener: (...args: any[]) => void): this {
|
||||
return super.on(event, listener);
|
||||
}
|
||||
|
||||
override once<T extends ETARepositoryEventName>(
|
||||
event: T,
|
||||
listener: ETARepositoryEventListener<T>,
|
||||
): this;
|
||||
override once(event: string | symbol, listener: (...args: any[]) => void): this {
|
||||
return super.once(event, listener);
|
||||
}
|
||||
|
||||
override off<T extends ETARepositoryEventName>(
|
||||
event: T,
|
||||
listener: ETARepositoryEventListener<T>,
|
||||
): this;
|
||||
override off(event: string | symbol, listener: (...args: any[]) => void): this {
|
||||
return super.off(event, listener);
|
||||
}
|
||||
|
||||
override addListener<T extends ETARepositoryEventName>(
|
||||
event: T,
|
||||
listener: ETARepositoryEventListener<T>,
|
||||
): this;
|
||||
override addListener(event: string | symbol, listener: (...args: any[]) => void): this {
|
||||
return super.addListener(event, listener);
|
||||
}
|
||||
|
||||
override removeListener<T extends ETARepositoryEventName>(
|
||||
event: T,
|
||||
listener: ETARepositoryEventListener<T>,
|
||||
): this;
|
||||
override removeListener(event: string | symbol, listener: (...args: any[]) => void): this {
|
||||
return super.removeListener(event, listener);
|
||||
}
|
||||
|
||||
override removeAllListeners(eventName?: string | symbol): this {
|
||||
return super.removeAllListeners(eventName);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user