Example usage for com.fasterxml.jackson.datatype.guava GuavaModule GuavaModule

List of usage examples for com.fasterxml.jackson.datatype.guava GuavaModule GuavaModule

Introduction

In this page you can find the example usage for com.fasterxml.jackson.datatype.guava GuavaModule GuavaModule.

Prototype

public GuavaModule() 

Source Link

Usage

From source file:com.netflix.suro.jackson.DefaultObjectMapper.java

@Inject
public DefaultObjectMapper(final Injector injector, Set<TypeHolder> crossInjectable) {
    SimpleModule serializerModule = new SimpleModule("SuroServer default serializers");
    serializerModule.addSerializer(ByteOrder.class, ToStringSerializer.instance);
    serializerModule.addDeserializer(ByteOrder.class, new JsonDeserializer<ByteOrder>() {
        @Override//from  w ww.  j a  v  a 2  s .  c  om
        public ByteOrder deserialize(JsonParser jp, DeserializationContext ctxt)
                throws IOException, JsonProcessingException {
            if (ByteOrder.BIG_ENDIAN.toString().equals(jp.getText())) {
                return ByteOrder.BIG_ENDIAN;
            }
            return ByteOrder.LITTLE_ENDIAN;
        }
    });
    registerModule(serializerModule);
    registerModule(new GuavaModule());

    if (injector != null) {
        setInjectableValues(new InjectableValues() {
            @Override
            public Object findInjectableValue(Object valueId, DeserializationContext ctxt,
                    BeanProperty forProperty, Object beanInstance) {
                LOG.info("Looking for " + valueId);
                try {
                    return injector.getInstance(
                            Key.get(forProperty.getType().getRawClass(), Names.named((String) valueId)));
                } catch (Exception e) {
                    try {
                        return injector.getInstance(forProperty.getType().getRawClass());
                    } catch (Exception ex) {
                        LOG.info("No implementation found, returning null");
                    }
                    return null;
                }
            }
        });
    }

    configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false);
    configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
    configure(MapperFeature.AUTO_DETECT_GETTERS, false);
    configure(MapperFeature.AUTO_DETECT_CREATORS, false);
    configure(MapperFeature.AUTO_DETECT_FIELDS, false);
    configure(MapperFeature.AUTO_DETECT_IS_GETTERS, false);
    configure(MapperFeature.AUTO_DETECT_SETTERS, false);
    configure(SerializationFeature.INDENT_OUTPUT, false);

    if (crossInjectable != null) {
        for (TypeHolder entry : crossInjectable) {
            LOG.info("Registering subtype : " + entry.getName() + " -> "
                    + entry.getRawType().getCanonicalName());
            registerSubtypes(new NamedType(entry.getRawType(), entry.getName()));
        }
    }
}

From source file:org.apache.james.mailbox.elasticsearch.json.MessageToElasticSearchJson.java

public MessageToElasticSearchJson(TextExtractor textExtractor, ZoneId zoneId, IndexAttachments indexAttachments,
        MessageSearchIndex.IndexMessageId indexMessageId) {
    this.textExtractor = textExtractor;
    this.zoneId = zoneId;
    this.indexAttachments = indexAttachments;
    this.mapper = new ObjectMapper();
    this.mapper.registerModule(new GuavaModule());
    this.mapper.registerModule(new Jdk8Module());
    this.indexMessageId = indexMessageId;
}

From source file:edu.upenn.mkse212.pennbook.server.FeedServiceImpl.java

public FeedServiceImpl() {
    super();/*from  w w w  . j  a v a  2  s.  c  om*/
    store = KeyValueStoreFactory.getKeyValueStore(Settings.storeType, DB_DOMAIN, Settings.path, Settings.userId,
            Settings.authKey, false);
    mapper = new ObjectMapper();
    mapper.registerModule(new GuavaModule());
}

From source file:keywhiz.testing.JsonHelpers.java

/**
 * Customized ObjectMapper for common settings.
 *
 * @return customized object mapper//from   w ww.  j  a  va2  s .com
 */
private static ObjectMapper customizeObjectMapper() {
    ObjectMapper mapper = new ObjectMapper();
    mapper.registerModule(new Jdk8Module());
    mapper.registerModule(new GuavaModule());
    mapper.registerModule(new LogbackModule());
    mapper.registerModule(new GuavaExtrasModule());
    mapper.registerModule(new FuzzyEnumModule());
    mapper.setPropertyNamingStrategy(new AnnotationSensitivePropertyNamingStrategy());
    mapper.setSubtypeResolver(new DiscoverableSubtypeResolver());
    mapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
    return mapper;
}

