Example usage for com.fasterxml.jackson.databind ObjectMapper configure

List of usage examples for com.fasterxml.jackson.databind ObjectMapper configure

Introduction

In this page you can find the example usage for com.fasterxml.jackson.databind ObjectMapper configure.

Prototype

public ObjectMapper configure(JsonGenerator.Feature f, boolean state) 

Source Link

Document

Method for changing state of an on/off JsonGenerator feature for JsonFactory instance this object mapper uses.

Usage

From source file:com.wiiyaya.consumer.web.initializer.config.WebConfig.java

/**
 * ???/*from w  w  w  .  j a va  2 s  .co m*/
 */
@Override
public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
    StringHttpMessageConverter stringConverter = new StringHttpMessageConverter(ConfigConstant.SYSTEM_CHARSET);
    stringConverter.setWriteAcceptCharset(false);

    converters.add(new ByteArrayHttpMessageConverter());
    converters.add(stringConverter);
    converters.add(new ResourceHttpMessageConverter());
    converters.add(new SourceHttpMessageConverter<Source>());
    converters.add(new AllEncompassingFormHttpMessageConverter());
    converters.add(new Jaxb2RootElementHttpMessageConverter());

    MappingJackson2HttpMessageConverter jacksonConverter = new MappingJackson2HttpMessageConverter();
    ObjectMapper om = jacksonConverter.getObjectMapper();
    om.setDateFormat(new SimpleDateFormat(ConfigConstant.SYSTEM_DATE_FORMAT));
    om.setLocale(ConfigConstant.SYSTEM_LOCALE);
    om.setTimeZone(TimeZone.getTimeZone(ConfigConstant.SYSTEM_TIME_ZONE));
    om.getSerializerProvider().setNullValueSerializer(new JsonSerializer<Object>() {
        @Override
        public void serialize(Object value, JsonGenerator gen, SerializerProvider serializers)
                throws IOException, JsonProcessingException {
            gen.writeString(StringUtils.EMPTY);
        }
    });
    om.configure(Feature.WRITE_NUMBERS_AS_STRINGS, true);
    om.configure(Feature.WRITE_BIGDECIMAL_AS_PLAIN, true);

    List<MediaType> mediaTypeList = new ArrayList<MediaType>();
    mediaTypeList.add(new MediaType("text", "plain", ConfigConstant.SYSTEM_CHARSET));
    jacksonConverter.setSupportedMediaTypes(mediaTypeList);
    converters.add(jacksonConverter);
}

From source file:com.webtide.jetty.load.generator.jenkins.LoadGeneratorBuilder.java

protected ArgumentListBuilder getArgsProcess(Resource resource, Computer computer, TaskListener taskListener,
        Run<?, ?> run, String statsResultFilePath) throws Exception {

    ObjectMapper objectMapper = new ObjectMapper();
    objectMapper.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false);
    StringWriter stringWriter = new StringWriter();
    objectMapper.writeValue(stringWriter, resource);
    stringWriter.close();//from   ww w .j a v a 2s  .  c o  m

    final String tmpFilePath = getCurrentNode(computer) //
            .getChannel().call(new CopyResource(stringWriter.toString()));

    ArgumentListBuilder cmdLine = new ArgumentListBuilder();

    cmdLine.add("--resource-json-path").add(tmpFilePath) //
            .add("--host").add(expandTokens(taskListener, host, run)) //
            .add("--port").add(expandTokens(taskListener, port, run)) //
            .add("--transport").add(StringUtils.lowerCase(this.getTransport().toString())) //
            .add("--users").add(expandTokens(taskListener, users, run)) //
            .add("--resource-rate").add(expandTokens(taskListener, resourceRate, run)) //
            .add("--stats-file").add(statsResultFilePath) //
            .add("--threads").add(threadsNumber < 1 ? 1 : threadsNumber) //
            .add("--scheme").add(isSecureProtocol() ? "https" : "http");

    int iterationRuns = NumberUtils.toInt(expandTokens(taskListener, runIteration, run), 0);

    if (iterationRuns > 0) {
        cmdLine.add("--iterations").add(Integer.toString(iterationRuns));
    } else {
        cmdLine.add("--running-time").add(expandTokens(taskListener, runningTime, run));
        cmdLine.add("--running-time-unit");
        switch (this.runningTimeUnit) {
        case HOURS:
            cmdLine.add("h");
            break;
        case MINUTES:
            cmdLine.add("m");
            break;
        case SECONDS:
            cmdLine.add("s");
            break;
        case MILLISECONDS:
            cmdLine.add("ms");
            break;
        default:
            throw new IllegalArgumentException(runningTimeUnit + " is not recognized");
        }
    }

    int warmupNumber = StringUtils.isNotEmpty(getWarmupNumber()) ? //
            Integer.parseInt(expandTokens(taskListener, this.getWarmupNumber(), run)) : -1;

    if (warmupNumber > 0) {
        cmdLine.add("--warmup-iterations").add(warmupNumber);
    }

    // FIXME deleting tmp file
    // getCurrentNode().getChannel().call( new DeleteTmpFile( tmpFilePath ) );
    LOGGER.debug("finish");
    LOGGER.info("load generator starter args:" + cmdLine.toString());
    return cmdLine;

}

From source file:com.strandls.alchemy.rest.client.ExceptionObjectMapperModule.java

/**
 * Binding for throwable exception mapper.
 *
 * @param mapper//  w w w.ja v  a2  s  .com
 * @return
 */
