Example usage for com.fasterxml.jackson.databind BeanDescription getBeanClass

List of usage examples for com.fasterxml.jackson.databind BeanDescription getBeanClass

Introduction

In this page you can find the example usage for com.fasterxml.jackson.databind BeanDescription getBeanClass.

Prototype

public Class<?> getBeanClass() 

Source Link

Usage

From source file:com.netflix.discovery.converters.jackson.EurekaJacksonXmlModifiers.java

public static BeanSerializerModifier createXmlSerializerModifier(final KeyFormatter keyFormatter) {
    return new BeanSerializerModifier() {
        @Override/*from   w w  w .j a v  a2  s  . co  m*/
        public JsonSerializer<?> modifySerializer(SerializationConfig config, BeanDescription beanDesc,
                JsonSerializer<?> serializer) {
            if (beanDesc.getBeanClass().isAssignableFrom(Applications.class)) {
                return new ApplicationsXmlBeanSerializer((BeanSerializerBase) serializer, keyFormatter);
            }
            if (beanDesc.getBeanClass().isAssignableFrom(InstanceInfo.class)) {
                return new InstanceInfoXmlBeanSerializer((BeanSerializerBase) serializer);
            }
            return serializer;
        }
    };
}

From source file:com.microsoft.rest.serializer.FlatteningDeserializer.java

/**
 * Gets a module wrapping this serializer as an adapter for the Jackson
 * ObjectMapper.//  ww w  . j a  v  a  2s . c  o  m
 *
 * @param mapper the object mapper for default deserializations
 * @return a simple module to be plugged onto Jackson ObjectMapper.
 */
public static SimpleModule getModule(final ObjectMapper mapper) {
    SimpleModule module = new SimpleModule();
    module.setDeserializerModifier(new BeanDeserializerModifier() {
        @Override
        public JsonDeserializer<?> modifyDeserializer(DeserializationConfig config, BeanDescription beanDesc,
                JsonDeserializer<?> deserializer) {
            if (beanDesc.getBeanClass().getAnnotation(JsonFlatten.class) != null) {
                return new FlatteningDeserializer(beanDesc.getBeanClass(), deserializer, mapper);
            }
            return deserializer;
        }
    });
    return module;
}

From source file:com.microsoft.rest.serializer.FlatteningSerializer.java

/**
 * Gets a module wrapping this serializer as an adapter for the Jackson
 * ObjectMapper./*from w  w w . j  a v  a2 s . c o  m*/
 *
 * @param mapper the object mapper for default serializations
 * @return a simple module to be plugged onto Jackson ObjectMapper.
 */
public static SimpleModule getModule(final ObjectMapper mapper) {
    SimpleModule module = new SimpleModule();
    module.setSerializerModifier(new BeanSerializerModifier() {
        @Override
        public JsonSerializer<?> modifySerializer(SerializationConfig config, BeanDescription beanDesc,
                JsonSerializer<?> serializer) {
            if (beanDesc.getBeanClass().getAnnotation(JsonFlatten.class) != null) {
                return new FlatteningSerializer(beanDesc.getBeanClass(), serializer, mapper);
            }
            return serializer;
        }
    });
    return module;
}

From source file:org.jaqpot.core.data.serialize.custom.DataEntryDeSerializeModifier.java

@Override
public JsonDeserializer<?> modifyDeserializer(DeserializationConfig config, BeanDescription beanDesc,
        JsonDeserializer<?> deserializer) {
    if (beanDesc.getBeanClass().equals(DataEntry.class)) {
        return new DataEntryDeSerializer(deserializer);
    } else {//from w  w  w . j av a 2  s .c o  m
        return deserializer;
    }
}

From source file:com.amazon.speech.json.SpeechletRequestBeanSerializerModifier.java

@Override
@SuppressWarnings("unchecked")
public JsonSerializer<?> modifySerializer(SerializationConfig config, BeanDescription beanDesc,
        JsonSerializer<?> serializer) {
    if (Context.class.isAssignableFrom(beanDesc.getBeanClass())) {
        return new ContextSerializer();
    } else if (SupportedInterfaces.class.isAssignableFrom(beanDesc.getBeanClass())) {
        return new SupportedInterfacesSerializer();
    } else {/* w  ww.j ava 2 s  .  c o  m*/
        return serializer;
    }
}

From source file:com.amazon.speech.json.SpeechletRequestBeanDeserializerModifier.java

