JavaJaxRS.resteasy.eap.JacksonConfig.mustache Maven / Gradle / Ivy
package {{invokerPackage}};
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.ext.ContextResolver;
import javax.ws.rs.ext.Provider;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.fasterxml.jackson.databind.ObjectMapper;
{{#java8}}
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
{{/java8}}
{{^java8}}
import com.fasterxml.jackson.datatype.joda.JodaModule;
{{/java8}}
@Provider
@Produces(MediaType.APPLICATION_JSON)
public class JacksonConfig implements ContextResolver {
private static final Logger LOG = LoggerFactory.getLogger(JacksonConfig.class);
private ObjectMapper objectMapper;
public JacksonConfig() throws Exception {
this.objectMapper = new ObjectMapper();
{{#java8}}
this.objectMapper.registerModule(new JavaTimeModule());
{{/java8}}
{{^java8}}
this.objectMapper.registerModule(new JodaModule());
{{/java8}}
// sample to convert any DateTime to readable timestamps
//this.objectMapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, true);
}
public ObjectMapper getContext(Class> objectType) {
return objectMapper;
}
}