com.thoughtworks.xstream.converters.reflection
Class SelfStreamingInstanceChecker

java.lang.Object
  extended by com.thoughtworks.xstream.converters.reflection.SelfStreamingInstanceChecker
All Implemented Interfaces:
Converter, ConverterMatcher

public class SelfStreamingInstanceChecker
extends Object
implements Converter

A special converter that prevents self-serialization. The serializing XStream instance adds a converter of this type to prevent self-serialization and will throw an exception instead.

Since:
1.2
Author:
Jörg Schaible

Constructor Summary
SelfStreamingInstanceChecker(Converter defaultConverter, Object xstream)
           
 
Method Summary
 boolean canConvert(Class type)
          Determines whether the converter can marshall a particular type.
 void marshal(Object source, HierarchicalStreamWriter writer, MarshallingContext context)
          Convert an object to textual data.
 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

SelfStreamingInstanceChecker

public SelfStreamingInstanceChecker(Converter defaultConverter,
                                    Object xstream)
Method Detail

canConvert

public boolean canConvert(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

marshal

public void marshal(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 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.
Returns:
The resulting object.


Copyright © 2004-2014 XStream. All Rights Reserved.