diff --git a/src/abstractions/lock.service.ts b/src/abstractions/lock.service.ts index 2606f617ac..0b025b7039 100644 --- a/src/abstractions/lock.service.ts +++ b/src/abstractions/lock.service.ts @@ -1,4 +1,4 @@ -export interface LockService { - checkLock(): Promise; - lock(): Promise; +export abstract class LockService { + checkLock: () => Promise; + lock: () => Promise; } diff --git a/src/abstractions/storage.service.ts b/src/abstractions/storage.service.ts index 5d070d0a55..02fe9d9818 100644 --- a/src/abstractions/storage.service.ts +++ b/src/abstractions/storage.service.ts @@ -1,5 +1,5 @@ -export interface StorageService { - get(key: string): Promise; - save(key: string, obj: any): Promise; - remove(key: string): Promise; +export abstract class StorageService { + get: (key: string) => Promise; + save: (key: string, obj: any) => Promise; + remove: (key: string) => Promise; } diff --git a/src/services/lock.service.ts b/src/services/lock.service.ts index e3b841a9a3..60d2a98be4 100644 --- a/src/services/lock.service.ts +++ b/src/services/lock.service.ts @@ -4,16 +4,16 @@ import { CipherService } from '../abstractions/cipher.service'; import { CollectionService } from '../abstractions/collection.service'; import { CryptoService } from '../abstractions/crypto.service'; import { FolderService } from '../abstractions/folder.service'; -import { LockService as LockServiceInterface } from '../abstractions/lock.service'; +import { LockService as LockServiceAbstraction } from '../abstractions/lock.service'; +import { MessagingService } from '../abstractions/messaging.service'; import { PlatformUtilsService } from '../abstractions/platformUtils.service'; import { StorageService } from '../abstractions/storage.service'; -export class LockService implements LockServiceInterface { +export class LockService implements LockServiceAbstraction { constructor(private cipherService: CipherService, private folderService: FolderService, private collectionService: CollectionService, private cryptoService: CryptoService, - private platformUtilsService: PlatformUtilsService, - private storageService: StorageService, - private setIcon: Function, private refreshBadgeAndMenu: Function) { + private platformUtilsService: PlatformUtilsService, private storageService: StorageService, + private messagingService: MessagingService) { this.checkLock(); setInterval(() => this.checkLock(), 10 * 1000); // check every 10 seconds } @@ -54,12 +54,11 @@ export class LockService implements LockServiceInterface { this.cryptoService.clearOrgKeys(true), this.cryptoService.clearPrivateKey(true), this.cryptoService.clearEncKey(true), - this.setIcon(), - this.refreshBadgeAndMenu(), ]); this.folderService.clearCache(); this.cipherService.clearCache(); this.collectionService.clearCache(); + this.messagingService.send('locked'); } }