redstone.xmlrpc.serializers.json
Class IntrospectingSerializer
java.lang.Object
redstone.xmlrpc.serializers.json.IntrospectingSerializer
- All Implemented Interfaces:
- XmlRpcCustomSerializer
public class IntrospectingSerializer
- extends java.lang.Object
- implements XmlRpcCustomSerializer
Serializes any Java object using Introspection to learn which properties that
the object exposes. Note: this code is poorly tested. Use at your own risk.
It does *not* support circular references; only directed graphs are supported.
- Author:
- Greger Olsson
Method Summary |
java.lang.Class |
getSupportedClass()
Returns the class of objects this serializer knows how to handle. |
void |
serialize(java.lang.Object value,
java.io.Writer writer,
XmlRpcSerializer builtInSerializer)
Asks the custom serializer to serialize the supplied value into the supplied
writer. |
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
IntrospectingSerializer
public IntrospectingSerializer()
getSupportedClass
public java.lang.Class getSupportedClass()
- Description copied from interface:
XmlRpcCustomSerializer
- Returns the class of objects this serializer knows how to handle.
- Specified by:
getSupportedClass
in interface XmlRpcCustomSerializer
- Returns:
- The class of objects interpretable to this serializer.
serialize
public void serialize(java.lang.Object value,
java.io.Writer writer,
XmlRpcSerializer builtInSerializer)
throws XmlRpcException,
java.io.IOException
- Description copied from interface:
XmlRpcCustomSerializer
- Asks the custom serializer to serialize the supplied value into the supplied
writer. The supplied value will be of the type reported in getSupportedClass()
or of a type extending therefrom.
- Specified by:
serialize
in interface XmlRpcCustomSerializer
- Parameters:
value
- The object to serialize.writer
- The writer to place the serialized data.builtInSerializer
- The built-in serializer used by the client or the server.
- Throws:
XmlRpcException
- if the value somehow could not be serialized. Many serializers
rely on the built in serializer which also may throw this
exception.
java.io.IOException
- if there was an error serializing the value through the
writer. The exception is the exception thrown by the
writer, which in most cases will be a StringWriter, in which
case this exception will never occurr. XmlRpcSerializer and
custom serializers may, however, be used outside of the
XML-RPC library to encode information in XML-RPC structs, in
which case the writer potentially could be writing the
information over a socket stream for instance.