List of usage examples for com.fasterxml.jackson.databind.module SimpleModule SimpleModule
public SimpleModule(Version version)
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 ava2 s . c o 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: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 w ww . ja va 2 s .c o m }
From source file:com.arpnetworking.metrics.mad.configuration.PipelineConfiguration.java
/** * Create an <code>ObjectMapper</code> for Pipeline configuration. * * @param injector The Guice <code>Injector</code> instance. * @return An <code>ObjectMapper</code> for Pipeline configuration. *//*w w w . j a v a2 s . c o m*/ public static ObjectMapper createObjectMapper(final Injector injector) { final ObjectMapper objectMapper = ObjectMapperFactory.createInstance(); final SimpleModule module = new SimpleModule("Pipeline"); module.addDeserializer(Statistic.class, new StatisticDeserializer()); objectMapper.registerModules(module); final GuiceAnnotationIntrospector guiceIntrospector = new GuiceAnnotationIntrospector(); objectMapper.setInjectableValues(new GuiceInjectableValues(injector)); objectMapper.setAnnotationIntrospectors( new AnnotationIntrospectorPair(guiceIntrospector, objectMapper.getSerializationConfig().getAnnotationIntrospector()), new AnnotationIntrospectorPair(guiceIntrospector, objectMapper.getDeserializationConfig().getAnnotationIntrospector())); return objectMapper; }
From source file:com.groupon.jackson.ObjectMapperFactory.java
private static ObjectMapper createModifiableObjectMapper(final String name, final ObjectMapper objectMapper) { final SimpleModule module = new SimpleModule(name); objectMapper.registerModule(module); objectMapper.registerModule(new GuavaModule()); objectMapper.registerModule(new Jdk7Module()); objectMapper.registerModule(new Jdk8Module()); objectMapper.registerModule(new JodaModule()); objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); objectMapper.configure(DeserializationFeature.WRAP_EXCEPTIONS, false); objectMapper.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false); objectMapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false); objectMapper.setDateFormat(new ISO8601DateFormat()); return objectMapper; }
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 a2 s.com 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:com.setronica.ucs.storage.PgCategoryStorage.java
public PgCategoryStorage(DataSource ds, String tableName) { this.ds = ds; this.tableName = "ucs." + tableName; SimpleModule enumModule = new SimpleModule("MyModule") .addDeserializer(TLongSet.class, new TLongSetDeserializer()) .addSerializer(TLongSet.class, new TLongSetSerializer()); mapper.registerModule(enumModule);//from ww w. j a va2s . com mapper.disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES); logger.info("Create PgCategoryStorage for table: " + tableName); }
From source file:org.apache.drill.common.config.DrillConfig.java
private DrillConfig(Config config) { super(config); mapper = new ObjectMapper(); SimpleModule deserModule = new SimpleModule("LogicalExpressionDeserializationModule") .addDeserializer(LogicalExpression.class, new LogicalExpression.De(this)); mapper.registerModule(deserModule);/*from ww w . ja va2 s . c o m*/ mapper.enable(SerializationFeature.INDENT_OUTPUT); mapper.configure(Feature.ALLOW_UNQUOTED_FIELD_NAMES, true); mapper.configure(Feature.ALLOW_COMMENTS, true); mapper.registerSubtypes(LogicalOperatorBase.getSubTypes(this)); mapper.registerSubtypes(StorageEngineConfigBase.getSubTypes(this)); }
From source file:com.cloudera.nav.sdk.client.writer.JsonMetadataWriter.java
private ObjectMapper newMapper() { ObjectMapper mapper = new ObjectMapper(); SimpleModule module = new SimpleModule("MetadataSerializer"); if (config.getApiVersion() < 9) { module.addSerializer(new EntitySerializer(registry)); } else {/*from w w w . j a v a2 s . c o m*/ module.addSerializer(new EntityV9Serializer(registry)); } module.addSerializer(new RelationSerializer(registry)); mapper.registerModule(module); mapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false); mapper.configure(DeserializationFeature.WRAP_EXCEPTIONS, false); mapper.registerModule(new JodaModule()); return mapper; }
From source file:com.setronica.ucs.storage.PgStructMapStorage.java
public PgStructMapStorage(DataSource ds, String tableName, PgStructSerialization<K> keyS, ProductIdentityFactory identityFactory) { this.ds = ds; this.tableName = "ucs." + tableName; this.keyS = keyS; SimpleModule enumModule = new SimpleModule("MyModule") .addDeserializer(ProductIdentity.class, new MemProductIdentityDeserializer(identityFactory)) .addDeserializer(TLongSet.class, new PgCategoryStorage.TLongSetDeserializer()) .addSerializer(TLongSet.class, new PgCategoryStorage.TLongSetSerializer()); mapper.registerModule(enumModule);/*from w ww. j ava2s .com*/ L.info("Create PgStructMapStorage for table: {}", tableName); }
From source file:com.arpnetworking.tsdaggregator.configuration.PipelineConfiguration.java
/** * Create an <code>ObjectMapper</code> for Pipeline configuration. * * @param injector The Guice <code>Injector</code> instance. * @return An <code>ObjectMapper</code> for Pipeline configuration. *///www . j av a 2 s . c om public static ObjectMapper createObjectMapper(final Injector injector) { final ObjectMapper objectMapper = ObjectMapperFactory.createInstance(); final SimpleModule module = new SimpleModule("Pipeline"); BuilderDeserializer.addTo(module, PipelineConfiguration.class); final Set<Class<? extends Sink>> sinkClasses = INTERFACE_DATABASE.findClassesWithInterface(Sink.class); for (final Class<? extends Sink> sinkClass : sinkClasses) { BuilderDeserializer.addTo(module, sinkClass); } final Set<Class<? extends Source>> sourceClasses = INTERFACE_DATABASE .findClassesWithInterface(Source.class); for (final Class<? extends Source> sourceClass : sourceClasses) { BuilderDeserializer.addTo(module, sourceClass); } @SuppressWarnings({ "rawtypes", "unchecked" }) final Set<Class<? extends Parser<?>>> parserClasses = INTERFACE_DATABASE .findClassesWithInterface((Class) Parser.class); for (final Class<? extends Parser<?>> parserClass : parserClasses) { BuilderDeserializer.addTo(module, parserClass); } final Set<Class<? extends DynamicConfigurationFactory>> dcFactoryClasses = INTERFACE_DATABASE .findClassesWithInterface(DynamicConfigurationFactory.class); for (final Class<? extends DynamicConfigurationFactory> dcFactoryClass : dcFactoryClasses) { BuilderDeserializer.addTo(module, dcFactoryClass); } objectMapper.registerModules(module); final GuiceAnnotationIntrospector guiceIntrospector = new GuiceAnnotationIntrospector(); objectMapper.setInjectableValues(new GuiceInjectableValues(injector)); objectMapper.setAnnotationIntrospectors( new AnnotationIntrospectorPair(guiceIntrospector, objectMapper.getSerializationConfig().getAnnotationIntrospector()), new AnnotationIntrospectorPair(guiceIntrospector, objectMapper.getDeserializationConfig().getAnnotationIntrospector())); return objectMapper; }