Javolution 6.0.0 java
javolution.xml.XMLSerializable Interface Reference
Inheritance diagram for javolution.xml.XMLSerializable:
[legend]
Collaboration diagram for javolution.xml.XMLSerializable:
[legend]

Detailed Description

This interface identifies classes supporting XML serialization (XML serialization is still possible for classes not implementing this interface through dynamic XMLBinding though).

Typically, classes implementing this interface have a protected static XMLFormat holding their default XML representation. For example:[code] public final class Complex implements XMLSerializable {

// Use the cartesien form for the default XML representation.        
protected static final XMLFormat<Complex> XML = new XMLFormat<Complex>(Complex.class) {
    public Complex newInstance(Class<Complex> cls, InputElement xml) throws XMLStreamException {
        return Complex.valueOf(xml.getAttribute("real", 0.0), 
                               xml.getAttribute("imaginary", 0.0));
    }
    public void write(Complex complex, OutputElement xml) throws XMLStreamException {
        xml.setAttribute("real", complex.getReal());
        xml.setAttribute("imaginary", complex.getImaginary());
    }
    public void read(InputElement xml, Complex complex) {
        // Immutable, deserialization occurs at creation, ref. newIntance(...) 
    }
};
...

}[/code]


Author
Jean-Marie Dautelle
Version
4.2, April 15, 2007

Definition at line 43 of file XMLSerializable.java.


The documentation for this interface was generated from the following file: