diff options
author | Andreas Fitzek <andreas.fitzek@iaik.tugraz.at> | 2013-11-12 12:26:10 +0100 |
---|---|---|
committer | Andreas Fitzek <andreas.fitzek@iaik.tugraz.at> | 2013-11-12 12:26:10 +0100 |
commit | 7b2e2b640b0f392183f7927f692936950d3fabfc (patch) | |
tree | ffd4acccb62f2679ff613bf0cd8cd0850186b465 /pdf-as-lib/src/main/java/at/gv/egiz/sl/util/SLMarschaller.java | |
parent | dd43264f702c5e0351cc63835862c55f3e847634 (diff) | |
download | pdf-as-4-7b2e2b640b0f392183f7927f692936950d3fabfc.tar.gz pdf-as-4-7b2e2b640b0f392183f7927f692936950d3fabfc.tar.bz2 pdf-as-4-7b2e2b640b0f392183f7927f692936950d3fabfc.zip |
SecurityLayer commands included
Diffstat (limited to 'pdf-as-lib/src/main/java/at/gv/egiz/sl/util/SLMarschaller.java')
-rw-r--r-- | pdf-as-lib/src/main/java/at/gv/egiz/sl/util/SLMarschaller.java | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/sl/util/SLMarschaller.java b/pdf-as-lib/src/main/java/at/gv/egiz/sl/util/SLMarschaller.java new file mode 100644 index 00000000..8f1b3cc5 --- /dev/null +++ b/pdf-as-lib/src/main/java/at/gv/egiz/sl/util/SLMarschaller.java @@ -0,0 +1,49 @@ +package at.gv.egiz.sl.util; + +import java.io.InputStream; +import java.io.OutputStream; +import java.io.StringReader; +import java.io.StringWriter; + +import javax.xml.bind.JAXBContext; +import javax.xml.bind.JAXBException; +import javax.xml.bind.Marshaller; +import javax.xml.bind.Unmarshaller; + +public class SLMarschaller { + private static Marshaller marshaller = null; + private static Unmarshaller unmarshaller = null; + + static { + try { + JAXBContext context = JAXBContext.newInstance("at.gv.egiz.sl"); + marshaller = context.createMarshaller(); + marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true); + marshaller.setProperty(Marshaller.JAXB_ENCODING, "UTF-8"); + + unmarshaller = context.createUnmarshaller(); + } catch (JAXBException e) { + throw new RuntimeException( + "There was a problem creating a JAXBContext object for formatting the object to XML."); + } + } + + public static void marshal(Object obj, OutputStream os) throws JAXBException { + marshaller.marshal(obj, os); + } + + public static String marshalToString(Object obj) throws JAXBException { + StringWriter sw = new StringWriter(); + marshaller.marshal(obj, sw); + return sw.toString(); + } + + public static Object unmarshal(InputStream is) throws JAXBException { + return unmarshaller.unmarshal(is); + } + + public static Object unmarshalFromString(String message) throws JAXBException { + StringReader sr = new StringReader(message); + return unmarshaller.unmarshal(sr); + } +} |