no.nav.common.json.JsonMapper Maven / Gradle / Ivy
package no.nav.common.json;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.datatype.jdk8.Jdk8Module;
import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.ANY;
import static com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility.NONE;
import static com.fasterxml.jackson.databind.DeserializationFeature.ACCEPT_EMPTY_STRING_AS_NULL_OBJECT;
import static com.fasterxml.jackson.databind.DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES;
public class JsonMapper {
public static ObjectMapper defaultObjectMapper() {
return applyDefaultConfiguration(new ObjectMapper());
}
public static ObjectMapper applyDefaultConfiguration(ObjectMapper objectMapper) {
objectMapper
.registerModule(new Jdk8Module())
.registerModule(DateModule.module())
.configure(FAIL_ON_UNKNOWN_PROPERTIES, false)
.configure(ACCEPT_EMPTY_STRING_AS_NULL_OBJECT, true);
objectMapper.setVisibility(objectMapper.getSerializationConfig().getDefaultVisibilityChecker()
.withFieldVisibility(ANY)
.withGetterVisibility(NONE)
.withSetterVisibility(NONE)
.withCreatorVisibility(NONE)
);
return objectMapper;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy