From b7a25a6115a8ea40011ee9e837b3b3a8e0ec2ce6 Mon Sep 17 00:00:00 2001 From: Brendan Chen Date: Thu, 16 Jan 2025 21:07:44 -0800 Subject: [PATCH] add repository methods to clear all data --- src/repositories/GetterSetterRepository.ts | 7 ++++++ .../UnoptimizedInMemoryRepository.ts | 24 +++++++++++++++++++ 2 files changed, 31 insertions(+) diff --git a/src/repositories/GetterSetterRepository.ts b/src/repositories/GetterSetterRepository.ts index ce50567..ddcf68b 100644 --- a/src/repositories/GetterSetterRepository.ts +++ b/src/repositories/GetterSetterRepository.ts @@ -18,4 +18,11 @@ export interface GetterSetterRepository extends GetterRepository { addOrUpdateStop(stop: IStop): Promise; addOrUpdateOrderedStop(orderedStop: IOrderedStop): Promise; addOrUpdateEta(eta: IEta): Promise; + + clearSystemData(): Promise; + clearRouteData(): Promise; + clearShuttleData(): Promise; + clearStopData(): Promise; + clearOrderedStopData(): Promise; + clearEtaData(): Promise; } diff --git a/src/repositories/UnoptimizedInMemoryRepository.ts b/src/repositories/UnoptimizedInMemoryRepository.ts index e992531..c24a3c5 100644 --- a/src/repositories/UnoptimizedInMemoryRepository.ts +++ b/src/repositories/UnoptimizedInMemoryRepository.ts @@ -147,4 +147,28 @@ export class UnoptimizedInMemoryRepository implements GetterSetterRepository { this.etas.push(eta); } } + + public async clearSystemData() { + this.systems = []; + } + + public async clearShuttleData(): Promise { + this.shuttles = []; + } + + public async clearEtaData(): Promise { + this.etas = []; + } + + public async clearOrderedStopData(): Promise { + this.orderedStops = []; + } + + public async clearRouteData(): Promise { + this.routes = []; + } + + public async clearStopData(): Promise { + this.stops = []; + } } \ No newline at end of file