@Provides
@Singleton
@ThrowableObjectMapper
public ObjectMapper getExceptionObjectMapper(final ObjectMapper mapper) {
    // can't copy owing to bug -
    // https://github.com/FasterXML/jackson-databind/issues/245
    final ObjectMapper exceptionMapper = mapper;
    exceptionMapper.registerModule(new SimpleModule() {
        /**
         * The serial version id.
         */
        private static final long serialVersionUID = 1L;

        /*
         * (non-Javadoc)
         * @see
         * com.fasterxml.jackson.databind.module.SimpleModule#setupModule
         * (com.fasterxml.jackson.databind.Module.SetupContext)
         */
        @Override
        public void setupModule(final SetupContext context) {
            context.setMixInAnnotations(Exception.class, ThrowableMaskMixin.class);
            context.setMixInAnnotations(TestCustomException.class, ThrowableMaskMixin.class);
        }
    });
    exceptionMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
    return exceptionMapper;
}

From source file:com.apteligent.ApteligentJavaClient.java

private ObjectMapper getObjectMapper() {
    // configure and return ObjectMapper for JSON->Java Object de-serialization
    ObjectMapper mapper = new ObjectMapper();
    mapper.disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES);
    mapper.setVisibilityChecker(mapper.getSerializationConfig().getDefaultVisibilityChecker()
            .withFieldVisibility(JsonAutoDetect.Visibility.ANY)
            .withGetterVisibility(JsonAutoDetect.Visibility.NONE)
            .withSetterVisibility(JsonAutoDetect.Visibility.NONE)
            .withCreatorVisibility(JsonAutoDetect.Visibility.NONE));
    mapper.configure(DeserializationFeature.READ_ENUMS_USING_TO_STRING, true);
    return mapper;
}

From source file:com.fitbur.docker.client.internal.ObjectMapperProvider.java

@PerLookup
@Override//from  w w  w.  j a v a2s  .  c  om
public ObjectMapper provide() {
    ObjectMapper mapper = new ObjectMapper();

    mapper.setSerializationInclusion(JsonInclude.Include.NON_EMPTY)
            .setSerializationInclusion(JsonInclude.Include.NON_NULL);

    mapper.enable(MapperFeature.USE_ANNOTATIONS).enable(MapperFeature.AUTO_DETECT_GETTERS)
            .enable(MapperFeature.AUTO_DETECT_SETTERS).enable(MapperFeature.AUTO_DETECT_IS_GETTERS)
            .enable(MapperFeature.AUTO_DETECT_FIELDS).enable(MapperFeature.REQUIRE_SETTERS_FOR_GETTERS);

    mapper.disable(SerializationFeature.INDENT_OUTPUT).enable(SerializationFeature.WRITE_EMPTY_JSON_ARRAYS)
            .disable(SerializationFeature.FAIL_ON_EMPTY_BEANS);

    mapper.disable(DeserializationFeature.ACCEPT_EMPTY_STRING_AS_NULL_OBJECT)
            .disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES)
            .disable(DeserializationFeature.FAIL_ON_NULL_FOR_PRIMITIVES);

    mapper.configure(JsonParser.Feature.ALLOW_COMMENTS, true)
            .configure(JsonGenerator.Feature.WRITE_NUMBERS_AS_STRINGS, true);

    return mapper;
}

From source file:org.springframework.data.rest.webmvc.config.RepositoryRestMvcConfiguration.java

protected ObjectMapper basicObjectMapper() {

    ObjectMapper objectMapper = new ObjectMapper();

    objectMapper.configure(SerializationFeature.INDENT_OUTPUT, true);
    objectMapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false);
    objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
    objectMapper.registerModule(geoModule);

    if (config().isEnableEnumTranslation()) {
        objectMapper.registerModule(new JacksonSerializers(enumTranslator()));
    }/*from  ww  w  . j a  v  a2 s .c  om*/

    Jackson2DatatypeHelper.configureObjectMapper(objectMapper);
    // Configure custom Modules
    configurerDelegate.configureJacksonObjectMapper(objectMapper);
    configureJacksonObjectMapper(objectMapper);

    return objectMapper;
}

From source file:com.thinkbiganalytics.integration.IntegrationTestBase.java

@Before
public void setupRestAssured() throws URISyntaxException {
    UserContext.setUser(UserContext.User.ADMIN);

    RestAssured.baseURI = kyloConfig.getProtocol() + kyloConfig.getHost();
    RestAssured.port = kyloConfig.getPort();
    RestAssured.basePath = kyloConfig.getBasePath();

    RestAssured.enableLoggingOfRequestAndResponseIfValidationFails();

    Jackson2ObjectMapperFactory factory = (aClass, s) -> {
        ObjectMapper om = new ObjectMapper();
        om.registerModule(new JodaModule());
        om.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, true);
        om.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false);
        om.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
        configureObjectMapper(om);/* w  w  w.  jav a 2 s  .  c om*/

        return om;
    };
    com.jayway.restassured.mapper.ObjectMapper objectMapper = new Jackson2Mapper(factory);
    RestAssured.objectMapper(objectMapper);

    startClean();
}

From source file:it.sayservice.platform.smartplanner.otp.OTPHandler.java

public List<Object> getAgencies(String router) throws Exception {

    List<Object> result = new ArrayList<Object>();
    String res = HTTPConnector.doGet(otpURL + Constants.AGENCIES, null, null, MediaType.APPLICATION_JSON);
    ObjectMapper mapper = new ObjectMapper();
    mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);

    ArrayList list = mapper.readValue(res, ArrayList.class);

    for (Object o : list) {
        result.add(o);//ww w. ja  v a2 s  . c om
    }
    return result;
}