Package com.thoughtworks.xstream.mapper
Class MapperWrapper
- java.lang.Object
-
- com.thoughtworks.xstream.mapper.MapperWrapper
-
- All Implemented Interfaces:
Mapper
- Direct Known Subclasses:
AbstractAttributeAliasingMapper,AbstractXmlFriendlyMapper,AnnotationMapper,ArrayMapper,AttributeMapper,CachingMapper,CGLIBMapper,ClassAliasingMapper,DefaultImplementationsMapper,DynamicProxyMapper,ElementIgnoringMapper,EnumMapper,FieldAliasingMapper,ImmutableTypesMapper,ImplicitCollectionMapper,LambdaMapper,LocalConversionMapper,OuterClassMapper,PackageAliasingMapper,SecurityMapper
public abstract class MapperWrapper extends java.lang.Object implements Mapper
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface com.thoughtworks.xstream.mapper.Mapper
Mapper.ImplicitCollectionMapping, Mapper.Null
-
-
Field Summary
Fields Modifier and Type Field Description private MapperaliasForAttributeMapperprivate MapperaliasForSystemAttributeMapperprivate MapperattributeForAliasMapperprivate MapperdefaultImplementationOfMapperprivate MappergetConverterFromAttributeMapperprivate MappergetConverterFromItemTypeMapperprivate MappergetFieldNameForItemTypeAndNameMapperprivate MappergetImplicitCollectionDefForFieldNameMapperprivate MappergetItemTypeForItemFieldNameMapperprivate MappergetLocalConverterMapperprivate MapperisIgnoredElementMapperprivate MapperisImmutableValueTypeMapperprivate MapperisReferenceableMapperprivate MapperrealClassMapperprivate MapperrealMemberMapperprivate MapperserializedClassMapperprivate MapperserializedMemberMapperprivate MappershouldSerializeMemberMapperprivate Mapperwrapped
-
Constructor Summary
Constructors Constructor Description MapperWrapper(Mapper wrapped)
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description java.lang.StringaliasForAttribute(java.lang.Class definedIn, java.lang.String fieldName)Deprecated.As of 1.3, use combination ofserializedMember(Class, String)andgetConverterFromItemType(String, Class, Class)java.lang.StringaliasForAttribute(java.lang.String attribute)Get the alias for an attribute's name.java.lang.StringaliasForSystemAttribute(java.lang.String attribute)Get the alias for a system attribute's name.java.lang.StringattributeForAlias(java.lang.Class definedIn, java.lang.String alias)Deprecated.As of 1.3, use combination ofrealMember(Class, String)andgetConverterFromItemType(String, Class, Class)java.lang.StringattributeForAlias(java.lang.String alias)Get the attribute's name for an alias.java.lang.ClassdefaultImplementationOf(java.lang.Class type)SingleValueConvertergetConverterFromAttribute(java.lang.Class type, java.lang.String attribute)Deprecated.As of 1.3.1, usegetConverterFromAttribute(Class, String, Class)SingleValueConvertergetConverterFromAttribute(java.lang.Class definedIn, java.lang.String attribute, java.lang.Class type)Returns which converter to use for an specific attribute in a type.SingleValueConvertergetConverterFromAttribute(java.lang.String name)Deprecated.As of 1.3, usegetConverterFromAttribute(Class, String, Class)SingleValueConvertergetConverterFromItemType(java.lang.Class type)Deprecated.As of 1.3, usegetConverterFromItemType(String, Class, Class)SingleValueConvertergetConverterFromItemType(java.lang.String fieldName, java.lang.Class type)Deprecated.As of 1.3, usegetConverterFromItemType(String, Class, Class)SingleValueConvertergetConverterFromItemType(java.lang.String fieldName, java.lang.Class type, java.lang.Class definedIn)Returns a single value converter to be used in a specific field.java.lang.StringgetFieldNameForItemTypeAndName(java.lang.Class definedIn, java.lang.Class itemType, java.lang.String itemFieldName)Get the name of the field that acts as the default collection for an object, or return null if there is none.Mapper.ImplicitCollectionMappinggetImplicitCollectionDefForFieldName(java.lang.Class itemType, java.lang.String fieldName)java.lang.ClassgetItemTypeForItemFieldName(java.lang.Class definedIn, java.lang.String itemFieldName)ConvertergetLocalConverter(java.lang.Class definedIn, java.lang.String fieldName)booleanisIgnoredElement(java.lang.String name)Whether this name can be ignored.booleanisImmutableValueType(java.lang.Class type)Whether this type is a simple immutable value (int, boolean, String, URL, etc).booleanisReferenceable(java.lang.Class type)Whether this type is referenceable in a stream.MapperlookupMapperOfType(java.lang.Class type)java.lang.ClassrealClass(java.lang.String elementName)How a serialized class representation should be mapped back to a real class.java.lang.StringrealMember(java.lang.Class type, java.lang.String serialized)How a serialized member representation should be mapped back to a real member.java.lang.StringserializedClass(java.lang.Class type)How a class name should be represented in its serialized form.java.lang.StringserializedMember(java.lang.Class type, java.lang.String memberName)How a class member should be represented in its serialized form.booleanshouldSerializeMember(java.lang.Class definedIn, java.lang.String fieldName)Determine whether a specific member should be serialized.
-
-
-
Field Detail
-
wrapped
private final Mapper wrapped
-
aliasForAttributeMapper
private final Mapper aliasForAttributeMapper
-
aliasForSystemAttributeMapper
private final Mapper aliasForSystemAttributeMapper
-
attributeForAliasMapper
private final Mapper attributeForAliasMapper
-
defaultImplementationOfMapper
private final Mapper defaultImplementationOfMapper
-
getConverterFromAttributeMapper
private final Mapper getConverterFromAttributeMapper
-
getConverterFromItemTypeMapper
private final Mapper getConverterFromItemTypeMapper
-
getFieldNameForItemTypeAndNameMapper
private final Mapper getFieldNameForItemTypeAndNameMapper
-
getImplicitCollectionDefForFieldNameMapper
private final Mapper getImplicitCollectionDefForFieldNameMapper
-
getItemTypeForItemFieldNameMapper
private final Mapper getItemTypeForItemFieldNameMapper
-
getLocalConverterMapper
private final Mapper getLocalConverterMapper
-
isIgnoredElementMapper
private final Mapper isIgnoredElementMapper
-
isImmutableValueTypeMapper
private final Mapper isImmutableValueTypeMapper
-
isReferenceableMapper
private final Mapper isReferenceableMapper
-
realClassMapper
private final Mapper realClassMapper
-
realMemberMapper
private final Mapper realMemberMapper
-
serializedClassMapper
private final Mapper serializedClassMapper
-
serializedMemberMapper
private final Mapper serializedMemberMapper
-
shouldSerializeMemberMapper
private final Mapper shouldSerializeMemberMapper
-
-
Constructor Detail
-
MapperWrapper
public MapperWrapper(Mapper wrapped)
-
-
Method Detail
-
serializedClass
public java.lang.String serializedClass(java.lang.Class type)
Description copied from interface:MapperHow a class name should be represented in its serialized form.- Specified by:
serializedClassin interfaceMapper
-
realClass
public java.lang.Class realClass(java.lang.String elementName)
Description copied from interface:MapperHow a serialized class representation should be mapped back to a real class.
-
serializedMember
public java.lang.String serializedMember(java.lang.Class type, java.lang.String memberName)Description copied from interface:MapperHow a class member should be represented in its serialized form.- Specified by:
serializedMemberin interfaceMapper
-
realMember
public java.lang.String realMember(java.lang.Class type, java.lang.String serialized)Description copied from interface:MapperHow a serialized member representation should be mapped back to a real member.- Specified by:
realMemberin interfaceMapper
-
isImmutableValueType
public boolean isImmutableValueType(java.lang.Class type)
Description copied from interface:MapperWhether this type is a simple immutable value (int, boolean, String, URL, etc). Immutable types will be repeatedly written in the serialized stream, instead of using object references.- Specified by:
isImmutableValueTypein interfaceMapper
-
isReferenceable
public boolean isReferenceable(java.lang.Class type)
Description copied from interface:MapperWhether this type is referenceable in a stream.- Specified by:
isReferenceablein interfaceMapper
-
defaultImplementationOf
public java.lang.Class defaultImplementationOf(java.lang.Class type)
- Specified by:
defaultImplementationOfin interfaceMapper
-
aliasForAttribute
public java.lang.String aliasForAttribute(java.lang.String attribute)
Description copied from interface:MapperGet the alias for an attribute's name.- Specified by:
aliasForAttributein interfaceMapper- Parameters:
attribute- the attribute- Returns:
- the alias
-
attributeForAlias
public java.lang.String attributeForAlias(java.lang.String alias)
Description copied from interface:MapperGet the attribute's name for an alias.- Specified by:
attributeForAliasin interfaceMapper- Parameters:
alias- the alias- Returns:
- the attribute's name
-
aliasForSystemAttribute
public java.lang.String aliasForSystemAttribute(java.lang.String attribute)
Description copied from interface:MapperGet the alias for a system attribute's name.- Specified by:
aliasForSystemAttributein interfaceMapper- Parameters:
attribute- the system attribute- Returns:
- the alias
-
getFieldNameForItemTypeAndName
public java.lang.String getFieldNameForItemTypeAndName(java.lang.Class definedIn, java.lang.Class itemType, java.lang.String itemFieldName)Description copied from interface:MapperGet the name of the field that acts as the default collection for an object, or return null if there is none.- Specified by:
getFieldNameForItemTypeAndNamein interfaceMapper- Parameters:
definedIn- owning typeitemType- item typeitemFieldName- optional item element name
-
getItemTypeForItemFieldName
public java.lang.Class getItemTypeForItemFieldName(java.lang.Class definedIn, java.lang.String itemFieldName)- Specified by:
getItemTypeForItemFieldNamein interfaceMapper
-
getImplicitCollectionDefForFieldName
public Mapper.ImplicitCollectionMapping getImplicitCollectionDefForFieldName(java.lang.Class itemType, java.lang.String fieldName)
- Specified by:
getImplicitCollectionDefForFieldNamein interfaceMapper
-
shouldSerializeMember
public boolean shouldSerializeMember(java.lang.Class definedIn, java.lang.String fieldName)Description copied from interface:MapperDetermine whether a specific member should be serialized.- Specified by:
shouldSerializeMemberin interfaceMapper
-
isIgnoredElement
public boolean isIgnoredElement(java.lang.String name)
Description copied from interface:MapperWhether this name can be ignored.- Specified by:
isIgnoredElementin interfaceMapper
-
getConverterFromItemType
public SingleValueConverter getConverterFromItemType(java.lang.String fieldName, java.lang.Class type)
Deprecated.As of 1.3, usegetConverterFromItemType(String, Class, Class)- Specified by:
getConverterFromItemTypein interfaceMapper
-
getConverterFromItemType
public SingleValueConverter getConverterFromItemType(java.lang.Class type)
Deprecated.As of 1.3, usegetConverterFromItemType(String, Class, Class)- Specified by:
getConverterFromItemTypein interfaceMapper
-
getConverterFromAttribute
public SingleValueConverter getConverterFromAttribute(java.lang.String name)
Deprecated.As of 1.3, usegetConverterFromAttribute(Class, String, Class)- Specified by:
getConverterFromAttributein interfaceMapper
-
getLocalConverter
public Converter getLocalConverter(java.lang.Class definedIn, java.lang.String fieldName)
- Specified by:
getLocalConverterin interfaceMapper
-
lookupMapperOfType
public Mapper lookupMapperOfType(java.lang.Class type)
- Specified by:
lookupMapperOfTypein interfaceMapper
-
getConverterFromItemType
public SingleValueConverter getConverterFromItemType(java.lang.String fieldName, java.lang.Class type, java.lang.Class definedIn)
Description copied from interface:MapperReturns a single value converter to be used in a specific field.- Specified by:
getConverterFromItemTypein interfaceMapper- Parameters:
fieldName- the field nametype- the field typedefinedIn- the type which defines this field- Returns:
- a SingleValueConverter or null if there no such converter should be used for this field.
-
aliasForAttribute
public java.lang.String aliasForAttribute(java.lang.Class definedIn, java.lang.String fieldName)Deprecated.As of 1.3, use combination ofserializedMember(Class, String)andgetConverterFromItemType(String, Class, Class)Description copied from interface:MapperReturns an alias for a single field defined in an specific type.- Specified by:
aliasForAttributein interfaceMapper- Parameters:
definedIn- the type where the field was definedfieldName- the field name- Returns:
- the alias for this field or its own name if no alias was defined
-
attributeForAlias
public java.lang.String attributeForAlias(java.lang.Class definedIn, java.lang.String alias)Deprecated.As of 1.3, use combination ofrealMember(Class, String)andgetConverterFromItemType(String, Class, Class)Description copied from interface:MapperReturns the field name for an aliased attribute.- Specified by:
attributeForAliasin interfaceMapper- Parameters:
definedIn- the type where the field was definedalias- the alias- Returns:
- the original attribute name
-
getConverterFromAttribute
public SingleValueConverter getConverterFromAttribute(java.lang.Class type, java.lang.String attribute)
Deprecated.As of 1.3.1, usegetConverterFromAttribute(Class, String, Class)Description copied from interface:MapperReturns which converter to use for an specific attribute in a type.- Specified by:
getConverterFromAttributein interfaceMapper- Parameters:
type- the field's parentattribute- the attribute name
-
getConverterFromAttribute
public SingleValueConverter getConverterFromAttribute(java.lang.Class definedIn, java.lang.String attribute, java.lang.Class type)
Description copied from interface:MapperReturns which converter to use for an specific attribute in a type.- Specified by:
getConverterFromAttributein interfaceMapper- Parameters:
definedIn- the field's parentattribute- the attribute nametype- the type the converter should create
-
-