Class OptimizedSettableBeanProperty<T extends OptimizedSettableBeanProperty<T>>

java.lang.Object
com.fasterxml.jackson.databind.introspect.ConcreteBeanPropertyBase
com.fasterxml.jackson.databind.deser.SettableBeanProperty
com.fasterxml.jackson.databind.deser.SettableBeanProperty.Delegating
com.fasterxml.jackson.module.blackbird.deser.OptimizedSettableBeanProperty<T>
All Implemented Interfaces:
com.fasterxml.jackson.databind.BeanProperty, com.fasterxml.jackson.databind.util.Named, Serializable
Direct Known Subclasses:
SettableBooleanProperty, SettableIntProperty, SettableLongProperty, SettableObjectProperty, SettableStringProperty

abstract class OptimizedSettableBeanProperty<T extends OptimizedSettableBeanProperty<T>> extends com.fasterxml.jackson.databind.deser.SettableBeanProperty.Delegating
Base class for concrete type-specific SettableBeanProperty implementations.
  • Nested Class Summary

    Nested classes/interfaces inherited from class com.fasterxml.jackson.databind.deser.SettableBeanProperty

    com.fasterxml.jackson.databind.deser.SettableBeanProperty.Delegating

    Nested classes/interfaces inherited from interface com.fasterxml.jackson.databind.BeanProperty

    com.fasterxml.jackson.databind.BeanProperty.Bogus, com.fasterxml.jackson.databind.BeanProperty.Std
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected final boolean
     
    private boolean
    Marker that we set if mutator turns out to be broken in a systematic way that we can handle by redirecting it back to standard one.
    private static final long
     

    Fields inherited from class com.fasterxml.jackson.databind.deser.SettableBeanProperty.Delegating

    delegate

    Fields inherited from class com.fasterxml.jackson.databind.deser.SettableBeanProperty

    _contextAnnotations, _managedReferenceName, _nullProvider, _objectIdInfo, _propertyIndex, _propName, _type, _valueDeserializer, _valueTypeDeserializer, _viewMatcher, _wrapperName, MISSING_VALUE_DESERIALIZER

    Fields inherited from class com.fasterxml.jackson.databind.introspect.ConcreteBeanPropertyBase

    _aliases, _metadata

    Fields inherited from interface com.fasterxml.jackson.databind.BeanProperty

    EMPTY_FORMAT, EMPTY_INCLUDE
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    protected
    OptimizedSettableBeanProperty(com.fasterxml.jackson.databind.deser.SettableBeanProperty src)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected boolean
    _isDefaultDeserializer(com.fasterxml.jackson.databind.JsonDeserializer<?> deser)
    Helper method used to check whether given deserializer is the default deserializer implementation: this is necessary to avoid overriding custom deserializers.
    protected void
    Helper method called when an exception is throw from mutator, to figure out what to do.
    abstract void
    deserializeAndSet(com.fasterxml.jackson.core.JsonParser jp, com.fasterxml.jackson.databind.DeserializationContext ctxt, Object arg2)
     
    abstract Object
    deserializeSetAndReturn(com.fasterxml.jackson.core.JsonParser jp, com.fasterxml.jackson.databind.DeserializationContext ctxt, Object instance)
     
    abstract void
    set(Object bean, Object value)
     
    setAndReturn(Object instance, Object value)
     
    protected abstract com.fasterxml.jackson.databind.deser.SettableBeanProperty
    withDelegate(com.fasterxml.jackson.databind.deser.SettableBeanProperty d)
     
    final com.fasterxml.jackson.databind.deser.SettableBeanProperty
    withValueDeserializer(com.fasterxml.jackson.databind.JsonDeserializer<?> deser)
     

    Methods inherited from class com.fasterxml.jackson.databind.deser.SettableBeanProperty.Delegating

    _with, assignIndex, fixAccess, getAnnotation, getCreatorIndex, getDeclaringClass, getDelegate, getInjectableValueId, getManagedReferenceName, getMember, getObjectIdInfo, getPropertyIndex, getValueDeserializer, getValueTypeDeserializer, hasValueDeserializer, hasValueTypeDeserializer, hasViews, isInjectionOnly, visibleInView, withName, withNullProvider

    Methods inherited from class com.fasterxml.jackson.databind.deser.SettableBeanProperty

    _throwAsIOE, _throwAsIOE, _throwAsIOE, _throwAsIOE, depositSchemaProperty, deserialize, deserializeWith, getContextAnnotation, getFullName, getName, getNullValueProvider, getType, getWrapperName, isIgnorable, markAsIgnorable, setManagedReferenceName, setObjectIdInfo, setViews, toString, withSimpleName

    Methods inherited from class com.fasterxml.jackson.databind.introspect.ConcreteBeanPropertyBase

    findAliases, findFormatOverrides, findPropertyFormat, findPropertyInclusion, getMetadata, isRequired, isVirtual

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      See Also:
    • _skipNulls

      protected final boolean _skipNulls
      Since:
      2.9
    • broken

      private volatile boolean broken
      Marker that we set if mutator turns out to be broken in a systematic way that we can handle by redirecting it back to standard one.
  • Constructor Details

    • OptimizedSettableBeanProperty

      protected OptimizedSettableBeanProperty(com.fasterxml.jackson.databind.deser.SettableBeanProperty src)
  • Method Details

    • withValueDeserializer

      public final com.fasterxml.jackson.databind.deser.SettableBeanProperty withValueDeserializer(com.fasterxml.jackson.databind.JsonDeserializer<?> deser)
      Overrides:
      withValueDeserializer in class com.fasterxml.jackson.databind.deser.SettableBeanProperty.Delegating
    • withDelegate

      protected abstract com.fasterxml.jackson.databind.deser.SettableBeanProperty withDelegate(com.fasterxml.jackson.databind.deser.SettableBeanProperty d)
      Specified by:
      withDelegate in class com.fasterxml.jackson.databind.deser.SettableBeanProperty.Delegating
    • deserializeAndSet

      public abstract void deserializeAndSet(com.fasterxml.jackson.core.JsonParser jp, com.fasterxml.jackson.databind.DeserializationContext ctxt, Object arg2) throws IOException
      Overrides:
      deserializeAndSet in class com.fasterxml.jackson.databind.deser.SettableBeanProperty.Delegating
      Throws:
      IOException
    • set

      public abstract void set(Object bean, Object value) throws IOException
      Overrides:
      set in class com.fasterxml.jackson.databind.deser.SettableBeanProperty.Delegating
      Throws:
      IOException
    • deserializeSetAndReturn

      public abstract Object deserializeSetAndReturn(com.fasterxml.jackson.core.JsonParser jp, com.fasterxml.jackson.databind.DeserializationContext ctxt, Object instance) throws IOException
      Overrides:
      deserializeSetAndReturn in class com.fasterxml.jackson.databind.deser.SettableBeanProperty.Delegating
      Throws:
      IOException
    • setAndReturn

      public Object setAndReturn(Object instance, Object value) throws IOException
      Overrides:
      setAndReturn in class com.fasterxml.jackson.databind.deser.SettableBeanProperty.Delegating
      Throws:
      IOException
    • _reportProblem

      protected void _reportProblem(Object bean, Object value, Throwable e) throws IOException
      Helper method called when an exception is throw from mutator, to figure out what to do.
      Throws:
      IOException
      Since:
      2.9
    • _isDefaultDeserializer

      protected boolean _isDefaultDeserializer(com.fasterxml.jackson.databind.JsonDeserializer<?> deser)
      Helper method used to check whether given deserializer is the default deserializer implementation: this is necessary to avoid overriding custom deserializers.