com.thoughtworks.xstream.converters.collections
Class MapConverter

java.lang.Object
  extended bycom.thoughtworks.xstream.converters.collections.AbstractCollectionConverter
      extended bycom.thoughtworks.xstream.converters.collections.MapConverter
All Implemented Interfaces:
Converter, ConverterMatcher
Direct Known Subclasses:
EnumMapConverter, TreeMapConverter

public class MapConverter
extends AbstractCollectionConverter

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 and java.util.LinkedHashMap.

Author:
Joe Walnes

Constructor Summary
MapConverter(Mapper mapper)
           
 
Method Summary
 boolean canConvert(java.lang.Class type)
          Determines whether the converter can marshall a particular type.
 void marshal(java.lang.Object source, HierarchicalStreamWriter writer, MarshallingContext context)
          Convert an object to textual data.
protected  void populateMap(HierarchicalStreamReader reader, UnmarshallingContext context, java.util.Map map)
           
 java.lang.Object unmarshal(HierarchicalStreamReader reader, UnmarshallingContext context)
          Convert textual data back into an object.
 
Methods inherited from class com.thoughtworks.xstream.converters.collections.AbstractCollectionConverter
createCollection, mapper, readItem, writeItem
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MapConverter

public MapConverter(Mapper mapper)
Method Detail

canConvert

public boolean canConvert(java.lang.Class type)
Description copied from interface: ConverterMatcher
Determines whether the converter can marshall a particular type.

Specified by:
canConvert in interface ConverterMatcher
Specified by:
canConvert in class AbstractCollectionConverter

marshal

public void marshal(java.lang.Object source,
                    HierarchicalStreamWriter writer,
                    MarshallingContext context)
Description copied from interface: Converter
Convert an object to textual data.

Specified by:
marshal in interface Converter
Specified by:
marshal in class AbstractCollectionConverter

unmarshal

public java.lang.Object unmarshal(HierarchicalStreamReader reader,
                                  UnmarshallingContext context)
Description copied from interface: Converter
Convert textual data back into an object.

Specified by:
unmarshal in interface Converter
Specified by:
unmarshal in class AbstractCollectionConverter

populateMap

protected void populateMap(HierarchicalStreamReader reader,
                           UnmarshallingContext context,
                           java.util.Map map)


Joe Walnes, http://xstream.codehaus.org/