Class CollectionConverter
- java.lang.Object
-
- com.thoughtworks.xstream.converters.collections.AbstractCollectionConverter
-
- com.thoughtworks.xstream.converters.collections.CollectionConverter
-
- All Implemented Interfaces:
Converter
,ConverterMatcher
- Direct Known Subclasses:
NamedCollectionConverter
,SingletonCollectionConverter
,TreeSetConverter
public class CollectionConverter extends AbstractCollectionConverter
Converts most common Collections (Lists and Sets) to XML, specifying a nested element for each item.Supports java.util.ArrayList, java.util.HashSet, java.util.LinkedList, java.util.Vector and java.util.LinkedHashSet.
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.Class
type
-
Constructor Summary
Constructors Constructor Description CollectionConverter(Mapper mapper)
CollectionConverter(Mapper mapper, java.lang.Class type)
Construct a CollectionConverter for a special Collection type.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
addCurrentElementToCollection(HierarchicalStreamReader reader, UnmarshallingContext context, java.util.Collection collection, java.util.Collection target)
boolean
canConvert(java.lang.Class type)
Determines whether the converter can marshall a particular type.protected java.lang.Object
createCollection(java.lang.Class type)
void
marshal(java.lang.Object source, HierarchicalStreamWriter writer, MarshallingContext context)
Convert an object to textual data.protected void
populateCollection(HierarchicalStreamReader reader, UnmarshallingContext context, java.util.Collection collection)
protected void
populateCollection(HierarchicalStreamReader reader, UnmarshallingContext context, java.util.Collection collection, java.util.Collection target)
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
mapper, readBareItem, readCompleteItem, readItem, writeBareItem, writeCompleteItem, writeItem, writeNullItem
-
-
-
-
Constructor Detail
-
CollectionConverter
public CollectionConverter(Mapper mapper)
-
CollectionConverter
public CollectionConverter(Mapper mapper, java.lang.Class type)
Construct a CollectionConverter for a special Collection type.- Parameters:
mapper
- the mappertype
- the Collection type to handle- Since:
- 1.4.5
-
-
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 interfaceConverterMatcher
- Specified by:
canConvert
in classAbstractCollectionConverter
- Parameters:
type
- the Class representing the object type to be converted
-
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 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
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 interfaceConverter
- Specified by:
unmarshal
in classAbstractCollectionConverter
- Parameters:
reader
- The stream to read the text from.- Returns:
- The resulting object.
-
populateCollection
protected void populateCollection(HierarchicalStreamReader reader, UnmarshallingContext context, java.util.Collection collection)
-
populateCollection
protected void populateCollection(HierarchicalStreamReader reader, UnmarshallingContext context, java.util.Collection collection, java.util.Collection target)
-
addCurrentElementToCollection
protected void addCurrentElementToCollection(HierarchicalStreamReader reader, UnmarshallingContext context, java.util.Collection collection, java.util.Collection target)
-
createCollection
protected java.lang.Object createCollection(java.lang.Class type)
- Overrides:
createCollection
in classAbstractCollectionConverter
-
-