Javolution 6.0.0 java
|
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]
Definition at line 43 of file XMLSerializable.java.