Class ExecutionDataReader

java.lang.Object
org.jacoco.core.data.ExecutionDataReader
Direct Known Subclasses:
RemoteControlReader

public class ExecutionDataReader extends Object
Deserialization of execution data from binary streams.
  • Field Details

  • Constructor Details

    • ExecutionDataReader

      public ExecutionDataReader(InputStream input)
      Creates a new reader based on the given input stream input. Depending on the nature of the underlying stream input should be buffered as most data is read in single bytes.
      Parameters:
      input - input stream to read execution data from
  • Method Details

    • setSessionInfoVisitor

      public void setSessionInfoVisitor(ISessionInfoVisitor visitor)
      Sets an listener for session information.
      Parameters:
      visitor - visitor to retrieve session info events
    • setExecutionDataVisitor

      public void setExecutionDataVisitor(IExecutionDataVisitor visitor)
      Sets an listener for execution data.
      Parameters:
      visitor - visitor to retrieve execution data events
    • read

      public boolean read() throws IOException, IncompatibleExecDataVersionException
      Reads all data and reports it to the corresponding visitors. The stream is read until its end or a command confirmation has been sent.
      Returns:
      true if additional data can be expected after a command has been executed. false if the end of the stream has been reached.
      Throws:
      IOException - might be thrown by the underlying input stream
      IncompatibleExecDataVersionException - incompatible data version from different JaCoCo release
    • readBlock

      protected boolean readBlock(byte blocktype) throws IOException
      Reads a block of data identified by the given id. Subclasses may overwrite this method to support additional block types.
      Parameters:
      blocktype - block type
      Returns:
      true if there are more blocks to read
      Throws:
      IOException - might be thrown by the underlying input stream
    • readHeader

      private void readHeader() throws IOException
      Throws:
      IOException
    • readSessionInfo

      private void readSessionInfo() throws IOException
      Throws:
      IOException
    • readExecutionData

      private void readExecutionData() throws IOException
      Throws:
      IOException