com.thoughtworks.xstream.converters.basic
Class AbstractBasicConverter

java.lang.Object
  extended bycom.thoughtworks.xstream.converters.basic.AbstractBasicConverter
All Implemented Interfaces:
Converter
Direct Known Subclasses:
BigDecimalConverter, BigIntegerConverter, BooleanConverter, ByteConverter, CharConverter, CurrencyConverter, DateConverter, DoubleConverter, FileConverter, FloatConverter, IntConverter, JavaClassConverter, LocaleConverter, LongConverter, ShortConverter, SqlDateConverter, SqlTimeConverter, SqlTimestampConverter, StackTraceElementConverter, StringBufferConverter, StringConverter, URLConverter

public abstract class AbstractBasicConverter
extends java.lang.Object
implements Converter

Base helper class for converters that can store the state of an object as a single String.

Subclasses should implement the toString(Object) and fromString(String) methods for the conversion.

Author:
Joe Walnes

Constructor Summary
AbstractBasicConverter()
           
 
Method Summary
abstract  boolean canConvert(java.lang.Class type)
          Called by XStream to determine whether to use this converter instance to marshall a particular type.
protected abstract  java.lang.Object fromString(java.lang.String str)
           
 void marshal(java.lang.Object source, HierarchicalStreamWriter writer, MarshallingContext context)
          Convert an object to textual data.
protected  java.lang.String toString(java.lang.Object obj)
           
 java.lang.Object unmarshal(HierarchicalStreamReader reader, UnmarshallingContext context)
          Convert textual data back into an object.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractBasicConverter

public AbstractBasicConverter()
Method Detail

fromString

protected abstract java.lang.Object fromString(java.lang.String str)

canConvert

public abstract boolean canConvert(java.lang.Class type)
Description copied from interface: Converter
Called by XStream to determine whether to use this converter instance to marshall a particular type.

Specified by:
canConvert in interface Converter

toString

protected java.lang.String toString(java.lang.Object obj)

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
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 interface Converter
Parameters:
reader - The stream to read the text from.
context -
Returns:
The resulting object.


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