Page History
...
| Code Block | ||
|---|---|---|
| ||
export class AuthService {
private sessionMessageSubject = new BehaviorSubject<NAPMessage | undefined>(
undefined
);
/**
* The current session
*
* @memberof AuthService
*/
public session$ = this.sessionMessageSubject.asObservable();
constructor(private napSDK: NapAngularService) {
this.napSDK.incoming$
.pipe(
filterEvents([
NAPEventCatalogue.v1.SessionOpen,
NAPEventCatalogue.v1.SessionClose,
])
)
.subscribe((napMessage) => {
if (napMessage.event.type === NAPEventCatalogue.v1.SessionOpen) {
this.sessionMessageSubject.next(napMessage);
} else {
this.sessionMessageSubject.next(undefined);
}
});
const napMsg: NAPMessage = {
date: new Date().toISOString(),
id: UUID(),
event: { type: NAPEventCatalogue.v1.SessionOpen },
};
// Ask for the SAMLassertion in host
this.napSDK.sendMessage(napMsg);
}
/**
* TrickerTrigger logout event
*/
logout(): void {
this.sessionMessageSubject.next(undefined);
const napMsg: NAPMessage = {
date: new Date().toISOString(),
id: UUID(),
event: { type: NAPEventCatalogue.v1.SessionClose },
};
this.napSDK.sendMessage(napMsg);
}
} |
...