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

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

Introduction

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

Prototype

public ObjectMapper registerModule(Module module) 

Source Link

Document

Method for registering a module that can extend functionality provided by this mapper; for example, by adding providers for custom serializers and deserializers.

Usage

From source file:de.avpptr.umweltzone.utils.ContentProvider.java

@SuppressWarnings("unchecked") // for Collections.EMPTY_LIST
@NonNull//from   ww  w . j  av  a  2 s . c o  m
private static <T> List<T> getContent(final Context context, final String fileName, final String folderName,
        Class<T> contentType) {
    int rawResourceId = getResourceId(context, fileName, folderName);

    InputStream inputStream = context.getResources().openRawResource(rawResourceId);
    SimpleModule module = new SimpleModule();
    module.addDeserializer(Circuit.class, new CircuitDeserializer());
    ObjectMapper objectMapper = new ObjectMapper();
    objectMapper.registerModule(module);
    String datePattern = context.getString(R.string.config_zone_number_since_date_format);
    objectMapper.setDateFormat(new SimpleDateFormat(datePattern, Locale.getDefault()));
    try {
        TypeFactory typeFactory = objectMapper.getTypeFactory();
        CollectionType collectionType = typeFactory.constructCollectionType(List.class, contentType);
        return objectMapper.readValue(inputStream, collectionType);
    } catch (IOException e) {
        // TODO Aware that app will crash when JSON is mis-structured.
        e.printStackTrace();
    }
    Log.e(ContentProvider.class.getName(), "Failure parsing zone data for: " + fileName);
    return Collections.EMPTY_LIST;
}

From source file:com.oracle.cloud.cache.rest.JacksonMapperProvider.java

/**
 * Creates a default {@link ObjectMapper}.
 *
 * @return a new {@link ObjectMapper}//from  w ww .  ja  v a 2s . c  om
 */
private static ObjectMapper createDefaultMapper() {
    final ObjectMapper mapper = new ObjectMapper();

    JaxbAnnotationModule module = new JaxbAnnotationModule();

    mapper.registerModule(module);

    mapper.configure(MapperFeature.AUTO_DETECT_FIELDS, false);
    mapper.configure(MapperFeature.SORT_PROPERTIES_ALPHABETICALLY, true);
    mapper.configure(MapperFeature.USE_WRAPPER_NAME_AS_PROPERTY_NAME, true);
    mapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false);
    mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
    mapper.configure(DeserializationFeature.FAIL_ON_NUMBERS_FOR_ENUMS, true);
    mapper.configure(MapperFeature.USE_GETTERS_AS_SETTERS, false);
    mapper.configure(JsonGenerator.Feature.AUTO_CLOSE_TARGET, false);

    return mapper;
}

From source file:com.palantir.atlasdb.keyvalue.remoting.Utils.java

public static void setupRuleHacks(DropwizardClientRule rule) {
    try {//from   www.  j  ava  2s . c o  m
        Field field = rule.getClass().getDeclaredField("testSupport");
        field.setAccessible(true);
        @SuppressWarnings("unchecked")
        DropwizardTestSupport<Configuration> testSupport = (DropwizardTestSupport<Configuration>) field
                .get(rule);
        ObjectMapper mapper = testSupport.getEnvironment().getObjectMapper();
        mapper.registerModule(Utils.module);
        mapper.registerModule(new GuavaModule());
        testSupport.getApplication();
    } catch (Exception e) {
        throw Throwables.throwUncheckedException(e);
    }
}

From source file:de.undercouch.bson4jackson.serializers.BsonSerializersTest.java

private static Object generateAndParse(Object data) throws Exception {
    Map<String, Object> m = new LinkedHashMap<String, Object>();
    m.put("data", data);

    ByteArrayOutputStream baos = new ByteArrayOutputStream();

    ObjectMapper om = new ObjectMapper(new BsonFactory());
    om.registerModule(new BsonModule());
    om.writeValue(baos, m);/* www . ja va 2  s  .co  m*/

    byte[] r = baos.toByteArray();
    ByteArrayInputStream bais = new ByteArrayInputStream(r);

    BSONDecoder decoder = new BasicBSONDecoder();
    BSONObject bo = decoder.readObject(bais);

    return bo.get("data");
}

From source file:nl.talsmasoftware.enumerables.support.json.jackson2.EnumerableJackson2ModuleTest.java

static ObjectMapper mapperWith(Module module) {
    ObjectMapper mapper = new ObjectMapper();
    mapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
    mapper.registerModule(module);
    return mapper;
}

From source file:com.adobe.cq.wcm.core.components.Utils.java

