
de.tsl2.nano.replication.serializer.SerializeXML Maven / Gradle / Ivy
package de.tsl2.nano.replication.serializer;
import java.beans.XMLDecoder;
import java.beans.XMLEncoder;
import java.io.BufferedOutputStream;
import java.io.ByteArrayOutputStream;
import java.io.InputStream;
public class SerializeXML implements Serializer {
public static final String KEY = "XML";
@Override
public String getKey() {
return KEY;
}
@Override
public String getExtension() {
return "xml";
}
@Override
public ByteArrayOutputStream serialize(Object obj) {
ByteArrayOutputStream out = new ByteArrayOutputStream();
XMLEncoder encoder = new XMLEncoder(new BufferedOutputStream(out));
encoder.writeObject(obj);
encoder.close();
return out;
}
@SuppressWarnings("unchecked")
@Override
public T deserialize(InputStream stream, Class type) {
return (T) new XMLDecoder(stream).readObject();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy