Example usage for com.fasterxml.jackson.databind.module SimpleModule addSerializer

List of usage examples for com.fasterxml.jackson.databind.module SimpleModule addSerializer

Introduction

In this page you can find the example usage for com.fasterxml.jackson.databind.module SimpleModule addSerializer.

Prototype

public <T> SimpleModule addSerializer(Class<? extends T> type, JsonSerializer<T> ser) 

Source Link

Usage

From source file:com.adobe.api.platform.msc.client.jackson.JacksonConfig.java

public JacksonConfig() {
    mapper = new ObjectMapper();

    mapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
    mapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false);
    mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);

    // registering a module to serialize and deserialize JAX-RS Link objects
    SimpleModule linkModule = new SimpleModule("JaxRsLinkModule");
    linkModule.addSerializer(Link.class, new LinkSerializer());
    linkModule.addDeserializer(Link.class, new LinkDeserializer());
    mapper.registerModule(linkModule);/*from   ww w.  j  a  v  a 2  s  .  com*/
}

From source file:com.clicktravel.infrastructure.persistence.aws.cloudsearch.client.JsonDocumentUpdateMarshaller.java

private JsonDocumentUpdateMarshaller() {
    mapper = new ObjectMapper();
    final SimpleModule module = new SimpleModule();
    module.addSerializer(Boolean.class, new BooleanLiteralSerializer());
    mapper.registerModule(module);//from ww w .ja  v a  2  s  . c  o  m
    mapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false);
    mapper.registerModule(new JodaModule());
    mapper.setPropertyNamingStrategy(new LowerCasePropertyNamingStrategy());
}

From source file:com.infinities.nova.util.jackson.JacksonProvider.java

public JacksonProvider() {
    AnnotationIntrospector introspector = new JaxbAnnotationIntrospector(TypeFactory.defaultInstance());
    // if using BOTH JAXB annotations AND Jackson annotations:
    AnnotationIntrospector secondary = new JacksonAnnotationIntrospector();

    ObjectMapper mapper = new ObjectMapper().registerModule(new Hibernate4Module())
            .configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false)
            .setDateFormat(new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'"))
            .enable(SerializationFeature.INDENT_OUTPUT)
            .configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false)
            .setAnnotationIntrospector(new AnnotationIntrospectorPair(introspector, secondary));
    NullStringSerializer serializer = new NullStringSerializer();

    SimpleModule module = new SimpleModule("NullToNoneDeserializer");
    module.addSerializer(String.class, serializer);
    mapper.registerModule(module);/*from w  ww  . ja  v a2  s .  com*/
    // mapper = mapper.setSerializationInclusion(Include)
    setMapper(mapper);
}

From source file:es.logongas.iothome.agent.http.Http.java

public Http() {
    this.objectMapper = new ObjectMapper();

    objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
    objectMapper.configure(DeserializationFeature.ACCEPT_EMPTY_STRING_AS_NULL_OBJECT, true);

    SimpleModule module = new SimpleModule();
    module.addSerializer(java.util.Date.class, new DateSerializer());
    objectMapper.registerModule(module);
}

From source file:com.algodefu.yeti.web.rest.JacksonConfig.java

public JacksonConfig() {
    objectMapper = new ObjectMapper();
    objectMapper.addMixInAnnotations(Pass.class, PassMixin.class);
    SimpleModule module = new SimpleModule("MyModule", new Version(1, 0, 0, null));
    module.addSerializer(ClusterFormat.class, new ClusterFormatSerializer());
    module.addSerializer(LocalDateTime.class, new LocalDateTimeSerializer());
    module.addSerializer(Parameter.class, new ParameterSerializer());
    module.addSerializer(RangeParameter.class, new RangeParameterSerializer());
    objectMapper.registerModule(module);
}

From source file:com.orange.ngsi.ConvertersConfiguration.java

