FlytOrkestrator

class FlytOrkestrator(val flytKontekstMedPeriodeService: FlytKontekstMedPeriodeService, val behandlingService: BehandlingService, val informasjonskravGrunnlag: InformasjonskravGrunnlag, val sakRepository: SakRepository, val avklaringsbehovRepository: AvklaringsbehovRepository, val behandlingRepository: BehandlingRepository, val behandlingHendelseService: BehandlingHendelseService, val ventebehovEvaluererService: VentebehovEvaluererService, val stegOrkestrator: StegOrkestrator, val stoppNårStatus: Set<Status> = emptySet(), val unleashGateway: UnleashGateway)(source)

Har ansvar for å drive flyten til en gitt behandling. Typen behandling styrer hvilke steg som skal utføres.

Forbered Behandling

Har ansvar for å sette behandlingen i en oppdatert tilstand i form av å innhente opplysninger for stegene man allerede har prosessert og vurdere om man er nødt til å behandle steget på nytt hvis det er oppdaterte opplysninger.

Prosesser Behandling

Har ansvar for å drive prosessen fremover, stoppe opp ved behov for besluttningsstøtte av et menneske og sørge for at at stegene traverseres i den definerte rekkefølgen i flyten. Flytene defineres i typen behandlingen.

Constructors

Link copied to clipboard
constructor(flytKontekstMedPeriodeService: FlytKontekstMedPeriodeService, behandlingService: BehandlingService, informasjonskravGrunnlag: InformasjonskravGrunnlag, sakRepository: SakRepository, avklaringsbehovRepository: AvklaringsbehovRepository, behandlingRepository: BehandlingRepository, behandlingHendelseService: BehandlingHendelseService, ventebehovEvaluererService: VentebehovEvaluererService, stegOrkestrator: StegOrkestrator, stoppNårStatus: Set<Status> = emptySet(), unleashGateway: UnleashGateway)
constructor(repositoryProvider: RepositoryProvider, gatewayProvider: GatewayProvider, stoppNårStatus: Set<Status> = emptySet(), markSavepointAt: Set<StegStatus>? = null, behandlingHendelseService: BehandlingHendelseService = gatewayProvider.provide<BehandlingHendelseServiceProvider>() .create(repositoryProvider, gatewayProvider))

Properties

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
private val log: Logger?
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
private val stoppNårStatus: Set<Status>
Link copied to clipboard

Functions

Link copied to clipboard
private fun finnGjeldendeSteg(behandling: Behandling, behandlingFlyt: BehandlingFlyt): FlytSteg
Link copied to clipboard
private fun forberedBehandling(kontekst: FlytKontekst)
Link copied to clipboard
internal fun forberedLøsingAvBehov(behovDefinisjon: Definisjon, behandling: Behandling, kontekst: FlytKontekst, bruker: Bruker)
private fun førTilbakeTilTidligsteÅpneAvklaringsbehov(avklaringsbehovene: Avklaringsbehovene, behandlingFlyt: BehandlingFlyt, behandling: Behandling, kontekst: FlytKontekst)
Link copied to clipboard
private fun loggStopp(behandling: Behandling, avklaringsbehovene: Avklaringsbehovene)
Link copied to clipboard
private fun oppdaterBehandlingstatusHvisEndret(behandling: Behandling, etterStatus: Status?)
Link copied to clipboard
private fun opprettAvklaringsbehovHvisMangler(behovDefinisjon: Definisjon, kontekst: FlytKontekst, bruker: Bruker)
Link copied to clipboard
Link copied to clipboard
private fun tilbakefør(kontekst: FlytKontekst, behandling: Behandling, behandlingFlyt: BehandlingFlyt, avklaringsbehovene: Avklaringsbehovene)
Link copied to clipboard
private fun utledNesteSteg(result: Transisjon, behandlingFlyt: BehandlingFlyt): FlytSteg?

Gitt en flyt, utled neste FlytSteg. null betyr at det er ikke flere steg, og behandlingen anses som avsluttet.

Link copied to clipboard
private fun validerAtAvklaringsBehovErLukkede(avklaringsbehovene: Avklaringsbehovene)
Link copied to clipboard
private fun validerPlassering(behandlingFlyt: BehandlingFlyt, åpneAvklaringsbehov: List<Avklaringsbehov>)