I am trying to use the Kryo library to perform deep copying of objects, but I have a little problem. I'd like to deep-copy an object without transient variables. I know that I can use setCopyTransient(false)
for FieldSerializer
like so:
FieldSerializer<?> playerSerializer = new FieldSerializer<Player>(kryo, Player.class);
playerSerializer.setCopyTransient(false);
kryo.register(Player.class, playerSerializer);
but I would have to set a new FieldSerializer
for every class. Can I get somehow a default FieldSerilizer
from Kryo and set there setCopyTransient(false)
? I tried something like this and similar solutions, but it doesn't do anything:
FieldSerializer<?> serilizer = (FieldSerializer<?>) kryo.getDefaultSerializer(FieldSerializer.class);
serilizer.setCopyTransient(false);