@Override
public JsonDeserializer<?> modifyDeserializer(DeserializationConfig config, BeanDescription beanDesc,
        JsonDeserializer<?> deserializer) {
    if (Context.class.isAssignableFrom(beanDesc.getBeanClass())) {
        return new ContextDeserializer();
    } else if (SupportedInterfaces.class.isAssignableFrom(beanDesc.getBeanClass())) {
        return new SupportedInterfacesDeserializer();
    } else {/*  w  w  w . ja v a2s.co  m*/
        return deserializer;
    }
}

From source file:cz.cvut.kbss.jsonld.jackson.serialization.JsonLdSerializerModifier.java

@Override
public JsonSerializer<?> modifySerializer(SerializationConfig config, BeanDescription beanDesc,
        JsonSerializer<?> serializer) {
    if (BeanAnnotationProcessor.isOwlClassEntity(beanDesc.getBeanClass())) {
        return new JacksonJsonLdSerializer<>();
    }//from  www . j a va 2 s. c o m
    return serializer;
}

From source file:cz.cvut.kbss.jsonld.jackson.deserialization.JsonLdDeserializerModifier.java

@Override
public JsonDeserializer<?> modifyDeserializer(DeserializationConfig config, BeanDescription beanDesc,
        JsonDeserializer<?> deserializer) {
    if (BeanAnnotationProcessor.isOwlClassEntity(beanDesc.getBeanClass())) {
        return new JacksonJsonLdDeserializer(deserializer, beanDesc.getBeanClass());
    }/* w w w.  j a  v  a 2s .c  o  m*/
    return deserializer;
}

From source file:org.lightadmin.core.web.json.DynamicFilePropertyOmittingSerializerModifier.java

@Override
public BeanSerializerBuilder updateBuilder(SerializationConfig config, BeanDescription beanDesc,
        BeanSerializerBuilder builder) {
    if (!configuration.isManagedDomainType(beanDesc.getBeanClass())) {
        return builder;
    }//from  www .  ja v  a2s .c  om

    PersistentEntity<?, ?> entity = configuration.forManagedDomainType(beanDesc.getBeanClass())
            .getPersistentEntity();

    List<BeanPropertyWriter> result = newArrayList();
    for (BeanPropertyWriter writer : builder.getProperties()) {
        PersistentProperty<?> persistentProperty = findProperty(writer.getName(), entity, beanDesc);

        if (persistentProperty == null) {
            result.add(writer);
            continue;
        }

        if (PersistentPropertyType.forPersistentProperty(persistentProperty) == FILE) {
            continue;
        }

        result.add(writer);
    }

    builder.setProperties(result);

    return builder;
}

From source file:de.ks.flatadocdb.defaults.json.SerializationModule.java

@Override
public void setupModule(SetupContext context) {
    context.addBeanSerializerModifier(new BeanSerializerModifier() {
        @Override//  w ww  . j av a  2 s. c  om
        public List<BeanPropertyWriter> changeProperties(SerializationConfig config, BeanDescription beanDesc,
                List<BeanPropertyWriter> beanProperties) {
            if (metaModel.isRegistered(beanDesc.getBeanClass())) {
                EntityDescriptor entityDescriptor = metaModel.getEntityDescriptor(beanDesc.getBeanClass());

                List<BeanPropertyWriter> relationProperties = beanProperties.stream()//
                        .filter(p -> entityDescriptor.isRelation(p.getMember())).collect(Collectors.toList());

                List<BeanPropertyWriter> repoPathProperty = beanProperties.stream()//
                        .filter(p -> p.getAnnotation(PathInRepository.class) != null)
                        .collect(Collectors.toList());

                ArrayList<BeanPropertyWriter> all = new ArrayList<>(beanProperties);
                log.trace("Removing {} relation properties fron {}: {}", relationProperties.size(),
                        beanDesc.getBeanClass(), relationProperties);
                all.removeAll(relationProperties);
                all.removeAll(repoPathProperty);
                relationProperties.stream().map(old -> new RelationCollectionPropertyWriter(old, metaModel))
                        .forEach(all::add);
                return all;
            } else {
                return beanProperties;
            }
        }
    });

    context.addBeanDeserializerModifier(new BeanDeserializerModifier() {
        @Override
        public List<BeanPropertyDefinition> updateProperties(DeserializationConfig config,
                BeanDescription beanDesc, List<BeanPropertyDefinition> propDefs) {
            if (metaModel.isRegistered(beanDesc.getBeanClass())) {
                EntityDescriptor entityDescriptor = metaModel.getEntityDescriptor(beanDesc.getBeanClass());
                return propDefs.stream()//
                        .filter(p -> !entityDescriptor.isRelation(p.getPrimaryMember()))//
                        .filter(p -> p.getPrimaryMember().getAnnotation(PathInRepository.class) == null)//
                        .collect(Collectors.toList());
            } else {
                return propDefs;
            }
        }
    });
}