## com.fasterxml.jackson.databind.ser
Class BeanSerializerBuilder

    java.lang.Object
      com.fasterxml.jackson.databind.ser.BeanSerializerBuilder

    public class BeanSerializerBuilder

extends Object

Builder class used for aggregating deserialization information about a POJO, in order to build a `JsonSerializer` for serializing intances. Main reason for using separate builder class is that this makes it easier to make actual serializer class fully immutable.

Field Summary
`protected AnyGetterWriter` `_anyGetter` Writer used for "any getter" properties, if any.
`protected BeanDescription` `_beanDesc`
`protected BeanPropertyWriter[]` `_filteredProperties` Optional array of filtered property writers; if null, no view-based filtering is performed.
`protected Object` `_filterId` Id of the property filter to use for POJO, if any.
`protected ObjectIdWriter` `_objectIdWriter` Object responsible for serializing Object Ids for the handled type, if any.
`protected List<BeanPropertyWriter>` `_properties` Bean properties, in order of serialization
`protected AnnotatedMember` `_typeId` Property that is used for type id (and not serialized as regular property)

Constructor Summary
`` `BeanSerializerBuilder(BeanDescription beanDesc)`
`protected` `BeanSerializerBuilder(BeanSerializerBuilder src)` Copy-constructor that may be used for sub-classing

Method Summary
`JsonSerializer<?>` `build()` Method called to create `BeanSerializer` instance with all accumulated information.
`BeanSerializer` `createDummy()` Factory method for constructing an "empty" serializer; one that outputs no properties (but handles JSON objects properly, including type information)
`AnyGetterWriter` `getAnyGetter()`
`BeanDescription` `getBeanDescription()`
`BeanPropertyWriter[]` `getFilteredProperties()`
`Object` `getFilterId()`
`ObjectIdWriter` `getObjectIdWriter()`
`List<BeanPropertyWriter>` `getProperties()`
`AnnotatedMember` `getTypeId()`
`boolean` `hasProperties()`
`void` `setAnyGetter(AnyGetterWriter anyGetter)`
`void` `setFilteredProperties(BeanPropertyWriter[] properties)`
`void` `setFilterId(Object filterId)`
`void` `setObjectIdWriter(ObjectIdWriter w)`
`void` `setProperties(List<BeanPropertyWriter> properties)`
`void` `setTypeId(AnnotatedMember idProp)`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### _beanDesc

    protected final BeanDescription _beanDesc

### _properties

    protected List<BeanPropertyWriter> _properties

  Bean properties, in order of serialization

### _filteredProperties

    protected BeanPropertyWriter[] _filteredProperties

  Optional array of filtered property writers; if null, no view-based filtering is performed.

### _anyGetter

    protected AnyGetterWriter _anyGetter

  Writer used for "any getter" properties, if any.

### _filterId

    protected Object _filterId

  Id of the property filter to use for POJO, if any.

### _typeId

    protected AnnotatedMember _typeId

  Property that is used for type id (and not serialized as regular property)

### _objectIdWriter

    protected ObjectIdWriter _objectIdWriter

  Object responsible for serializing Object Ids for the handled type, if any.

Constructor Detail

### BeanSerializerBuilder

    public BeanSerializerBuilder(BeanDescription beanDesc)

### BeanSerializerBuilder

    protected BeanSerializerBuilder(BeanSerializerBuilder src)

  Copy-constructor that may be used for sub-classing

Method Detail

### setProperties

    public void setProperties(List<BeanPropertyWriter> properties)

### setFilteredProperties

    public void setFilteredProperties(BeanPropertyWriter[] properties)

### setAnyGetter

    public void setAnyGetter(AnyGetterWriter anyGetter)

### setFilterId

    public void setFilterId(Object filterId)

### setTypeId

    public void setTypeId(AnnotatedMember idProp)

### setObjectIdWriter

    public void setObjectIdWriter(ObjectIdWriter w)

### getBeanDescription

    public BeanDescription getBeanDescription()

### getProperties

    public List<BeanPropertyWriter> getProperties()

### hasProperties

    public boolean hasProperties()

### getFilteredProperties

    public BeanPropertyWriter[] getFilteredProperties()

### getAnyGetter

    public AnyGetterWriter getAnyGetter()

### getFilterId

    public Object getFilterId()

### getTypeId

    public AnnotatedMember getTypeId()

### getObjectIdWriter

    public ObjectIdWriter getObjectIdWriter()

### build

    public JsonSerializer<?> build()

  Method called to create `BeanSerializer` instance with all accumulated information. Will construct a serializer if we have enough information, or return null if not.

### createDummy

    public BeanSerializer createDummy()

  Factory method for constructing an "empty" serializer; one that outputs no properties (but handles JSON objects properly, including type information)

Copyright © 2012 fasterxml.com. All Rights Reserved.