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

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

Introduction

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

Prototype

public SimpleModule(String name, Version version) 

Source Link

Document

Constructor to use for actual reusable modules.

Usage

From source file:com.google.api.server.spi.response.ServletResponseResultWriter.java

private static SimpleModule getWriteBlobAsBase64Module() {
    JsonSerializer<Blob> dateSerializer = new JsonSerializer<Blob>() {
        @Override/*from  w  w w  .j ava2s. c  om*/
        public void serialize(Blob value, JsonGenerator jgen, SerializerProvider provider) throws IOException {
            byte[] bytes = value.getBytes();
            jgen.writeBinary(bytes, 0, bytes.length);
        }
    };
    SimpleModule writeBlobAsBase64Module = new SimpleModule("writeBlobAsBase64Module",
            new Version(1, 0, 0, null, null, null));
    writeBlobAsBase64Module.addSerializer(Blob.class, dateSerializer);
    return writeBlobAsBase64Module;
}

From source file:org.phenotips.data.rest.internal.DefaultPatientsFetchResourceImpl.java

/**
 * A custom object mapper to facilitate serializing a list of {@link Patient} objects.
 *
 * @return an object mapper that can serialize {@link Patient} objects
 *//*ww w .  j  a  v a  2 s.c  om*/
private ObjectMapper getCustomObjectMapper() {
    final ObjectMapper mapper = new ObjectMapper();
    SimpleModule m = new SimpleModule("PrimaryEntitySerializer",
            new Version(1, 0, 0, "", "org.phenotips", "PatientReferenceSerializer"));
    m.addSerializer(PrimaryEntity.class, new PrimaryEntitySerializer());
    mapper.registerModule(m);
    return mapper;
}

From source file:org.dd4t.databind.builder.json.JsonDataBinder.java

protected void configureMapper() {
    // This is the hook where view models are custom generated
    final ComponentPresentationDeserializer componentPresentationDeserializer = new ComponentPresentationDeserializer(
            this.concreteComponentPresentationImpl, this.concreteComponentTemplateImpl,
            this.concreteComponentImpl);
    final SimpleModule module = new SimpleModule("ComponentPresentationDeserializerModule",
            new Version(1, 0, 0, "RELEASE", "org.dd4t", "dd4t-databind"));
    module.addDeserializer(ComponentPresentation.class, componentPresentationDeserializer);
    GENERIC_MAPPER.registerModule(module);
    GENERIC_MAPPER.addMixInAnnotations(Field.class, BaseFieldMixIn.class);

    LOG.debug("Mapper configured for: {} and {}", this.concreteComponentPresentationImpl.toString(),
            this.concreteComponentTemplateImpl.toString());
}

From source file:com.zenesis.qx.remote.ProxyObjectMapper.java

/**
 * Constructor/*  w  w  w  .ja v a2  s.  c om*/
 * @param tracker
 * @param indent whether to indent JSON
 * @param rootDir root directory to serialise all File's as relative to
 */
public ProxyObjectMapper(ProxySessionTracker tracker, boolean indent, File rootDir) {
    super();
    this.tracker = tracker;
    SimpleModule module = new SimpleModule("ProxyObjectMapper", Version.unknownVersion());
    module.addSerializer(Proxied.class, new ProxiedSerializer());
    module.addDeserializer(Proxied.class, new ProxiedDeserializer());
    module.addSerializer(Date.class, new DateSerializer());
    module.addSerializer(String.class, new StringSerializer());
    module.addSerializer(Enum.class, new EnumSerializer());
    module.addSerializer(File.class, new FileSerializer(rootDir));
    module.addDeserializer(File.class, new FileDeserializer(rootDir));
    module.addSerializer(Map.class, new MapSerializer());
    registerModule(module);
}

From source file:it.eng.spagobi.engines.network.bean.JSONNetwork.java

/**
 * JSON serializer for this object// w w w.j  a  va2s  .c  o m
 * @return the network serialized
 * @throws SerializationException
 */
@JsonIgnore
public String getNetworkAsString() throws SerializationException {
    ObjectMapper mapper = new ObjectMapper();
    String s = "";
    try {
        SimpleModule simpleModule = new SimpleModule("SimpleModule", new Version(1, 0, 0, null));
        simpleModule.addSerializer(Node.class, new NodeJSONSerializer());
        simpleModule.addSerializer(Edge.class, new EdgeJSONSerializer());
        mapper.registerModule(simpleModule);
        s = mapper.writeValueAsString((JSONNetwork) this);

    } catch (Exception e) {

        throw new SerializationException("Error serializing the network", e);
    }
    s = StringEscapeUtils.unescapeJavaScript(s);
    return s;
}

From source file:org.broadleafcommerce.openadmin.web.service.FormBuilderServiceImpl.java

/**
 * When using Thymeleaf, we need to convert the JSON string back to
 * a DataWrapper object because Thymeleaf escapes JSON strings.
 * Thymeleaf uses it's own object de-serializer
 * see: https://github.com/thymeleaf/thymeleaf/issues/84
 * see: http://forum.thymeleaf.org/Spring-Javascript-and-escaped-JSON-td4024739.html
 * @param json/*from ww w.j  a v  a2 s  . com*/
 * @return DataWrapper
 * @throws IOException
 */
protected DataWrapper convertJsonToDataWrapper(String json) {
    ObjectMapper mapper = new ObjectMapper();
    DataDTODeserializer dtoDeserializer = new DataDTODeserializer();
    SimpleModule module = new SimpleModule("DataDTODeserializerModule", new Version(1, 0, 0, null, null, null));
    module.addDeserializer(DataDTO.class, dtoDeserializer);
    mapper.registerModule(module);
    try {
        return mapper.readValue(json, DataWrapper.class);
    } catch (IOException e) {
        throw new RuntimeException(e);
    }
}