Class ByteBuddyCrossClassLoaderSerializationSupport.MockitoMockObjectOutputStream

java.lang.Object
java.io.OutputStream
java.io.ObjectOutputStream
org.mockito.internal.creation.bytebuddy.ByteBuddyCrossClassLoaderSerializationSupport.MockitoMockObjectOutputStream
All Implemented Interfaces:
Closeable, DataOutput, Flushable, ObjectOutput, ObjectStreamConstants, AutoCloseable
Enclosing class:
ByteBuddyCrossClassLoaderSerializationSupport

private static class ByteBuddyCrossClassLoaderSerializationSupport.MockitoMockObjectOutputStream extends ObjectOutputStream
Special Mockito aware ObjectOutputStream.

This output stream has the role of marking in the stream the Mockito class. This marking process is necessary to identify the proxy class that will need to be recreated.

The mirror method used for deserializing the mock is ByteBuddyCrossClassLoaderSerializationSupport.MockitoMockObjectInputStream.resolveClass(ObjectStreamClass).

  • Field Details

  • Constructor Details

  • Method Details

    • annotateClass

      protected void annotateClass(Class<?> cl) throws IOException
      Annotates (marks) the class if this class is a Mockito mock.
      Overrides:
      annotateClass in class ObjectOutputStream
      Parameters:
      cl - The class to annotate.
      Throws:
      IOException
    • mockitoProxyClassMarker

      private String mockitoProxyClassMarker(Class<?> cl)
      Returns the Mockito marker if this class is a Mockito mock.
      Parameters:
      cl - The class to mark.
      Returns:
      The marker if this is a Mockito proxy class, otherwise returns a void marker.