import {Injectable} from "@angular/core"; import {Resolve, ActivatedRouteSnapshot, RouterStateSnapshot} from '@angular/router'; import {UaaService} from "./uaa.service"; import {Observable, Observer} from "rxjs"; @Injectable() export class IdentityResolver implements Resolve { constructor(private uaaService: UaaService) { } resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable { return Observable.create((observer: Observer) => { this.uaaService.getIdentity(true).subscribe(identity => { observer.next(identity); observer.complete(); }); }); } }