import { Injectable } from '@angular/core'; import { Store, select } from '@ngrx/store'; import { RPCSubscriber } from '@loafer/ng-rpc'; import { LoggerService } from '@loafer/ng-logger'; import { NoAuthProbe } from '@overflow/commons-typescript/model/noauth'; import * as NoAuthProbeConnectingStore from '../store/connecting'; @Injectable() export class NoAuthProbeSubscriber { public constructor( private store: Store, private loggerService: LoggerService, ) { } @RPCSubscriber({method: 'NoAuthProbeService.onConnect'}) public onConnect(noAuthProbe: NoAuthProbe): void { this.loggerService.debug('NoAuthProbeService.onConnect noAuthProbe:', noAuthProbe); this.store.dispatch(new NoAuthProbeConnectingStore.OnConnect(noAuthProbe)); } @RPCSubscriber({method: 'NoAuthProbeService.onDisconnect'}) public onDisconnect(noAuthProbe: NoAuthProbe): void { this.loggerService.debug('NoAuthProbeService.onDisconnect noAuthProbe:', noAuthProbe); this.store.dispatch(new NoAuthProbeConnectingStore.OnDisconnect(noAuthProbe)); } }