Example usage for com.fasterxml.jackson.databind.ser.std ToStringSerializer instance

List of usage examples for com.fasterxml.jackson.databind.ser.std ToStringSerializer instance

Introduction

In this page you can find the example usage for com.fasterxml.jackson.databind.ser.std ToStringSerializer instance.

Prototype

ToStringSerializer instance

To view the source code for com.fasterxml.jackson.databind.ser.std ToStringSerializer instance.

Click 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 ww w .  j ava  2s.  co m
        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:io.airlift.jmx.JmxHttpModule.java

@Override
public void configure(Binder binder) {
    binder.disableCircularProxies();/* w  w  w.  j  a  va  2s  .  c om*/

    jaxrsBinder(binder).bind(MBeanResource.class);
    jsonBinder(binder).addSerializerBinding(InetAddress.class).toInstance(ToStringSerializer.instance);
    jsonBinder(binder).addSerializerBinding(ObjectName.class).toInstance(ToStringSerializer.instance);
    jsonBinder(binder).addSerializerBinding(OpenType.class).toInstance(ToStringSerializer.instance);
    jsonBinder(binder).addSerializerBinding(CompositeData.class).to(CompositeDataSerializer.class);
    jsonBinder(binder).addSerializerBinding(TabularData.class).to(TabularDataSerializer.class);
    jsonBinder(binder).addDeserializerBinding(ObjectName.class).to(ObjectNameDeserializer.class);

    // jackson has a bug in the serializer selection code so it does not know that subclasses of LazyCompositeData are also CompositeData
    jsonBinder(binder).addSerializerBinding(LazyCompositeData.class).to(CompositeDataSerializer.class);

    DiscoveryBinder.discoveryBinder(binder).bindHttpAnnouncement("jmx-http");
}

From source file:com.proofpoint.json.TestJsonModule.java

@BeforeMethod
public void setUp() throws Exception {
    Injector injector = Guice.createInjector(new JsonModule(), new Module() {
        @Override//from w w w  .j a  v  a 2  s. c o m
        public void configure(Binder binder) {
            jsonBinder(binder).addSerializerBinding(SuperDuperNameList.class)
                    .toInstance(ToStringSerializer.instance);
            jsonBinder(binder).addDeserializerBinding(SuperDuperNameList.class)
                    .to(SuperDuperNameListDeserializer.class);
        }
    });
    objectMapper = injector.getInstance(ObjectMapper.class);
}

From source file:io.airlift.json.TestJsonModule.java

@BeforeClass
public void setUp() throws Exception {
    Injector injector = Guice.createInjector(new JsonModule(), new Module() {
        @Override//from   w ww . j a va2s . co m
        public void configure(Binder binder) {
            jsonBinder(binder).addSerializerBinding(SuperDuperNameList.class)
                    .toInstance(ToStringSerializer.instance);
            jsonBinder(binder).addDeserializerBinding(SuperDuperNameList.class)
                    .to(SuperDuperNameListDeserializer.class);
        }
    });
    objectMapper = injector.getInstance(ObjectMapper.class);
}

From source file:com.proofpoint.jmx.JmxHttpModule.java

@Override
public void configure(Binder binder) {
    binder.disableCircularProxies();//  w  w w  . j  av a  2  s .  c  o m

    jaxrsBinder(binder).bindAdmin(MBeanResource.class);
    jsonBinder(binder).addSerializerBinding(InetAddress.class).toInstance(ToStringSerializer.instance);
    jsonBinder(binder).addSerializerBinding(ObjectName.class).toInstance(ToStringSerializer.instance);
    jsonBinder(binder).addSerializerBinding(OpenType.class).toInstance(ToStringSerializer.instance);
    jsonBinder(binder).addSerializerBinding(CompositeData.class).to(CompositeDataSerializer.class);
    jsonBinder(binder).addSerializerBinding(TabularData.class).to(TabularDataSerializer.class);
    jsonBinder(binder).addDeserializerBinding(ObjectName.class).to(ObjectNameDeserializer.class);

    // jackson has a bug in the serializer selection code so it does not know that subclasses of LazyCompositeData are also CompositeData
    jsonBinder(binder).addSerializerBinding(LazyCompositeData.class).to(CompositeDataSerializer.class);

    ServiceAnnouncementBuilder serviceAnnouncementBuilder = serviceAnnouncement("jmx-http");
    discoveryBinder(binder)
            .bindServiceAnnouncement(new JmxHttpAnnouncementProvider(serviceAnnouncementBuilder));
}

From source file:org.linkedin.util.json.jackson.MetadataStyleSerializerFactory.java

public static SerializerFactoryConfig addGroovySerializers(SerializerFactoryConfig config) {
    if (config == null)
        config = new SerializerFactoryConfig();
    SimpleSerializers serializers = new SimpleSerializers();
    serializers.addSerializer(GString.class, ToStringSerializer.instance);
    config = config.withAdditionalSerializers(serializers);
    return config;
}

From source file:org.linkedin.util.json.jackson.MetadataStyleSerializerFactory.java

@Override
@SuppressWarnings("unchecked")
public JsonSerializer<Object> createSerializer(SerializerProvider prov, JavaType origType)
        throws JsonMappingException {
    JsonSerializer<Object> serializer = (JsonSerializer<Object>) SERIALIZERS
            .get(origType.getRawClass().getName());

    if (serializer != null)
        return serializer;

    if (origType.isContainerType())
        return super.createSerializer(prov, origType);
    else/*  w  ww.j a  v  a2s .  co m*/
        return ToStringSerializer.instance;
}

From source file:org.apereo.portal.json.PortletModeModule.java

public PortletModeModule() {
    super("PortletModeModule");

    this.addSerializer(PortletMode.class, ToStringSerializer.instance);
    this.addDeserializer(PortletMode.class, new PortletModeDeserializer());
}

From source file:org.apereo.portal.json.WindowStateModule.java

public WindowStateModule() {
    super("WindowStateModule");

    this.addSerializer(WindowState.class, ToStringSerializer.instance);
    this.addDeserializer(WindowState.class, new WindowStateDeserializer());
}