me.prettyprint.cassandra.serializers
Class JaxbSerializer

java.lang.Object
  extended by me.prettyprint.cassandra.serializers.AbstractSerializer<Object>
      extended by me.prettyprint.cassandra.serializers.JaxbSerializer
All Implemented Interfaces:
Serializer<Object>
Direct Known Subclasses:
FastInfosetSerializer

public class JaxbSerializer
extends AbstractSerializer<Object>

Serializes Objects using Jaxb. An instance of this class may only serialize JAXB compatible objects of classes known to its configured context.

Author:
shuzhang0@gmail.com

Constructor Summary
JaxbSerializer(Class... serializableClasses)
          Constructor.
 
Method Summary
protected  XMLStreamReader createStreamReader(InputStream input)
          Get a new XML stream reader.
protected  XMLStreamWriter createStreamWriter(OutputStream output)
          Get a new XML stream writer.
 Object fromByteBuffer(ByteBuffer bytes)
          Extract an object of type T from the bytes.
 ByteBuffer toByteBuffer(Object obj)
          Extract bytes from the obj of type T
 
Methods inherited from class me.prettyprint.cassandra.serializers.AbstractSerializer
computeInitialHashSize, fromBytes, fromBytesList, fromBytesMap, fromBytesSet, getComparatorType, toBytes, toBytesList, toBytesMap, toBytesSet
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JaxbSerializer

public JaxbSerializer(Class... serializableClasses)
Constructor.

Parameters:
serializableClasses - List of classes which can be serialized by this instance. Note that concrete classes directly referenced by any class in the list will also be serializable through this instance.
Method Detail

toByteBuffer

public ByteBuffer toByteBuffer(Object obj)
Extract bytes from the obj of type T

Specified by:
toByteBuffer in interface Serializer<Object>
Specified by:
toByteBuffer in class AbstractSerializer<Object>
Returns:

fromByteBuffer

public Object fromByteBuffer(ByteBuffer bytes)
Extract an object of type T from the bytes.

Specified by:
fromByteBuffer in interface Serializer<Object>
Specified by:
fromByteBuffer in class AbstractSerializer<Object>
Returns:

createStreamWriter

protected XMLStreamWriter createStreamWriter(OutputStream output)
                                      throws XMLStreamException
Get a new XML stream writer.

Parameters:
output - An underlying OutputStream to write to.
Returns:
a new XMLStreamWriter which writes to the specified OutputStream. The output written by this XMLStreamWriter is understandable by XMLStreamReaders produced by createStreamReader(InputStream).
Throws:
XMLStreamException

createStreamReader

protected XMLStreamReader createStreamReader(InputStream input)
                                      throws XMLStreamException
Get a new XML stream reader.

Parameters:
input - the underlying InputStream to read from.
Returns:
a new XmlStreamReader which reads from the specified InputStream. The reader can read anything written by createStreamWriter(OutputStream).
Throws:
XMLStreamException


Copyright © 2011. All Rights Reserved.