Package com.fasterxml.jackson.datatype.jdk8

# Class Jdk8OptionalBeanPropertyWriter

java.lang.Object
com.fasterxml.jackson.databind.introspect.ConcreteBeanPropertyBase
com.fasterxml.jackson.databind.ser.PropertyWriter
com.fasterxml.jackson.databind.ser.BeanPropertyWriter
com.fasterxml.jackson.datatype.jdk8.Jdk8OptionalBeanPropertyWriter

All Implemented Interfaces:
  `com.fasterxml.jackson.databind.BeanProperty`, `com.fasterxml.jackson.databind.util.Named`, `Serializable`

public class Jdk8OptionalBeanPropertyWriter extends com.fasterxml.jackson.databind.ser.BeanPropertyWriter

See Also:
  - Serialized Form

## 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 final Object`
`_empty`

### 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`

## Constructor Summary

Constructors
Modifier
Constructor
Description
`protected`
`Jdk8OptionalBeanPropertyWriter(com.fasterxml.jackson.databind.ser.BeanPropertyWriter base, Object empty)`
`protected`
`Jdk8OptionalBeanPropertyWriter(Jdk8OptionalBeanPropertyWriter base, com.fasterxml.jackson.databind.PropertyName newName)`

## Method Summary

Modifier and Type
Method
Description
`protected com.fasterxml.jackson.databind.ser.BeanPropertyWriter`
`_new(com.fasterxml.jackson.databind.PropertyName newName)`
`void`
`serializeAsField(Object bean, com.fasterxml.jackson.core.JsonGenerator g, com.fasterxml.jackson.databind.SerializerProvider prov)`
`com.fasterxml.jackson.databind.ser.BeanPropertyWriter`
`unwrappingWriter(com.fasterxml.jackson.databind.util.NameTransformer unwrapper)`

### Methods inherited from class com.fasterxml.jackson.databind.ser.BeanPropertyWriter

`_depositSchemaProperty, _findAndAddDynamic, _handleSelfReference, assignNullSerializer, assignSerializer, assignTypeSerializer, 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, serializeAsElement, serializeAsOmittedField, serializeAsPlaceholder, setInternalSetting, setNonTrivialBaseType, toString, 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 Details

### _empty

protected final Object _empty

Since:
  2.9

## Constructor Details

### Jdk8OptionalBeanPropertyWriter

protected Jdk8OptionalBeanPropertyWriter(com.fasterxml.jackson.databind.ser.BeanPropertyWriter base, Object empty)

Since:
  2.9

### Jdk8OptionalBeanPropertyWriter

protected Jdk8OptionalBeanPropertyWriter(Jdk8OptionalBeanPropertyWriter base, com.fasterxml.jackson.databind.PropertyName newName)

## Method Details

### _new

protected com.fasterxml.jackson.databind.ser.BeanPropertyWriter _new(com.fasterxml.jackson.databind.PropertyName newName)

Overrides:
  `_new` in class `com.fasterxml.jackson.databind.ser.BeanPropertyWriter`

### unwrappingWriter

public com.fasterxml.jackson.databind.ser.BeanPropertyWriter unwrappingWriter(com.fasterxml.jackson.databind.util.NameTransformer unwrapper)

Overrides:
  `unwrappingWriter` in class `com.fasterxml.jackson.databind.ser.BeanPropertyWriter`

### serializeAsField

public void serializeAsField(Object bean, com.fasterxml.jackson.core.JsonGenerator g, com.fasterxml.jackson.databind.SerializerProvider prov) throws Exception

Overrides:
  `serializeAsField` in class `com.fasterxml.jackson.databind.ser.BeanPropertyWriter`
Throws:
  `Exception`