/**
 * Provided a {@code model} object and an {@code expectedJsonResource} identifying a JSON file in the class path, this method will
 * test the JSON export of the model and compare it to the JSON object provided by the {@code expectedJsonResource}.
 *
 * @param model                the Sling Model
 * @param expectedJsonResource the class path resource providing the expected JSON object
 *//*from   w w w.ja v a2s .  c om*/
public static void testJSONExport(Object model, String expectedJsonResource) {
    Writer writer = new StringWriter();
    ObjectMapper mapper = new ObjectMapper();
    PageModuleProvider pageModuleProvider = new PageModuleProvider();
    mapper.registerModule(pageModuleProvider.getModule());
    DefaultMethodSkippingModuleProvider defaultMethodSkippingModuleProvider = new DefaultMethodSkippingModuleProvider();
    mapper.registerModule(defaultMethodSkippingModuleProvider.getModule());
    try {
        mapper.writer().writeValue(writer, model);
    } catch (IOException e) {
        fail(String.format("Unable to generate JSON export for model %s: %s", model.getClass().getName(),
                e.getMessage()));
    }
    JsonReader outputReader = Json.createReader(IOUtils.toInputStream(writer.toString()));
    InputStream is = Thread.currentThread().getContextClassLoader().getClass()
            .getResourceAsStream(expectedJsonResource);
    if (is != null) {
        JsonReader expectedReader = Json.createReader(is);
        assertEquals(expectedReader.read(), outputReader.read());
    } else {
        fail("Unable to find test file " + expectedJsonResource + ".");
    }
    IOUtils.closeQuietly(is);
}

From source file:com.basistech.rosette.apimodel.jackson.ApiModelMixinModule.java

/**
 * Register the Rosette API Model Jackson module on an {@link ObjectMapper}.
 *
 * @param mapper the mapper.// w  w w .  j  a  v a 2  s .  c  o m
 * @return the same mapper, for convenience.
 */
public static ObjectMapper setupObjectMapper(ObjectMapper mapper) {
    final ApiModelMixinModule module = new ApiModelMixinModule();
    mapper.registerModule(module);
    return mapper;
}

From source file:com.basistech.rosette.dm.jackson.array.AnnotatedDataModelArrayModule.java

/**
 * Register the Annotated Data Model Jackson module on an {@link ObjectMapper}.
 * @param mapper the mapper.// w  ww .  jav  a  2  s  .  c om
 * @return the same mapper, for convenience.
 */
public static ObjectMapper setupObjectMapper(ObjectMapper mapper) {
    final AnnotatedDataModelArrayModule module = new AnnotatedDataModelArrayModule();
    mapper.registerModule(module);
    return mapper;
}

From source file:com.basistech.AnnotatedDataModelModule.java

/**
 * Register the Annotated Data Model Jackson module on an {@link com.fasterxml.jackson.databind.ObjectMapper}.
 * @param mapper the mapper./*from   ww  w  .j  a  va  2s. c  o m*/
 * @return the same mapper, for convenience.
 */
public static ObjectMapper setupObjectMapper(ObjectMapper mapper) {
    mapper.getSerializationConfig().withSerializationInclusion(JsonInclude.Include.NON_NULL);
    final AnnotatedDataModelModule module = new AnnotatedDataModelModule();
    mapper.registerModule(module);
    return mapper;
}

From source file:org.nohope.jongo.JacksonProcessor.java

@Nonnull
private static ObjectMapper createPreConfiguredMapper() {
    final ObjectMapper mapper = new ObjectMapper();
    mapper.registerModule(new JodaModule());
    mapper.registerModule(new ColorModule());

    mapper.configure(FAIL_ON_UNKNOWN_PROPERTIES, false);
    mapper.configure(AUTO_DETECT_GETTERS, false);
    mapper.configure(AUTO_DETECT_SETTERS, false);
    mapper.setSerializationInclusion(NON_NULL);
    mapper.setVisibilityChecker(VisibilityChecker.Std.defaultInstance().withFieldVisibility(ANY));

    mapper.enableDefaultTypingAsProperty(ObjectMapper.DefaultTyping.NON_FINAL,
            JsonTypeInfo.Id.CLASS.getDefaultPropertyName());

    final SimpleModule module = new SimpleModule("jongo", Version.unknownVersion());
    module.addKeySerializer(Object.class, ComplexKeySerializer.S_OBJECT);
    module.addKeyDeserializer(String.class, ComplexKeyDeserializer.S_OBJECT);
    module.addKeyDeserializer(Object.class, ComplexKeyDeserializer.S_OBJECT);

    //addBSONTypeSerializers(module);

    mapper.registerModule(module);//w w w.  jav a 2  s.c  om
    return mapper;
}