flexjson
Interface ObjectFactory
- All Known Implementing Classes:
- ArrayObjectFactory, BeanObjectFactory, BigDecimalFactory, BigIntegerFactory, BooleanAsStringObjectFactory, BooleanObjectFactory, ByteObjectFactory, CharacterObjectFactory, ClassLocatorObjectFactory, DateObjectFactory, DateTransformer, DoubleObjectFactory, EnumObjectFactory, ExistingObjectFactory, FloatObjectFactory, IntegerObjectFactory, JsonNumberObjectFactory, ListObjectFactory, LongObjectFactory, MapObjectFactory, SetObjectFactory, ShortObjectFactory, SortedSetObjectFactory, StringObjectFactory
public interface ObjectFactory
ObjectFactory allows you to instantiate specific types of objects on path or class types. This interface allows
you to override the default rules.
instantiate
Object instantiate(ObjectBinder context,
Object value,
Type targetType,
Class targetClass)
- This method is called by the deserializer to construct and bind an object. At the end of this method
the object should be fully constructed.
ObjectBinder
can be used to bind values into
the object according to default rules. For simple implementations you won't need to use this, but
for more complex or generic objects reusing methods like ObjectBinder.bind(Object, java.lang.reflect.Type)
and ObjectBinder.bindIntoCollection(java.util.Collection, java.util.Collection, java.lang.reflect.Type)
.
- Parameters:
context
- the object binding context to keep track of where we are in the object graph
and used for binding into objects.value
- This is the value from the json object at the current path.targetType
- This is the type pulled from the object introspector. Used for Collections and generic types.targetClass
- concrete class pulled from the configuration of the deserializer.
- Returns:
- the fully bound object. At the end of this method the object should be fully constructed.
Copyright © 2014. All Rights Reserved.