Have the ETA repositories depend on BaseRedisRepository instead of duplicating methods

This commit is contained in:
2025-11-11 11:33:45 -08:00
parent 809c0b9270
commit e707c9cfd8
2 changed files with 4 additions and 23 deletions

View File

@@ -1,29 +1,9 @@
import { createClient, RedisClientType } from "redis";
import { IEta } from "../../../entities/ShuttleRepositoryEntities";
import { BaseRedisRepository } from "../../BaseRedisRepository";
import { ETARepositoryEventName, ETARepositoryEventListener } from "./ETAGetterRepository";
import { ExternalSourceETARepository } from "./ExternalSourceETARepository";
import { REDIS_RECONNECT_INTERVAL } from "../../../environment";
export class RedisExternalSourceETARepository implements ExternalSourceETARepository {
constructor(
private redisClient: RedisClientType = createClient({
url: process.env.REDIS_URL,
socket: {
tls: process.env.NODE_ENV === 'production',
rejectUnauthorized: false,
reconnectStrategy: REDIS_RECONNECT_INTERVAL,
},
})
) {}
public async connect() {
await this.redisClient.connect();
}
public async disconnect() {
await this.redisClient.disconnect();
}
export class RedisExternalSourceETARepository extends BaseRedisRepository implements ExternalSourceETARepository {
addOrUpdateEtaFromExternalSource(eta: IEta): Promise<void> {
throw new Error("Method not implemented.");
}

View File

@@ -1,8 +1,9 @@
import { IEta } from "../../../entities/ShuttleRepositoryEntities";
import { ETARepositoryEventName, ETARepositoryEventListener } from "./ETAGetterRepository";
import { SelfUpdatingETARepository } from "./SelfUpdatingETARepository";
import { BaseRedisRepository } from "../../BaseRedisRepository";
export class RedisSelfUpdatingETARepository implements SelfUpdatingETARepository {
export class RedisSelfUpdatingETARepository extends BaseRedisRepository implements SelfUpdatingETARepository {
startListeningForUpdates(): void {
throw new Error("Method not implemented.");
}