private setActiveRequest()

in lib/data_access/data-store.service.ts [42:59]


	private setActiveRequest(obs: Observable<any>, method: RequestMethod, endpoint: string, data?: RequestData): Observable<any> {
		let activeRequestId: string = DataStoreService.getActiveRequestId(method, endpoint, data),
			existingActiveRequest = this.activeRequests.get(activeRequestId);

		if (existingActiveRequest)
			return existingActiveRequest;
		else {
			let warmObservable: Observable<any> = obs.pipe(
				tap(() => this.activeRequests.delete(activeRequestId),
					err => this.activeRequests.delete(activeRequestId)),
				finalize(() => this.activeRequests.delete(activeRequestId)),
				share()
			);

			this.activeRequests.set(activeRequestId, warmObservable);
			return warmObservable;
		}
	}