Class MapConverter
java.lang.Object
com.thoughtworks.xstream.converters.collections.AbstractCollectionConverter
com.thoughtworks.xstream.converters.collections.MapConverter
- All Implemented Interfaces:
Converter
,ConverterMatcher
- Direct Known Subclasses:
EnumMapConverter
,NamedMapConverter
,SingletonMapConverter
,TreeMapConverter
Converts a java.util.Map to XML, specifying an 'entry'
element with 'key' and 'value' children.
Note: 'key' and 'value' is not the name of the generated tag. The children are serialized as normal elements and the implementation expects them in the order 'key'/'value'.
Supports java.util.HashMap, java.util.Hashtable, java.util.LinkedHashMap and java.util.concurrent.ConcurrentHashMap.
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionMapConverter
(Mapper mapper) MapConverter
(Mapper mapper, Class type) Construct a MapConverter for a special Map type. -
Method Summary
Modifier and TypeMethodDescriptionboolean
canConvert
(Class type) Determines whether the converter can marshall a particular type.protected Object
createCollection
(Class type) void
marshal
(Object source, HierarchicalStreamWriter writer, MarshallingContext context) Convert an object to textual data.protected void
populateMap
(HierarchicalStreamReader reader, UnmarshallingContext context, Map map) protected void
populateMap
(HierarchicalStreamReader reader, UnmarshallingContext context, Map map, Map target) protected void
putCurrentEntryIntoMap
(HierarchicalStreamReader reader, UnmarshallingContext context, Map map, Map target) unmarshal
(HierarchicalStreamReader reader, UnmarshallingContext context) Convert textual data back into an object.Methods inherited from class com.thoughtworks.xstream.converters.collections.AbstractCollectionConverter
mapper, readBareItem, readCompleteItem, readItem, writeBareItem, writeCompleteItem, writeItem, writeNullItem
-
Field Details
-
type
-
-
Constructor Details
-
MapConverter
-
MapConverter
Construct a MapConverter for a special Map type.- Parameters:
mapper
- the mappertype
- the type to handle- Since:
- 1.4.5
-
-
Method Details
-
canConvert
Description copied from interface:ConverterMatcher
Determines whether the converter can marshall a particular type.- Specified by:
canConvert
in interfaceConverterMatcher
- Specified by:
canConvert
in classAbstractCollectionConverter
- Parameters:
type
- the Class representing the object type to be converted
-
marshal
Description copied from interface:Converter
Convert an object to textual data.- Specified by:
marshal
in interfaceConverter
- Specified by:
marshal
in classAbstractCollectionConverter
- Parameters:
source
- The object to be marshalled.writer
- A stream to write to.context
- A context that allows nested objects to be processed by XStream.
-
unmarshal
Description copied from interface:Converter
Convert textual data back into an object.- Specified by:
unmarshal
in interfaceConverter
- Specified by:
unmarshal
in classAbstractCollectionConverter
- Parameters:
reader
- The stream to read the text from.context
-- Returns:
- The resulting object.
-
populateMap
-
populateMap
protected void populateMap(HierarchicalStreamReader reader, UnmarshallingContext context, Map map, Map target) -
putCurrentEntryIntoMap
protected void putCurrentEntryIntoMap(HierarchicalStreamReader reader, UnmarshallingContext context, Map map, Map target) -
createCollection
- Overrides:
createCollection
in classAbstractCollectionConverter
-