23 lines
559 B
Java
23 lines
559 B
Java
package it.cavallium.filequeue;
|
|
|
|
import java.io.ByteArrayOutputStream;
|
|
import java.io.DataOutput;
|
|
import java.io.DataOutputStream;
|
|
import java.io.IOException;
|
|
|
|
public interface Serializer<T> {
|
|
|
|
default byte[] serialize(T data) throws IOException {
|
|
try (ByteArrayOutputStream baos = new ByteArrayOutputStream()) {
|
|
try (DataOutputStream daos = new DataOutputStream(baos)) {
|
|
serialize(data, daos);
|
|
return baos.toByteArray();
|
|
}
|
|
}
|
|
}
|
|
|
|
default void serialize(T data, DataOutput output) throws IOException {
|
|
output.write(serialize(data));
|
|
}
|
|
}
|