Example usage for com.fasterxml.jackson.databind.ser BeanSerializerBuilder setProperties

List of usage examples for com.fasterxml.jackson.databind.ser BeanSerializerBuilder setProperties

Introduction

In this page you can find the example usage for com.fasterxml.jackson.databind.ser BeanSerializerBuilder setProperties.

Prototype

public void setProperties(List<BeanPropertyWriter> paramList) 

Source Link

Usage

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 w w w.  j  a  va 2 s .co  m

    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;
}