Example usage for com.fasterxml.jackson.module.guice GuiceInjectableValues GuiceInjectableValues

List of usage examples for com.fasterxml.jackson.module.guice GuiceInjectableValues GuiceInjectableValues

Introduction

In this page you can find the example usage for com.fasterxml.jackson.module.guice GuiceInjectableValues GuiceInjectableValues.

Prototype

public GuiceInjectableValues(Injector injector) 

Source Link

Usage

From source file:com.arpnetworking.clusteraggregator.configuration.EmitterConfiguration.java

/**
 * Create an <code>ObjectMapper</code> for Emitter 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 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.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.
 *///from  w w  w  .j  ava2 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.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.
 *///from w w w . j a  v  a 2 s .  co m
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;
}