From source file:com.addthis.codec.jackson.Jackson.java

public static ObjectMapper registerExtraModules(ObjectMapper objectMapper) {
    objectMapper.registerModule(new GuavaModule());
    objectMapper.registerModule(new Jdk8Module());
    // jsr310 is basically just the jdk 8 date/time classes split into its own module
    objectMapper.registerModule(new JSR310Module());
    objectMapper.registerModule(new JodaModule());
    objectMapper.registerModule(new ExecutorsModule());
    return objectMapper;
}

From source file:com.aceevo.ursus.client.UrsusJerseyClientBuilder.java

/**
 * Builds the {@link Client} instance.//from   w w w  .  ja  va 2s  . c  o m
 *
 * @return a fully-configured {@link Client}
 */

public Client build() {
    ClientConfig clientConfig = new ClientConfig();
    clientConfig.property(ClientProperties.READ_TIMEOUT, configuration.getReadTimeout());
    clientConfig.property(ClientProperties.CONNECT_TIMEOUT, configuration.getConnectTimeout());
    clientConfig.property(ApacheClientProperties.DISABLE_COOKIES, true);

    PoolingHttpClientConnectionManager poolingClientConnectionManager = new PoolingHttpClientConnectionManager();
    poolingClientConnectionManager.setMaxTotal(configuration.getMaxTotalThread());
    poolingClientConnectionManager.setDefaultMaxPerRoute(configuration.getDefaultMaxPerRoute());

    clientConfig.property(ApacheClientProperties.CONNECTION_MANAGER, poolingClientConnectionManager);

    ObjectMapper mapper = new ObjectMapper();
    mapper.enable(SerializationFeature.INDENT_OUTPUT);
    mapper.registerModule(new GuavaModule());

    // create JsonProvider to provide custom ObjectMapper
    JacksonJaxbJsonProvider provider = new JacksonJaxbJsonProvider();
    provider.setMapper(mapper);

    return ClientBuilder.newBuilder().register(provider).withConfig(clientConfig).build();
}

From source file:de.taimos.dvalin.interconnect.model.InterconnectMapper.java

private static ObjectMapper createMapper() {
    ObjectMapper mapper = new ObjectMapper();
    JodaModule jm = new JodaModule();
    // make some modifications to ensure correct tz serialization and get map keys working
    jm.addKeyDeserializer(DateTime.class, new DateTimeKeyDeserializer());
    jm.addDeserializer(DateTime.class, new DateTimeDeserializerWithTZ());
    mapper.registerModule(jm);/*from   w ww  . jav  a2 s  . com*/
    mapper.registerModule(new GuavaModule());
    mapper.enable(DeserializationFeature.USE_BIG_DECIMAL_FOR_FLOATS);
    mapper.disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS);
    mapper.disable(SerializationFeature.FAIL_ON_EMPTY_BEANS);
    return mapper;
}

From source file:eu.trentorise.opendata.commons.test.jackson.JacksonTest.java

/**
 * This fails! As a workaround, we must initialize obj to 'absent' in the
 * object constructor!//  w  ww.  j  a v  a2  s.  c  o  m
 *
 * @throws IOException
 */
@Test(expected = AssertionError.class)
public void testEmptyOptional() throws IOException {
    ObjectMapper om = new ObjectMapper();
    om.registerModule(new GuavaModule());

    A rb = om.readValue("{}", A.class);
    assertEquals(Optional.absent(), rb.getOpt());
}

From source file:edu.upenn.mkse212.pennbook.server.UserServiceImpl.java

public UserServiceImpl() {
    super();/*from   ww w  . j av  a2s . c  o  m*/
    store = KeyValueStoreFactory.getKeyValueStore(Settings.storeType, DB_DOMAIN, Settings.path, Settings.userId,
            Settings.authKey, false);
    mapper = new ObjectMapper();
    mapper.registerModule(new GuavaModule());
}

From source file:eu.trentorise.opendata.commons.jackson.OdtCommonsModule.java

/**
 * Registers in the provided object mapper the jackson odt commons module and
 * also the required guava module.//from www .j  a  v a2 s . c om
 */
public static void registerModulesInto(ObjectMapper om) {
    om.registerModule(new GuavaModule());
    om.registerModule(new OdtCommonsModule());
}