Class UnwrappingBeanPropertyWriter
java.lang.Object
edu.internet2.middleware.grouperClientExt.com.fasterxml.jackson.databind.introspect.ConcreteBeanPropertyBase
edu.internet2.middleware.grouperClientExt.com.fasterxml.jackson.databind.ser.PropertyWriter
edu.internet2.middleware.grouperClientExt.com.fasterxml.jackson.databind.ser.BeanPropertyWriter
edu.internet2.middleware.grouperClientExt.com.fasterxml.jackson.databind.ser.impl.UnwrappingBeanPropertyWriter
- All Implemented Interfaces:
BeanProperty
,Named
,Serializable
Variant of
BeanPropertyWriter
which will handle unwrapping
of JSON Object (including of properties of Object within surrounding
JSON object, and not as sub-object).- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from interface edu.internet2.middleware.grouperClientExt.com.fasterxml.jackson.databind.BeanProperty
BeanProperty.Bogus, BeanProperty.Std
-
Field Summary
Modifier and TypeFieldDescriptionprotected final NameTransformer
Transformer used to add prefix and/or suffix for properties of unwrapped POJO.Fields inherited from class edu.internet2.middleware.grouperClientExt.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 edu.internet2.middleware.grouperClientExt.com.fasterxml.jackson.databind.introspect.ConcreteBeanPropertyBase
_aliases, _metadata
Fields inherited from interface edu.internet2.middleware.grouperClientExt.com.fasterxml.jackson.databind.BeanProperty
EMPTY_FORMAT, EMPTY_INCLUDE
-
Constructor Summary
ModifierConstructorDescriptionUnwrappingBeanPropertyWriter
(BeanPropertyWriter base, NameTransformer unwrapper) protected
UnwrappingBeanPropertyWriter
(UnwrappingBeanPropertyWriter base, NameTransformer transformer, SerializedString name) -
Method Summary
Modifier and TypeMethodDescriptionprotected void
_depositSchemaProperty
(ObjectNode propertiesNode, JsonNode schemaNode) protected JsonSerializer<Object>
_findAndAddDynamic
(PropertySerializerMap map, Class<?> type, SerializerProvider provider) protected UnwrappingBeanPropertyWriter
_new
(NameTransformer transformer, SerializedString newName) Overridable factory method used by sub-classesvoid
Method called to assign value serializer for propertyvoid
depositSchemaProperty
(JsonObjectFormatVisitor visitor, SerializerProvider provider) Traversal method used for things like JSON Schema generation, or POJO introspection.boolean
Accessor that will return true if this bean property has to support "unwrapping"; ability to replace POJO structural wrapping with optional name prefix and/or suffix (or in some cases, just removal of wrapper name).rename
(NameTransformer transformer) void
serializeAsField
(Object bean, JsonGenerator gen, SerializerProvider prov) Method called to access property that this bean stands for, from within given bean, and to serialize it as a JSON Object field using appropriate serializer.Methods inherited from class edu.internet2.middleware.grouperClientExt.com.fasterxml.jackson.databind.ser.BeanPropertyWriter
_handleSelfReference, _new, assignNullSerializer, assignTypeSerializer, depositSchemaProperty, fixAccess, get, getAnnotation, getContextAnnotation, getFullName, getGenericPropertyType, getInternalSetting, getMember, getName, getPropertyType, getRawSerializationType, getSerializationType, getSerializedName, getSerializer, getType, getTypeSerializer, getViews, getWrapperName, hasNullSerializer, hasSerializer, removeInternalSetting, serializeAsElement, serializeAsOmittedField, serializeAsPlaceholder, setInternalSetting, setNonTrivialBaseType, toString, unwrappingWriter, willSuppressNulls, wouldConflictWithName
Methods inherited from class edu.internet2.middleware.grouperClientExt.com.fasterxml.jackson.databind.ser.PropertyWriter
findAnnotation
Methods inherited from class edu.internet2.middleware.grouperClientExt.com.fasterxml.jackson.databind.introspect.ConcreteBeanPropertyBase
findAliases, findFormatOverrides, findPropertyFormat, findPropertyInclusion, getMetadata, isRequired, isVirtual
-
Field Details
-
_nameTransformer
Transformer used to add prefix and/or suffix for properties of unwrapped POJO.
-
-
Constructor Details
-
UnwrappingBeanPropertyWriter
-
UnwrappingBeanPropertyWriter
protected UnwrappingBeanPropertyWriter(UnwrappingBeanPropertyWriter base, NameTransformer transformer, SerializedString name)
-
-
Method Details
-
rename
- Overrides:
rename
in classBeanPropertyWriter
-
_new
Overridable factory method used by sub-classes- Since:
- 2.6.0
-
isUnwrapping
public boolean isUnwrapping()Description copied from class:BeanPropertyWriter
Accessor that will return true if this bean property has to support "unwrapping"; ability to replace POJO structural wrapping with optional name prefix and/or suffix (or in some cases, just removal of wrapper name).Default implementation simply returns false.
- Overrides:
isUnwrapping
in classBeanPropertyWriter
-
serializeAsField
public void serializeAsField(Object bean, JsonGenerator gen, SerializerProvider prov) throws Exception Description copied from class:BeanPropertyWriter
Method called to access property that this bean stands for, from within given bean, and to serialize it as a JSON Object field using appropriate serializer.- Overrides:
serializeAsField
in classBeanPropertyWriter
- Throws:
Exception
-
assignSerializer
Description copied from class:BeanPropertyWriter
Method called to assign value serializer for property- Overrides:
assignSerializer
in classBeanPropertyWriter
-
depositSchemaProperty
public void depositSchemaProperty(JsonObjectFormatVisitor visitor, SerializerProvider provider) throws JsonMappingException Description copied from class:PropertyWriter
Traversal method used for things like JSON Schema generation, or POJO introspection.- Specified by:
depositSchemaProperty
in interfaceBeanProperty
- Overrides:
depositSchemaProperty
in classBeanPropertyWriter
- Parameters:
visitor
- Visitor to used as the callback handler- Throws:
JsonMappingException
-
_depositSchemaProperty
- Overrides:
_depositSchemaProperty
in classBeanPropertyWriter
-
_findAndAddDynamic
protected JsonSerializer<Object> _findAndAddDynamic(PropertySerializerMap map, Class<?> type, SerializerProvider provider) throws JsonMappingException - Overrides:
_findAndAddDynamic
in classBeanPropertyWriter
- Throws:
JsonMappingException
-