e0f9043389
Changed API_EMAIL and API_KEY to static final for proper constant usage. Added a private constructor in JsonConf to prevent instantiation, ensuring adherence to utility class design principles.
27 lines
928 B
Java
27 lines
928 B
Java
package codes.thischwa.cf;
|
|
|
|
import com.fasterxml.jackson.annotation.JsonInclude;
|
|
import com.fasterxml.jackson.databind.DeserializationFeature;
|
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
|
import com.fasterxml.jackson.databind.PropertyNamingStrategies;
|
|
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
|
|
|
|
/**
|
|
* The JsonConf class provides a utility method for initializing and configuring a shared
|
|
* {@link ObjectMapper} instance for JSON serialization and deserialization.
|
|
*/
|
|
class JsonConf {
|
|
|
|
private JsonConf() {
|
|
}
|
|
|
|
static ObjectMapper initObjectMapper() {
|
|
ObjectMapper mapper = new ObjectMapper();
|
|
mapper.registerModule(new JavaTimeModule());
|
|
mapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
|
|
mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
|
|
mapper.setPropertyNamingStrategy(PropertyNamingStrategies.SNAKE_CASE);
|
|
return mapper;
|
|
}
|
|
}
|