Skip to content

Commit

Permalink
litt mer endring på feilhåndtering
Browse files Browse the repository at this point in the history
  • Loading branch information
jankroken-nav committed Nov 21, 2024
1 parent 25970d9 commit 9b04870
Show file tree
Hide file tree
Showing 3 changed files with 34 additions and 10 deletions.
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package no.nav.pensjon.opptjening.omsorgsopptjening.start.innlesning.barnetrygd.domain

import no.nav.pensjon.opptjening.omsorgsopptjening.felles.domene.kafka.Rådata
import no.nav.pensjon.opptjening.omsorgsopptjening.felles.domene.kafka.RådataFraKilde
import no.nav.pensjon.opptjening.omsorgsopptjening.felles.domene.kafka.messages.domene.IdentRolle
import no.nav.pensjon.opptjening.omsorgsopptjening.felles.domene.periode.Periode

Expand All @@ -15,6 +16,7 @@ sealed class BarnetrygdException(msg: String, cause: Throwable) : RuntimeExcepti
class OverlappendePerioder(
msg: String,
cause: Throwable,
valdata: Rådata? = null,
val perioder: List<Periode>,
) : BarnetrygdException(msg, cause)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,17 @@ class KompletteringsService(
komplettering.withPersongrunnlag(
hentBarnetrygd(komplettering.barnetrygdmottaker, gyldigÅrsIntervall)
)
} catch (e: BarnetrygdException.OverlappendePerioder) {
secureLog.warn("Feil ved henting av barnetrygd", e)
komplettering
.withLøseRådata(e.rådata)
.withFeilinformasjon(
Feilinformasjon.FeilIDataGrunnlag(
message = "Feil i datagrunnlag: ${e.message}",
exceptionType = e::class.java.canonicalName,
exceptionMessage = e.message ?: "",
)
)
} catch (e: BarnetrygdException.FeilIGrunnlagsdata) {
secureLog.warn("Feil ved henting av barnetrygd", e)
komplettering
Expand Down Expand Up @@ -83,7 +94,10 @@ class KompletteringsService(
)
)
} catch (e: BarnetrygdException.OverlappendePerioder) {
secureLog.warn("Feil ved oppdatering av fødselsnummer etter henting av barnetrygdgrunnlag", e)
secureLog.warn(
"Feil ved oppdatering av fødselsnummer etter henting av barnetrygdgrunnlag. Overlappende perioder: ${e.perioder}",
e
)
komplettering.withFeilinformasjon(
Feilinformasjon.OverlappendeBarnetrygdperioder(
message = e.message ?: "",
Expand All @@ -99,7 +113,10 @@ class KompletteringsService(
komplettering.persongrunnlag!!.komprimer()
)
} catch (e: BarnetrygdException.OverlappendePerioder) {
secureLog.warn("Feil ved komprimering av persongrunnlag etter henting av barnetrygdgrunnlag", e)
secureLog.warn(
"Feil ved komprimering av persongrunnlag etter henting av barnetrygdgrunnlag. Overlappende perioder: ${e.perioder}",
e
)
komplettering.withFeilinformasjon(
Feilinformasjon.OverlappendeBarnetrygdperioder(
message = e.message ?: "",
Expand Down Expand Up @@ -401,14 +418,12 @@ class KompletteringsService(
return copy(feilinformasjon = feilinformasjon)
}

fun withLøseRådata(rådata: RådataFraKilde): Komplettering {
return copy(løseRådata = løseRådata + rådata)

}

fun withLøseRådata(rådata: List<RådataFraKilde>): Komplettering {
return copy(løseRådata = løseRådata + rådata)

fun withLøseRådata(rådata: List<RådataFraKilde>?): Komplettering {
return if (rådata == null) {
this
} else {
return copy(løseRådata = løseRådata + rådata)
}
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,13 @@ object HentBarnetrygdResponseHandler {
barnetrygdsaker = HentBarnetrygdDomainMapper.map(wrapper.fagsaker, filter),
rådataFraKilde = rådata
)
} catch (e: UgyldigPersongrunnlag.OverlappendeOmsorgsperiode) {
throw BarnetrygdException.OverlappendePerioder(
msg = "Feil ved deserialisering av barnetrygdsaker",
cause = e,
perioder = e.perioder,
rådata = Rådata(listOf(rådata))
)
} catch (e: UgyldigPersongrunnlag) {
throw BarnetrygdException.FeilIGrunnlagsdata(
msg = "Feil ved deserialisering av barnetrygdsaker",
Expand Down

0 comments on commit 9b04870

Please sign in to comment.