
net.sf.xolite.utils.StringXMLSerializer Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of xo-lite Show documentation
Show all versions of xo-lite Show documentation
This project provides a lightweight framework to
serialize/deserialize (or marshall/unmarshall) java objects into
XML. The implementation is based on standard SAX (Simple Api for
Xml) but it follows a original approach based on the strong data
encapsulation paradigm of Object Oriented (OO)
programming.
The newest version!
/*-------------------------------------------------------------------------
Copyright 2006 Olivier Berlanger
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-------------------------------------------------------------------------*/
package net.sf.xolite.utils;
import java.io.IOException;
import net.sf.xolite.XMLSerializable;
import net.sf.xolite.XMLSerializeException;
import net.sf.xolite.impl.FlowXMLSerializer;
/**
* XML serializer writing output to a java String.
*/
public class StringXMLSerializer extends FlowXMLSerializer {
private StringBuffer document;
public void serializeObject(XMLSerializable serial) throws XMLSerializeException {
if (serial == null) throw new XMLSerializeException("Cannot serialize null object");
startDocument();
serial.serialize(this);
endDocument();
}
public String getSerializedDocument() {
return document.toString();
}
protected void startDocumentImpl() throws IOException {
if (document == null) document = new StringBuffer();
else document.setLength(0);
super.startDocumentImpl();
}
protected void writeNewLine() throws IOException {
document.append("\n");
}
protected void writeString(String text) throws IOException {
document.append(text);
}
protected void writeCharacter(char ch) throws IOException {
document.append(ch);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy