mailiverse/java/core/src/core/util/JavaSerializer.java

39 lines
916 B
Java

/**
* Author: Timothy Prepscius
* License: GPLv3 Affero + keep my name in the code!
*/
package core.util;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
public class JavaSerializer
{
public static <T> byte[] serialize (T block) throws IOException
{
ByteArrayOutputStream bos = new ByteArrayOutputStream();
ObjectOutputStream oos = new ObjectOutputStream(bos);
oos.writeObject(block);
oos.close();
bos.close();
return bos.toByteArray();
}
@SuppressWarnings("unchecked")
public static <T> T deserialize (byte[] bytes) throws IOException, ClassNotFoundException
{
ByteArrayInputStream bis = new ByteArrayInputStream(bytes);
ObjectInputStream ois = new ObjectInputStream(bis);
T block = (T)ois.readObject();
bis.close();
ois.close();
return block;
}
}