Class AbstractCollectionConverter

  • All Implemented Interfaces:
    Converter, ConverterMatcher
    Direct Known Subclasses:
    ArrayConverter, CollectionConverter, MapConverter, SubjectConverter

    public abstract class AbstractCollectionConverter
    extends java.lang.Object
    implements Converter
    Base helper class for converters that need to handle collections of items (arrays, Lists, Maps, etc).

    Typically, subclasses of this will converter the outer structure of the collection, loop through the contents and call readItem() or writeItem() for each item.

    Author:
    Joe Walnes
    • Constructor Detail

      • AbstractCollectionConverter

        public AbstractCollectionConverter​(Mapper mapper)
    • Method Detail

      • canConvert

        public abstract 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
        Parameters:
        type - the Class representing the object type to be converted
      • mapper

        protected Mapper mapper()
      • marshal

        public abstract 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
        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.
      • createCollection

        protected java.lang.Object createCollection​(java.lang.Class type)