@Bean
public MappingJackson2HttpMessageConverter jsonV1Converter(ObjectMapper objectMapper) {

    // Serialize numbers as strings
    objectMapper.configure(JsonGenerator.Feature.WRITE_NUMBERS_AS_STRINGS, true);

    // Serialize booleans as strings
    SimpleModule booleanAsString = new SimpleModule("BooleanAsString");
    booleanAsString.addSerializer(Boolean.class, new JsonSerializer<Boolean>() {
        @Override/*from  w  w  w.j  a  va  2 s  .  co m*/
        public void serialize(Boolean value, JsonGenerator jgen, SerializerProvider provider)
                throws IOException, JsonProcessingException {
            jgen.writeString(value.toString());

        }
    });
    objectMapper.registerModule(booleanAsString);

    objectMapper.addMixIn(ContextElement.class, EntityIdMixIn.class);
    objectMapper.addMixIn(AppendContextElementResponse.class, EntityIdMixIn.class);

    return new MappingJackson2HttpMessageConverter(objectMapper);
}

From source file:jp.classmethod.aws.brian.utils.BrianServerObjectMapperFactoryBean.java

@Override
protected ObjectMapper createInstance() {
    ObjectMapper mapper = new ObjectMapper();
    SimpleModule brianModule = new SimpleModule("brianServerModule", VERSION);
    brianModule.addSerializer(Trigger.class, new TriggerSerializer());
    mapper.registerModule(brianModule);/*from www .  j  ava  2 s .  c om*/
    mapper.registerModule(new Jdk8Module());

    mapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false);
    mapper.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false);
    mapper.setVisibility(PropertyAccessor.FIELD, Visibility.ANY);

    SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");
    df.setTimeZone(TimeZones.UNIVERSAL);
    mapper.setDateFormat(df);

    return mapper;
}

From source file:org.camunda.bpm.example.spin.dataformat.configuration.JacksonDataFormatConfigurator.java

public void configure(JacksonJsonDataFormat dataFormat) {
    ObjectMapper objectMapper = dataFormat.getObjectMapper();
    SimpleModule module = new SimpleModule();
    module.addDeserializer(Money.class, new MoneyJsonDeserializer());
    module.addSerializer(Money.class, new MoneyJsonSerializer());
    objectMapper.registerModule(module);
}

From source file:nebula.plugin.metrics.dispatcher.AbstractMetricsDispatcher.java

/**
 * Register Jackson module that maps enums as lowercase. Per http://stackoverflow.com/a/24173645.
 */// w  w w.ja v a2 s.co  m
@SuppressWarnings("rawtypes")
private static void registerEnumModule(ObjectMapper mapper) {
    SimpleModule module = new SimpleModule();
    module.setDeserializerModifier(new BeanDeserializerModifier() {
        @Override
        public JsonDeserializer<Enum> modifyEnumDeserializer(DeserializationConfig config, final JavaType type,
                BeanDescription beanDesc, final JsonDeserializer<?> deserializer) {
            return new JsonDeserializer<Enum>() {
                @Override
                public Enum deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException {
                    @SuppressWarnings("unchecked")
                    Class<? extends Enum> rawClass = (Class<Enum<?>>) type.getRawClass();
                    return Enum.valueOf(rawClass, jp.getValueAsString().toUpperCase());
                }
            };
        }
    });
    module.addSerializer(Enum.class, new StdSerializer<Enum>(Enum.class) {
        @Override
        public void serialize(Enum value, JsonGenerator jgen, SerializerProvider provider) throws IOException {
            jgen.writeString(value.name().toLowerCase());
        }
    });
    mapper.registerModule(module);
}

From source file:be.wegenenverkeer.common.resteasy.json.RestJsonMapper.java

/**
 * Add a custom serializer./*  w  ww.ja  va  2  s .  co  m*/
 *
 * @param classToMap class to map
 * @param classSerializer serializer
 * @param <T> class to map
 */
public <T> void addClassSerializer(Class<? extends T> classToMap, JsonSerializer<T> classSerializer) {
    SimpleModule testModule = new SimpleModule("MyModule", new Version(1, 0, 0, null));
    testModule.addSerializer(classToMap, classSerializer);
    this.registerModule(testModule);
}