Class CompensatingClosureSerializer

java.lang.Object
com.esotericsoftware.kryo.kryo5.Serializer
com.esotericsoftware.kryo.kryo5.serializers.ClosureSerializer
com.broadleafcommerce.data.tracking.core.mapping.cache.CompensatingClosureSerializer

public class CompensatingClosureSerializer extends com.esotericsoftware.kryo.kryo5.serializers.ClosureSerializer
A closure serializer that is capable of emitting a SerializedLambda for a dynamically generated Serializable closure that was not originally compiled as Serializable in the containing class. This is needed to properly serialize closures that are not explicitly marked as Serializable in source code, but are rather transformed at runtime.
Author:
Jeff Fischer
  • Nested Class Summary

    Nested classes/interfaces inherited from class com.esotericsoftware.kryo.kryo5.serializers.ClosureSerializer

    com.esotericsoftware.kryo.kryo5.serializers.ClosureSerializer.Closure
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    read(com.esotericsoftware.kryo.kryo5.Kryo kryo, com.esotericsoftware.kryo.kryo5.io.Input input, Class type)
     

    Methods inherited from class com.esotericsoftware.kryo.kryo5.serializers.ClosureSerializer

    copy, write

    Methods inherited from class com.esotericsoftware.kryo.kryo5.Serializer

    getAcceptsNull, isImmutable, setAcceptsNull, setImmutable

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • CompensatingClosureSerializer

      public CompensatingClosureSerializer(ClassLoader loader)
  • Method Details

    • read

      public Object read(com.esotericsoftware.kryo.kryo5.Kryo kryo, com.esotericsoftware.kryo.kryo5.io.Input input, Class type)
      Overrides:
      read in class com.esotericsoftware.kryo.kryo5.serializers.ClosureSerializer