Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Et NAP interface, som fungerer som en wrapper omkring NAP bridge (NAP SDK - Design og Arkitektur beskrivelse).
  • Et NAP message interface, som er den modellen for alle modellen alle beskeder, som kan sendes over NAP. Disse beskeder er meget inspireret af FHIRcast.
  • Et NAPEventCatalogue, der definere definerer events inspireret af FHIRCast
  • Hjælpemetoder til at sende og formatere beskeder.

...

En wrapper af NAP Bridge, som et værtssytem ligger værtssystem ligger på global scope af den embeddede browser. 

...

Model for de SDK fejl. Disse beskeder sendes, hvis sker der fejl i createNAP() kaldet -  når NAP bridge skal wrappes eller når en besked ikke overholder dataformatet.

Code Block
languagejs
export interface NAPError {
  id: number;
  message: string;
  isFatal: boolean;
}

...

Funktion

getSessionValue(napMessage: NAPMessage): string | undefined

Henter samlAssertion. Returnerer undefined, hvis ikke data kan formateres.

getPatientInfo(napMessage: NAPMessage): NAPPatientInfo | undefinedHenter patientinfo. Returnerer undefined, hvis ikke data kan formateres.
filterEvents(type: string[]): Observable<NAPMessage>Filtrer på et array eventtypes. Returnerer en observable, der kun emitter, når et event med en af de angivne typer emittes fra source.

filterEvent(type: string): Observable<NAPMessage>

Filtrer på en event. Returnerer en observable, der kun emitter, når et event med en den angivne type emittes fra source.

...

Code Block
languagejs
import { NapAngularService } from 'nap-angular-sdk';
import { filterEvents, NAPEventCatalogue, NAPMessage } from 'nap-typescript-sdk';
import { v4 as UUID } from 'uuid';

export class MyComponent {
	
	// proxy for SAMLAssertion
	public session$: Observable<NAPMessage | undefined> = 
		this.napSDK.incoming$.pipe(
		filterEvents([NAPEventCatalogue.v1.SessionOpen, NAPEventCatalogue.v1.SessionClose])
	);
		//inject the nap-angular-sdk service
	constructor(private napSK: NapAngularService) {
		// Construct an SessionOpen NAPMessage
		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 {
    const napMsg: NAPMessage = {
      date: new Date().toISOString(),
      id: UUID(),
      event: { type: NAPEventCatalogue.v1.SessionClose },
    };
    this.napSDK.sendMessage(napMsg);
  }
	

}

Patient-Open og Patient-close

...

Generel kodedokumentation findes i bilblioteketbiblioteket.