File tree 3 files changed +53
-0
lines changed
main/java/no/nav/k9/innsyn
test/java/no/nav/k9/innsyn/sak
soknad/src/main/java/no/nav/k9/søknad
3 files changed +53
-0
lines changed Original file line number Diff line number Diff line change
1
+ package no .nav .k9 .innsyn ;
2
+
3
+ import java .io .IOException ;
4
+
5
+ import com .fasterxml .jackson .core .JsonGenerator ;
6
+ import com .fasterxml .jackson .databind .ObjectMapper ;
7
+ import com .fasterxml .jackson .databind .SerializerProvider ;
8
+ import com .fasterxml .jackson .databind .module .SimpleModule ;
9
+ import com .fasterxml .jackson .databind .ser .std .StdSerializer ;
10
+
11
+ import no .nav .k9 .kodeverk .api .Kodeverdi ;
12
+ import no .nav .k9 .søknad .JsonUtils ;
13
+
14
+ /**
15
+ * nødvendig for å kunne serializere k9-sak kodeverdi objekter til string
16
+ * kan fjernes når k9-sak har tatt i bruk @JsonValue på sine kodeobjekter
17
+ */
18
+ public class TempObjectMapperKodeverdi {
19
+
20
+ public static ObjectMapper getObjectMapper () {
21
+ var om = JsonUtils .getObjectMapper ().copy ();
22
+ var m = new SimpleModule ();
23
+ m .addSerializer (Kodeverdi .class , new TempKodeverdiSerializer ());
24
+ om .registerModule (m );
25
+ return om ;
26
+ }
27
+
28
+ private static class TempKodeverdiSerializer extends StdSerializer <Kodeverdi > {
29
+
30
+ public TempKodeverdiSerializer (){
31
+ super (Kodeverdi .class );
32
+ }
33
+
34
+ @ Override
35
+ public void serialize (Kodeverdi value , JsonGenerator gen , SerializerProvider provider ) throws IOException {
36
+ gen .writeString (value .getKode ());
37
+ }
38
+ }
39
+
40
+ }
41
+
Original file line number Diff line number Diff line change 14
14
import org .junit .jupiter .api .Test ;
15
15
16
16
import no .nav .k9 .innsyn .InnsynHendelse ;
17
+ import no .nav .k9 .innsyn .TempObjectMapperKodeverdi ;
17
18
import no .nav .k9 .kodeverk .behandling .FagsakYtelseType ;
18
19
import no .nav .k9 .sak .typer .AktørId ;
19
20
import no .nav .k9 .sak .typer .Saksnummer ;
@@ -105,6 +106,9 @@ void deserialiserFraJsonString() {
105
106
Aksjonspunkt aksjonspunkt = aksjonspunkter .stream ().findFirst ().get ();
106
107
assertThat (aksjonspunkt .venteårsak ()).isEqualTo (Aksjonspunkt .Venteårsak .INNTEKTSMELDING );
107
108
assertThat (aksjonspunkt .tidsfrist ()).isEqualTo (ZonedDateTime .parse ("2024-02-15T12:00:00.000Z" ));
109
+
110
+ String json = JsonUtils .toString (hendelse , TempObjectMapperKodeverdi .getObjectMapper ());
111
+ assertThat (json ).doesNotContain ("kodeverk" );
108
112
}
109
113
110
114
@ Test
Original file line number Diff line number Diff line change @@ -27,6 +27,14 @@ private JsonUtils() {
27
27
}
28
28
29
29
public static String toString (Object object ) {
30
+ return toString (object , objectMapper );
31
+ }
32
+
33
+ /**
34
+ * Tillater å override objectmapper. Nødvendig i en overgangsfase mens Kodeverdi objekter i k9sak
35
+ * overføres til @JsonValue
36
+ */
37
+ public static String toString (Object object , ObjectMapper objectMapper ) {
30
38
try {
31
39
return objectMapper .writer (new PlatformIndependentPrettyPrinter ()).writeValueAsString (object );
32
40
} catch (JsonProcessingException e ) {
You can’t perform that action at this time.
0 commit comments