Class OptimizedBeanPropertyWriter<T extends OptimizedBeanPropertyWriter<T>>

  • All Implemented Interfaces:
    com.fasterxml.jackson.databind.BeanProperty, com.fasterxml.jackson.databind.util.Named, java.io.Serializable
    Direct Known Subclasses:
    BooleanPropertyWriter, IntPropertyWriter, LongPropertyWriter, ObjectPropertyWriter, StringPropertyWriter

    abstract class OptimizedBeanPropertyWriter<T extends OptimizedBeanPropertyWriter<T>>
    extends com.fasterxml.jackson.databind.ser.BeanPropertyWriter
    Intermediate base class that is used for concrete per-type implementations
    • Nested Class Summary

      • 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 com.fasterxml.jackson.core.SerializableString _fastName
      Locally stored version of efficiently serializable name.
      protected boolean broken  
      protected com.fasterxml.jackson.databind.ser.BeanPropertyWriter fallbackWriter  
      • Fields inherited from class com.fasterxml.jackson.databind.ser.BeanPropertyWriter

        _accessorMethod, _cfgSerializationType, _contextAnnotations, _declaredType, _dynamicSerializers, _field, _includeInViews, _internalSettings, _member, _name, _nonTrivialBaseType, _nullSerializer, _serializer, _suppressableValue, _suppressNulls, _typeSerializer, _wrapperName, MARKER_FOR_EMPTY
      • 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
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      protected void _handleProblem​(java.lang.Object bean, com.fasterxml.jackson.core.JsonGenerator gen, com.fasterxml.jackson.databind.SerializerProvider prov, java.lang.Throwable t, boolean element)  
      protected abstract com.fasterxml.jackson.databind.ser.BeanPropertyWriter _new​(com.fasterxml.jackson.databind.PropertyName newName)  
      protected void _reportProblem​(java.lang.Object bean, java.lang.Throwable e)  
      void assignNullSerializer​(com.fasterxml.jackson.databind.JsonSerializer<java.lang.Object> nullSer)  
      void assignSerializer​(com.fasterxml.jackson.databind.JsonSerializer<java.lang.Object> ser)  
      void assignTypeSerializer​(com.fasterxml.jackson.databind.jsontype.TypeSerializer typeSer)  
      abstract void serializeAsElement​(java.lang.Object bean, com.fasterxml.jackson.core.JsonGenerator jgen, com.fasterxml.jackson.databind.SerializerProvider prov)  
      abstract void serializeAsField​(java.lang.Object bean, com.fasterxml.jackson.core.JsonGenerator jgen, com.fasterxml.jackson.databind.SerializerProvider prov)  
      private com.fasterxml.jackson.databind.ser.BeanPropertyWriter unwrapFallbackWriter​(com.fasterxml.jackson.databind.ser.BeanPropertyWriter srcIn)  
      abstract com.fasterxml.jackson.databind.ser.BeanPropertyWriter withSerializer​(com.fasterxml.jackson.databind.JsonSerializer<java.lang.Object> ser)  
      • Methods inherited from class com.fasterxml.jackson.databind.ser.BeanPropertyWriter

        _depositSchemaProperty, _findAndAddDynamic, _handleSelfReference, depositSchemaProperty, depositSchemaProperty, fixAccess, get, getAnnotation, getContextAnnotation, getFullName, getGenericPropertyType, getInternalSetting, getMember, getName, getPropertyType, getRawSerializationType, getSerializationType, getSerializedName, getSerializer, getType, getTypeSerializer, getViews, getWrapperName, hasNullSerializer, hasSerializer, isUnwrapping, removeInternalSetting, rename, serializeAsOmittedField, serializeAsPlaceholder, setInternalSetting, setNonTrivialBaseType, toString, unwrappingWriter, willSuppressNulls, wouldConflictWithName
      • Methods inherited from class com.fasterxml.jackson.databind.ser.PropertyWriter

        findAnnotation
      • 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 Detail

      • _fastName

        protected final com.fasterxml.jackson.core.SerializableString _fastName
        Locally stored version of efficiently serializable name. Used to work around earlier problems with typing between interface, implementation
      • fallbackWriter

        protected final com.fasterxml.jackson.databind.ser.BeanPropertyWriter fallbackWriter
      • broken

        protected boolean broken
    • Constructor Detail

      • OptimizedBeanPropertyWriter

        protected OptimizedBeanPropertyWriter​(com.fasterxml.jackson.databind.ser.BeanPropertyWriter src,
                                              com.fasterxml.jackson.databind.JsonSerializer<java.lang.Object> ser)
      • OptimizedBeanPropertyWriter

        protected OptimizedBeanPropertyWriter​(OptimizedBeanPropertyWriter<?> base,
                                              com.fasterxml.jackson.databind.PropertyName name)
    • Method Detail

      • unwrapFallbackWriter

        private com.fasterxml.jackson.databind.ser.BeanPropertyWriter unwrapFallbackWriter​(com.fasterxml.jackson.databind.ser.BeanPropertyWriter srcIn)
      • _new

        protected abstract com.fasterxml.jackson.databind.ser.BeanPropertyWriter _new​(com.fasterxml.jackson.databind.PropertyName newName)
        Overrides:
        _new in class com.fasterxml.jackson.databind.ser.BeanPropertyWriter
      • assignTypeSerializer

        public void assignTypeSerializer​(com.fasterxml.jackson.databind.jsontype.TypeSerializer typeSer)
        Overrides:
        assignTypeSerializer in class com.fasterxml.jackson.databind.ser.BeanPropertyWriter
      • assignSerializer

        public void assignSerializer​(com.fasterxml.jackson.databind.JsonSerializer<java.lang.Object> ser)
        Overrides:
        assignSerializer in class com.fasterxml.jackson.databind.ser.BeanPropertyWriter
      • assignNullSerializer

        public void assignNullSerializer​(com.fasterxml.jackson.databind.JsonSerializer<java.lang.Object> nullSer)
        Overrides:
        assignNullSerializer in class com.fasterxml.jackson.databind.ser.BeanPropertyWriter
      • withSerializer

        public abstract com.fasterxml.jackson.databind.ser.BeanPropertyWriter withSerializer​(com.fasterxml.jackson.databind.JsonSerializer<java.lang.Object> ser)
      • serializeAsField

        public abstract void serializeAsField​(java.lang.Object bean,
                                              com.fasterxml.jackson.core.JsonGenerator jgen,
                                              com.fasterxml.jackson.databind.SerializerProvider prov)
                                       throws java.lang.Exception
        Overrides:
        serializeAsField in class com.fasterxml.jackson.databind.ser.BeanPropertyWriter
        Throws:
        java.lang.Exception
      • serializeAsElement

        public abstract void serializeAsElement​(java.lang.Object bean,
                                                com.fasterxml.jackson.core.JsonGenerator jgen,
                                                com.fasterxml.jackson.databind.SerializerProvider prov)
                                         throws java.lang.Exception
        Overrides:
        serializeAsElement in class com.fasterxml.jackson.databind.ser.BeanPropertyWriter
        Throws:
        java.lang.Exception
      • _handleProblem

        protected void _handleProblem​(java.lang.Object bean,
                                      com.fasterxml.jackson.core.JsonGenerator gen,
                                      com.fasterxml.jackson.databind.SerializerProvider prov,
                                      java.lang.Throwable t,
                                      boolean element)
                               throws java.lang.Exception
        Throws:
        java.lang.Exception
      • _reportProblem

        protected void _reportProblem​(java.lang.Object bean,
                                      java.lang.Throwable e)