Class DeserializationConfig<C extends DeserializationConfig<C>>

java.lang.Object
com.landawn.abacus.parser.ParserConfig<C>
com.landawn.abacus.parser.DeserializationConfig<C>
Type Parameters:
C -
All Implemented Interfaces:
Cloneable
Direct Known Subclasses:
AvroDeserializationConfig, JSONDeserializationConfig, KryoDeserializationConfig, XMLDeserializationConfig

public abstract class DeserializationConfig<C extends DeserializationConfig<C>> extends ParserConfig<C>
Since:
0.8
Author:
Haiyang Li
  • Constructor Details

    • DeserializationConfig

      public DeserializationConfig()
  • Method Details

    • ignoreUnmatchedProperty

      public boolean ignoreUnmatchedProperty()
      Checks if is ignore unknown property.
      Returns:
      true, if is ignore unknown property
    • ignoreUnmatchedProperty

      public C ignoreUnmatchedProperty(boolean ignoreUnmatchedProperty)
      Sets the ignore unknown property.
      Parameters:
      ignoreUnmatchedProperty -
      Returns:
    • getElementType

      public <T> com.landawn.abacus.type.Type<T> getElementType()
      Gets the element type.
      Type Parameters:
      T -
      Returns:
    • setElementType

      public C setElementType(Class<?> cls)
      Sets the element type.
      Parameters:
      cls -
      Returns:
    • setElementType

      public C setElementType(com.landawn.abacus.type.Type<?> type)
      Sets the element type.
      Parameters:
      type -
      Returns:
    • setElementType

      public C setElementType(String type)
      Sets the element type.
      Parameters:
      type -
      Returns:
    • getMapKeyType

      public <T> com.landawn.abacus.type.Type<T> getMapKeyType()
      Gets the map key type.
      Type Parameters:
      T -
      Returns:
    • setMapKeyType

      public C setMapKeyType(Class<?> cls)
      Sets the map key type.
      Parameters:
      cls -
      Returns:
    • setMapKeyType

      public C setMapKeyType(com.landawn.abacus.type.Type<?> keyType)
      Sets the map key type.
      Parameters:
      keyType -
      Returns:
    • setMapKeyType

      public C setMapKeyType(String keyType)
      Sets the map key type.
      Parameters:
      keyType -
      Returns:
    • getMapValueType

      public <T> com.landawn.abacus.type.Type<T> getMapValueType()
      Gets the map value type.
      Type Parameters:
      T -
      Returns:
    • setMapValueType

      public C setMapValueType(Class<?> cls)
      Sets the map value type.
      Parameters:
      cls -
      Returns:
    • setMapValueType

      public C setMapValueType(com.landawn.abacus.type.Type<?> valueType)
      Sets the map value type.
      Parameters:
      valueType -
      Returns:
    • setMapValueType

      public C setMapValueType(String valueType)
      Sets the map value type.
      Parameters:
      valueType -
      Returns:
    • hasValueTypes

      public boolean hasValueTypes()
    • getValueType

      public <T> com.landawn.abacus.type.Type<T> getValueType(String keyName)
      Gets the value type by key name.
      Type Parameters:
      T -
      Parameters:
      keyName - TODO should it be parentEntity.propNameA(subEntity).propNameB... For examaple: account.devices.model
      Returns:
    • getValueType

      public <T> com.landawn.abacus.type.Type<T> getValueType(String keyName, com.landawn.abacus.type.Type<T> defaultType)
      Gets the value type by key name.
      Type Parameters:
      T -
      Parameters:
      keyName - TODO should it be parentEntity.propNameA(subEntity).propNameB... For examaple: account.devices.model
      defaultType -
      Returns:
    • getValueTypeClass

      public <T> Class<T> getValueTypeClass(String keyName)
      Gets the value type class by key name.
      Type Parameters:
      T -
      Parameters:
      keyName - TODO should it be parentEntity.propNameA(subEntity).propNameB... For examaple: account.devices.model
      Returns:
    • getValueTypeClass

      public <T> Class<T> getValueTypeClass(String keyName, Class<T> defaultTypeClass)
      Gets the value type class by key name.
      Type Parameters:
      T -
      Parameters:
      keyName - TODO should it be parentEntity.propNameA(subEntity).propNameB... For examaple: account.devices.model
      defaultTypeClass -
      Returns:
    • setValueType

      public C setValueType(String keyName, Class<?> typeClass)
      Sets value type with key name.
      Parameters:
      keyName - TODO should it be parentEntity.propNameA(subEntity).propNameB... For examaple: account.devices.model
      typeClass -
      Returns:
    • setValueType

      public C setValueType(String keyName, com.landawn.abacus.type.Type<?> type)
      Sets value type with key name.
      Parameters:
      keyName - TODO should it be parentEntity.propNameA(subEntity).propNameB... For examaple: account.devices.model
      type -
      Returns:
    • setValueType

      public C setValueType(String keyName, String typeName)
      Sets value type with key name.
      Parameters:
      keyName - TODO should it be parentEntity.propNameA(subEntity).propNameB... For examaple: account.devices.model
      typeName -
      Returns:
    • setValueTypes

      public C setValueTypes(Map<String,com.landawn.abacus.type.Type<?>> valueTypes)
      Sets value types with key names.
      Parameters:
      valueTypes -
      Returns:
    • setValueTypesByBeanClass

      public C setValueTypesByBeanClass(Class<?> beanClass)
      Sets value types by bean class.
      Parameters:
      beanClass -
      Returns:
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
      Returns:
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
      Parameters:
      obj -
      Returns:
      true, if successful
    • toString

      public String toString()
      Overrides:
      toString in class Object
      Returns: