mirror of
https://github.com/OpenHFT/Chronicle-Map.git
synced 2021-09-13 01:26:12 +00:00
Ensure the SerializationBuilder passes through the expected class.
Conflicts: pom.xml
This commit is contained in:
Regular → Executable
+5
-3
@@ -307,7 +307,7 @@ public final class SerializationBuilder<E> implements Cloneable, Serializable {
|
||||
|
||||
public SerializationBuilder<E> objectSerializer(ObjectSerializer serializer) {
|
||||
if (reader == null || interop == null) {
|
||||
marshaller(new SerializableMarshaller(serializer));
|
||||
marshaller(new SerializableMarshaller(serializer, eClass));
|
||||
}
|
||||
return this;
|
||||
}
|
||||
@@ -444,15 +444,17 @@ public final class SerializationBuilder<E> implements Cloneable, Serializable {
|
||||
private static final long serialVersionUID = 0L;
|
||||
|
||||
private final ObjectSerializer serializer;
|
||||
private final Class expectedClass;
|
||||
|
||||
private SerializableMarshaller(ObjectSerializer serializer) {
|
||||
private SerializableMarshaller(ObjectSerializer serializer, Class expectedClass) {
|
||||
this.serializer = serializer;
|
||||
this.expectedClass = expectedClass;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void write(Bytes bytes, Object obj) {
|
||||
try {
|
||||
serializer.writeSerializable(bytes, obj, null);
|
||||
serializer.writeSerializable(bytes, obj, expectedClass);
|
||||
} catch (IOException e) {
|
||||
throw new IllegalStateException(e);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user