Skip to content

Commit

Permalink
Sonar: Fikser feil fra sonar (#7044)
Browse files Browse the repository at this point in the history
* Lagt inn kommentarer i tomme metoder
* Tar i bruk etablerte konstanter
* Oppretter konstanter for tekster som bruker minst 3 steder
* Trekker ut i egne metoder der det er hensiktsmessig
* Renaming av konstanter for å matche definert regex
* Splittet finnPapirSøknad() i to metoder for å unngå å returnere null for Boolean
* Disablet test hvor asserts er kommentert ut midlertidig
* Slettet testfil som ikke hadde noen tester
* Endret til static klasser for LagOppdragTjeneste og KontoerGrunnlagBygger
* get(0)/iterator().next() -> getFirst() i berørte filer
  • Loading branch information
remhol authored Feb 4, 2025
1 parent 9683291 commit f5615a6
Show file tree
Hide file tree
Showing 40 changed files with 318 additions and 369 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -122,7 +122,7 @@ public void lagre(Long behandlingId, FamilieHendelseBuilder hendelseBuilder) {
}

public void lagreRegisterHendelse(Long behandlingId, FamilieHendelseBuilder hendelse) {
Objects.requireNonNull(behandlingId, "behandlingId");
Objects.requireNonNull(behandlingId, BEHANDLING_ID);
Objects.requireNonNull(hendelse, "hendelse");

var aggregatBuilder = opprettAggregatBuilderFor(behandlingId);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@
public class FagsakRelasjonRepository {

private static final String FAGSAK_QP = "fagsak";
private static final String STØNADSKONTOBEREGNING = "stønadskontoberegning";

private EntityManager entityManager;
private FagsakLåsRepository fagsakLåsRepository;
Expand Down Expand Up @@ -98,7 +99,7 @@ public Optional<FagsakRelasjon> finnRelasjonForHvisEksisterer(long fagsakId, Loc
}

public void lagre(Fagsak fagsak, Stønadskontoberegning stønadskontoberegning) {
Objects.requireNonNull(stønadskontoberegning, "stønadskontoberegning");
Objects.requireNonNull(stønadskontoberegning, STØNADSKONTOBEREGNING);

var fagsak1Lås = fagsakLåsRepository.taLås(fagsak.getId());
FagsakLås fagsak2Lås = null;
Expand Down Expand Up @@ -300,7 +301,7 @@ public List<Fagsak> finnFagsakerForAvsluttning(LocalDate dato) {
}

private void persisterStønadskontoberegning(Stønadskontoberegning stønadskontoberegning) {
Objects.requireNonNull(stønadskontoberegning, "stønadskontoberegning");
Objects.requireNonNull(stønadskontoberegning, STØNADSKONTOBEREGNING);

entityManager.persist(stønadskontoberegning);
for (var stønadskonto : stønadskontoberegning.getStønadskontoer()) {
Expand All @@ -309,7 +310,7 @@ public List<Fagsak> finnFagsakerForAvsluttning(LocalDate dato) {
}

public void persisterFlushStønadskontoberegning(Stønadskontoberegning stønadskontoberegning) {
Objects.requireNonNull(stønadskontoberegning, "stønadskontoberegning");
Objects.requireNonNull(stønadskontoberegning, STØNADSKONTOBEREGNING);
persisterStønadskontoberegning(stønadskontoberegning);
entityManager.flush();
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@
import jakarta.persistence.EntityManager;
import jakarta.persistence.LockModeType;

import jakarta.persistence.TypedQuery;

import org.hibernate.jpa.HibernateHints;
import org.hibernate.query.NativeQuery;

Expand Down Expand Up @@ -49,42 +51,37 @@ public FagsakRepository(EntityManager entityManager) {
}

public Fagsak finnEksaktFagsak(long fagsakId) {
var query = entityManager.createQuery("from Fagsak where id=:fagsakId", Fagsak.class);
query.setParameter("fagsakId", fagsakId);
var query = getFagsakQuery(fagsakId);
var fagsak = HibernateVerktøy.hentEksaktResultat(query);
entityManager.refresh(fagsak); // hent alltid på nytt
return fagsak;
}

public Fagsak finnEksaktFagsak(Saksnummer saksnummer) {
var query = entityManager.createQuery("from Fagsak where saksnummer=:saksnummer", Fagsak.class)
.setParameter("saksnummer", saksnummer);
var query = getFagsakWhereSaksnummerQuery(saksnummer);
var fagsak = HibernateVerktøy.hentEksaktResultat(query);
entityManager.refresh(fagsak); // hent alltid på nytt
return fagsak;
}

public Fagsak finnEksaktFagsakReadOnly(long fagsakId) {
var query = entityManager.createQuery("from Fagsak where id=:fagsakId", Fagsak.class)
.setParameter("fagsakId", fagsakId)
var query = getFagsakQuery(fagsakId)
.setHint(HibernateHints.HINT_READ_ONLY, "true");
var fagsak = HibernateVerktøy.hentEksaktResultat(query);
entityManager.refresh(fagsak); // hent alltid på nytt
return fagsak;
}

public Fagsak finnEksaktFagsakReadOnly(Saksnummer saksnummer) {
var query = entityManager.createQuery("from Fagsak where saksnummer=:saksnummer", Fagsak.class)
.setParameter("saksnummer", saksnummer)
var query = getFagsakWhereSaksnummerQuery(saksnummer)
.setHint(HibernateHints.HINT_READ_ONLY, "true");
var fagsak = HibernateVerktøy.hentEksaktResultat(query);
entityManager.refresh(fagsak); // hent alltid på nytt
return fagsak;
}

public Optional<Fagsak> finnUnikFagsak(long fagsakId) {
var query = entityManager.createQuery("from Fagsak where id=:fagsakId", Fagsak.class);
query.setParameter("fagsakId", fagsakId);
var query = getFagsakQuery(fagsakId);
var opt = HibernateVerktøy.hentUniktResultat(query);
if (opt.isPresent()) {
entityManager.refresh(opt.get());
Expand Down Expand Up @@ -113,19 +110,18 @@ public Optional<Journalpost> hentJournalpost(JournalpostId journalpostId) {
Journalpost.class);
query.setParameter("journalpost", journalpostId);
var journalposter = query.getResultList();
return journalposter.isEmpty() ? Optional.empty() : Optional.ofNullable(journalposter.get(0));
return journalposter.isEmpty() ? Optional.empty() : Optional.ofNullable(journalposter.getFirst());
}

public Optional<Fagsak> hentSakGittSaksnummer(Saksnummer saksnummer) {
var query = entityManager.createQuery("from Fagsak where saksnummer=:saksnummer", Fagsak.class);
query.setParameter("saksnummer", saksnummer);
var query = getFagsakWhereSaksnummerQuery(saksnummer);

var fagsaker = query.getResultList();
if (fagsaker.size() > 1) {
throw flereEnnEnFagsakFeil(saksnummer);
}

return fagsaker.isEmpty() ? Optional.empty() : Optional.of(fagsaker.get(0));
return fagsaker.isEmpty() ? Optional.empty() : Optional.of(fagsaker.getFirst());
}

private TekniskException flereEnnEnFagsakFeil(Saksnummer saksnummer) {
Expand Down Expand Up @@ -174,8 +170,7 @@ public void oppdaterBruker(Long fagsakId, NavBruker bruker) {
}

public Optional<Fagsak> hentSakGittSaksnummer(Saksnummer saksnummer, boolean taSkriveLås) {
var query = entityManager.createQuery("from Fagsak where saksnummer=:saksnummer", Fagsak.class);
query.setParameter("saksnummer", saksnummer);
var query = getFagsakWhereSaksnummerQuery(saksnummer);
if (taSkriveLås) {
query.setLockMode(LockModeType.PESSIMISTIC_WRITE);
}
Expand All @@ -185,7 +180,7 @@ public Optional<Fagsak> hentSakGittSaksnummer(Saksnummer saksnummer, boolean taS
throw flereEnnEnFagsakFeil(saksnummer);
}

return fagsaker.isEmpty() ? Optional.empty() : Optional.of(fagsaker.get(0));
return fagsaker.isEmpty() ? Optional.empty() : Optional.of(fagsaker.getFirst());
}

public Long lagre(Journalpost journalpost) {
Expand Down Expand Up @@ -292,4 +287,13 @@ public List<FagsakNotat> hentFagsakNotater(Long fagsakId) {
return query.getResultList();
}

private TypedQuery<Fagsak> getFagsakQuery(long fagsakId) {
var query = entityManager.createQuery("from Fagsak where id=:fagsakId", Fagsak.class);
query.setParameter("fagsakId", fagsakId);
return query;
}

private TypedQuery<Fagsak> getFagsakWhereSaksnummerQuery(Saksnummer saksnummer) {
return entityManager.createQuery("from Fagsak where saksnummer=:saksnummer", Fagsak.class).setParameter( "saksnummer", saksnummer);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -110,7 +110,7 @@ void skal_ha_refleksiv_equalsOgHashCode() {
assertThat(oppdrag110).isEqualTo(oppdrag110_2);
assertThat(oppdrag110_2).isEqualTo(oppdrag110);

oppdrag110_2 = oppdrag110Builder.medKodeEndring(KodeEndring.UEND).build();
oppdrag110_2 = oppdrag110Builder.medKodeEndring(KodeEndring.NY).build();
assertThat(oppdrag110).isNotEqualTo(oppdrag110_2);
assertThat(oppdrag110_2).isNotEqualTo(oppdrag110);
}
Expand All @@ -119,7 +119,7 @@ void skal_ha_refleksiv_equalsOgHashCode() {
void skal_bruke_KodeEndring_i_equalsOgHashCode() {
oppdrag110Builder = lagBuilderMedPaakrevdeFelter();
oppdrag110 = oppdrag110Builder.build();
oppdrag110Builder.medKodeEndring(KodeEndring.UEND);
oppdrag110Builder.medKodeEndring(KodeEndring.NY);
oppdrag110_2 = oppdrag110Builder.build();

assertThat(oppdrag110).isNotEqualTo(oppdrag110_2);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,8 @@
public class FpinntektsmeldingKlient {
private static final Logger LOG = LoggerFactory.getLogger(FpinntektsmeldingKlient.class);

private static final String REQUEST = "request";

private final RestClient restClient;
private final RestConfig restConfig;
private final URI uriOpprettForesporsel;
Expand All @@ -41,60 +43,60 @@ public FpinntektsmeldingKlient() {
this.uriSendNyBeskjedPåForespørsel = toUri(restConfig.fpContextPath(), "/api/foresporsel/ny-beskjed");
}

public OpprettForespørselResponsNy opprettForespørsel(OpprettForespørselRequest request) {
Objects.requireNonNull(request, "request");
public OpprettForespørselResponsNy opprettForespørsel(OpprettForespørselRequest opprettForespørselRequest) {
Objects.requireNonNull(opprettForespørselRequest, REQUEST);
try {
LOG.info("Sender request til fpinntektsmelding for saksnummer {} ", request.fagsakSaksnummer().saksnr());
var rrequest = RestRequest.newPOSTJson(request, uriOpprettForesporsel, restConfig);
return restClient.send(rrequest, OpprettForespørselResponsNy.class);
LOG.info("Sender request til fpinntektsmelding for saksnummer {} ", opprettForespørselRequest.fagsakSaksnummer().saksnr());
var request = RestRequest.newPOSTJson(opprettForespørselRequest, uriOpprettForesporsel, restConfig);
return restClient.send(request, OpprettForespørselResponsNy.class);
} catch (Exception e) {
LOG.warn("Feil ved opprettelse av inntektsmelding med request: {}", request);
LOG.warn("Feil ved opprettelse av inntektsmelding med request: {}", opprettForespørselRequest);
throw feilVedKallTilFpinntektsmelding(e.getMessage());
}
}

public void overstyrInntektsmelding(OverstyrInntektsmeldingRequest request) {
Objects.requireNonNull(request, "request");
public void overstyrInntektsmelding(OverstyrInntektsmeldingRequest overstyrInntektsmeldingRequest) {
Objects.requireNonNull(overstyrInntektsmeldingRequest, REQUEST);
try {
LOG.info("Overstyrer inntektsmelding for arbeidsgiver {}", request.arbeidsgiverIdent().ident());
var rrequest = RestRequest.newPOSTJson(request, uriOverstyrInntektsmelding, restConfig);
restClient.send(rrequest, String.class);
LOG.info("Overstyrer inntektsmelding for arbeidsgiver {}", overstyrInntektsmeldingRequest.arbeidsgiverIdent().ident());
var request = RestRequest.newPOSTJson(overstyrInntektsmeldingRequest, uriOverstyrInntektsmelding, restConfig);
restClient.send(request, String.class);
} catch (Exception e) {
LOG.warn("Feil ved overstyring av inntektsmelding med request: {}", request);
LOG.warn("Feil ved overstyring av inntektsmelding med request: {}", overstyrInntektsmeldingRequest);
throw feilVedKallTilFpinntektsmelding(e.getMessage());
}
}

public void lukkForespørsel(LukkForespørselRequest request) {
Objects.requireNonNull(request, "request");
public void lukkForespørsel(LukkForespørselRequest lukkForespørselRequest) {
Objects.requireNonNull(lukkForespørselRequest, REQUEST);
try {
LOG.info("Sender lukk forespørsel request til fpinntektsmelding for saksnummer {} med organisasjonsnummer {}", request.fagsakSaksnummer().saksnr(), request.orgnummer());
var restRequest = RestRequest.newPOSTJson(request, uriLukkForesporsel, restConfig);
restClient.send(restRequest, String.class);
LOG.info("Sender lukk forespørsel request til fpinntektsmelding for saksnummer {} med organisasjonsnummer {}", lukkForespørselRequest.fagsakSaksnummer().saksnr(), lukkForespørselRequest.orgnummer());
var request = RestRequest.newPOSTJson(lukkForespørselRequest, uriLukkForesporsel, restConfig);
restClient.send(request, String.class);
} catch (Exception e) {
skrivTilLogg(request);
skrivTilLogg(lukkForespørselRequest);
throw feilVedKallTilFpinntektsmelding(e.getMessage());
}
}

public void settForespørselTilUtgått(LukkForespørselRequest request) {
Objects.requireNonNull(request, "request");
public void settForespørselTilUtgått(LukkForespørselRequest lukkForespørselRequest) {
Objects.requireNonNull(lukkForespørselRequest, REQUEST);
try {
LOG.info("Sender Lukk forespørsel request til fpinntektsmelding for å sette forespørsel til utgått for saksnummer {} ", request.fagsakSaksnummer().saksnr());
var restRequest = RestRequest.newPOSTJson(request, uriSettForesporselTilUtgaatt, restConfig);
restClient.send(restRequest, String.class);
LOG.info("Sender Lukk forespørsel request til fpinntektsmelding for å sette forespørsel til utgått for saksnummer {} ", lukkForespørselRequest.fagsakSaksnummer().saksnr());
var request = RestRequest.newPOSTJson(lukkForespørselRequest, uriSettForesporselTilUtgaatt, restConfig);
restClient.send(request, String.class);
} catch (Exception e) {
skrivTilLogg(request);
skrivTilLogg(lukkForespørselRequest);
throw feilVedKallTilFpinntektsmelding(e.getMessage());
}
}

public SendNyBeskjedResponse sendNyBeskjedPåForespørsel(NyBeskjedRequest request) {
Objects.requireNonNull(request, "request");
public SendNyBeskjedResponse sendNyBeskjedPåForespørsel(NyBeskjedRequest nyBeskjedRequest) {
Objects.requireNonNull(nyBeskjedRequest, REQUEST);
try {
LOG.info("Sender ny beskjed request til fpinntektsmelding for å legge til ny beskjed på eksisterende forespørsel for saksnummer {} ", request.fagsakSaksnummer().saksnr());
var restRequest = RestRequest.newPOSTJson(request, uriSendNyBeskjedPåForespørsel, restConfig);
return restClient.send(restRequest, SendNyBeskjedResponse.class);
LOG.info("Sender ny beskjed request til fpinntektsmelding for å legge til ny beskjed på eksisterende forespørsel for saksnummer {} ", nyBeskjedRequest.fagsakSaksnummer().saksnr());
var request = RestRequest.newPOSTJson(nyBeskjedRequest, uriSendNyBeskjedPåForespørsel, restConfig);
return restClient.send(request, SendNyBeskjedResponse.class);
} catch (Exception e) {
throw feilVedKallTilFpinntektsmelding(e.getMessage());
}
Expand All @@ -112,8 +114,8 @@ private URI toUri(URI endpointURI, String path) {
}
}

private static void skrivTilLogg(LukkForespørselRequest request) {
LOG.warn("Feil ved oversending til fpinntektsmelding med lukk forespørsel request: {}", request);
private static void skrivTilLogg(LukkForespørselRequest lukkForespørselRequest) {
LOG.warn("Feil ved oversending til fpinntektsmelding med lukk forespørsel request: {}", lukkForespørselRequest);
}
}

Original file line number Diff line number Diff line change
Expand Up @@ -29,11 +29,11 @@ public KabalKlient() {
this.restConfig = RestConfig.forClient(KabalKlient.class);
}

public void sendTilKabal(TilKabalDto request) {
public void sendTilKabal(TilKabalDto tilKabalDto) {
if (IS_LOCAL) return; // Har ikke laget kabal-mock i VTP
try {
var rrequest = RestRequest.newPOSTJson(request, restConfig.endpoint(), restConfig);
restClient.sendExpectConflict(rrequest, String.class);
var request = RestRequest.newPOSTJson(tilKabalDto, restConfig.endpoint(), restConfig);
restClient.sendExpectConflict(request, String.class);
} catch (Exception e) {
LOG.warn("KABAL oversend: feil ved sending til KABAL {}", restConfig.endpoint(), e);
throw new TekniskException( "FP-180127", String.format("KABAL %s gir feil, ta opp med team klage.", restConfig.endpoint()), e);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,6 @@ public MottaFraKabalTask(BehandlingRepositoryProvider repositoryProvider,

@Override
protected void prosesser(ProsessTaskData prosessTaskData, Long behandlingId) {

var hendelsetype = Optional.ofNullable(prosessTaskData.getPropertyValue(HENDELSETYPE_KEY))
.map(KabalHendelse.BehandlingEventType::valueOf)
.orElseThrow(() -> new IllegalStateException("Utviklerfeil: Mottatt ikke-støtte kabalisme"));
Expand All @@ -86,6 +85,7 @@ protected void prosesser(ProsessTaskData prosessTaskData, Long behandlingId) {
case ANKE_I_TRYGDERETTENBEHANDLING_OPPRETTET -> ankeTrygdrett(prosessTaskData, behandlingId, ref);
case ANKEBEHANDLING_AVSLUTTET, BEHANDLING_ETTER_TRYGDERETTEN_OPPHEVET_AVSLUTTET -> ankeAvsluttet(prosessTaskData, behandlingId, ref);
case BEHANDLING_FEILREGISTRERT -> henleggFeilopprettet(prosessTaskData, behandlingId, ref);
case OMGJOERINGSKRAVBEHANDLING_AVSLUTTET -> throw new IllegalArgumentException("Utviklerfeil: hvorfor kom vi hit");
}
}

Expand Down
Loading

0 comments on commit f5615a6

Please sign in to comment.