Interface AnnotatedFieldDeserializer<T>

Type Parameters:
T - the parser type in XML, JSON or any other provider
All Superinterfaces:
AnnotatedFieldBindingProcessor
All Known Implementing Classes:
AbstractFieldJsonDeserializer, AbstractFieldXmlDeserializer, ArrayFieldJsonDeserializer, DelayedFieldJsonDeserializer, DelayedFieldXmlDeserializer, EntryFieldJsonDeserializer, EntryFieldXmlDeserializer, MapFieldJsonDeserializer, MapFieldXmlDeserializer, ObjectFieldJsonDeserializer, ObjectFieldXmlDeserializer, SimpleDataFieldJsonDeserializer, SimpleDataFieldXmlDeserializer, SkipFieldJsonDeserializer, SkipFieldXmlDeserializer, WrappedListFieldXmlDeserializer

public interface AnnotatedFieldDeserializer<T> extends AnnotatedFieldBindingProcessor
This is an interface for defining the behavior to deserialize the serializable field.
  • Method Details

    • deserialize

      Object deserialize(T parser, Object object, String name, SerializableFieldMeta fieldNode, Map<String,Object> infoMap, com.emc.documentum.rest.config.BindingConfig bindingConfig)
      Deserialize the field.
      Parameters:
      parser - message parser
      object - the object that the field belongs to
      name - the field name
      fieldNode - the serializable filed meta
      infoMap - the map which can carry additional info
      bindingConfig - binding configuration
      Returns:
      the field object
    • deserializable

      boolean deserializable(Object current, SerializableFieldMeta fieldNode, Class<?> valueType)
      Check if the field value and field type is deserializable by this deserializer.
      Parameters:
      current - current token of JSON object
      fieldNode - the deserializable field meta
      valueType - actual value type for current JSON token; this parameter is optional; when it is provided, it takes precedence over the data type defined from fieldNode
      Returns:
      true if the field value is deserializable; false otherwise.