com.fasterxml.jackson.databind.jsontype.impl

## Class AsWrapperTypeSerializer

- java.lang.Object
- - com.fasterxml.jackson.databind.jsontype.TypeSerializer
  - - com.fasterxml.jackson.databind.jsontype.impl.TypeSerializerBase
    - - com.fasterxml.jackson.databind.jsontype.impl.AsWrapperTypeSerializer

    public class AsWrapperTypeSerializer
    extends TypeSerializerBase

Type wrapper that tries to use an extra JSON Object, with a single entry that has type name as key, to serialize type information. If this is not possible (value is serialize as array or primitive), will use `JsonTypeInfo.As.WRAPPER_ARRAY` mechanism as fallback: that is, just use a wrapping array with type information as the first element and value as second.

### Field Summary

### Fields inherited from class com.fasterxml.jackson.databind.jsontype.impl.TypeSerializerBase

`_idResolver, _property`

### Constructor Summary

Constructors
Constructor and Description
`AsWrapperTypeSerializer(TypeIdResolver idRes, BeanProperty property)`

### Method Summary

Methods
`protected String` `_validTypeId(String typeId)` Helper method used to ensure that intended type id is output as something that is valid: currently only used to ensure that `null` output is converted to an empty String.
`protected void` `_writeTypeId(JsonGenerator g, String typeId)`
`AsWrapperTypeSerializer` `forProperty(BeanProperty prop)` Method called to create contextual version, to be used for values of given property.
`JsonTypeInfo.As` `getTypeInclusion()` Accessor for type information inclusion method that serializer uses; indicates how type information is embedded in resulting JSON.

### Methods inherited from class com.fasterxml.jackson.databind.jsontype.impl.TypeSerializerBase

`_generateTypeId, getPropertyName, getTypeIdResolver, handleMissingId, idFromValue, idFromValueAndType, writeTypePrefix, writeTypeSuffix`

### Methods inherited from class com.fasterxml.jackson.databind.jsontype.TypeSerializer

`_writeLegacySuffix, typeId, typeId, typeId, writeCustomTypePrefixForArray, writeCustomTypePrefixForObject, writeCustomTypePrefixForScalar, writeCustomTypeSuffixForArray, writeCustomTypeSuffixForObject, writeCustomTypeSuffixForScalar, writeTypePrefixForArray, writeTypePrefixForArray, writeTypePrefixForObject, writeTypePrefixForObject, writeTypePrefixForScalar, writeTypePrefixForScalar, writeTypeSuffixForArray, writeTypeSuffixForObject, writeTypeSuffixForScalar`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### AsWrapperTypeSerializer

    public AsWrapperTypeSerializer(TypeIdResolver idRes,
                           BeanProperty property)

### Method Detail

#### forProperty

    public AsWrapperTypeSerializer forProperty(BeanProperty prop)

Description copied from class: `TypeSerializer`
Method called to create contextual version, to be used for values of given property. This may be the type itself (as is the case for bean properties), or values contained (for `Collection` or `Map` valued properties).

Specified by:
  `forProperty` in class `TypeSerializer`

#### getTypeInclusion

    public JsonTypeInfo.As getTypeInclusion()

Description copied from class: `TypeSerializer`
Accessor for type information inclusion method that serializer uses; indicates how type information is embedded in resulting JSON.

Specified by:
  `getTypeInclusion` in class `TypeSerializerBase`

#### _validTypeId

    protected String _validTypeId(String typeId)

Helper method used to ensure that intended type id is output as something that is valid: currently only used to ensure that `null` output is converted to an empty String.

Since:
  2.6

#### _writeTypeId

    protected final void _writeTypeId(JsonGenerator g,
                    String typeId)
                               throws IOException

Throws:
  `IOException`