diff --git a/src/inport/SerializationHelper.java b/src/inport/SerializationHelper.java deleted file mode 100644 index 889202f2ebe383e41d39492ad542f7c36584b054..0000000000000000000000000000000000000000 --- a/src/inport/SerializationHelper.java +++ /dev/null @@ -1,79 +0,0 @@ -package inport; - -import java.io.ByteArrayInputStream; -import java.io.InputStream; -import java.io.StringWriter; -import javax.xml.bind.JAXBContext; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.Marshaller; -import javax.xml.bind.Unmarshaller; -import javax.xml.namespace.QName; -import javax.xml.stream.XMLInputFactory; -import javax.xml.stream.XMLOutputFactory; -import javax.xml.stream.XMLStreamReader; -import javax.xml.stream.XMLStreamWriter; -import javax.xml.stream.util.StreamReaderDelegate; -import javax.xml.transform.stream.StreamResult; - -/* - * To change this template, choose Tools | Templates - * and open the template in the editor. - */ - -/** - * - * @author topazh_ag - */ -public class SerializationHelper { - - public String serialize(Object object) throws Exception{ - StringWriter resultWriter = new StringWriter(); - StreamResult result = new StreamResult( resultWriter ); - XMLStreamWriter xmlStreamWriter = - XMLOutputFactory.newInstance().createXMLStreamWriter(result); - - JAXBContext context = JAXBContext.newInstance(object.getClass()); - Marshaller marshaller = context.createMarshaller(); - marshaller.marshal(new JAXBElement(new QName(object.getClass().getSimpleName()), object.getClass(), object), xmlStreamWriter); - - String res = resultWriter.toString(); - return res; - } - - public Object deserialize(String str, Class klass) throws Exception{ - - InputStream is = new ByteArrayInputStream(str.getBytes("UTF-8")); - XMLStreamReader reader = XMLInputFactory.newInstance().createXMLStreamReader(is); - reader = new CamelCaseTransfomingReaderDelegate(reader, klass); - - JAXBContext context = JAXBContext.newInstance(klass); - Unmarshaller unmarshaller = context.createUnmarshaller(); - - JAXBElement elem = unmarshaller.unmarshal(reader, klass); - Object object = elem.getValue(); - - return object; - } - - //adapts to Java property naming style - private static class CamelCaseTransfomingReaderDelegate extends StreamReaderDelegate { - - Class klass = null; - - public CamelCaseTransfomingReaderDelegate(XMLStreamReader xsr, Class klass) { - super(xsr); - this.klass = klass; - } - - @Override - public String getLocalName() { - String nodeName = super.getLocalName(); - if (!nodeName.equals(klass.getSimpleName())) - { - nodeName = nodeName.substring(0, 1).toLowerCase() + - nodeName.substring(1, nodeName.length()); - } - return nodeName.intern(); //NOTE: intern very important!.. - } - } -} \ No newline at end of file