Class Agent

  • All Implemented Interfaces:
    IAgent

    public class Agent
    extends java.lang.Object
    implements IAgent
    The agent manages the life cycle of JaCoCo runtime.
    • Constructor Detail

      • Agent

        Agent​(AgentOptions options,
              IExceptionLogger logger)
        Creates a new agent with the given agent options.
        Parameters:
        options - agent options
        logger - logger used by this agent
    • Method Detail

      • getInstance

        public static Agent getInstance​(AgentOptions options)
        Returns a global instance which is already started. If the method is called the first time the instance is created with the given options.
        Parameters:
        options - options to configure the instance
        Returns:
        global instance
      • getInstance

        public static Agent getInstance()
                                 throws java.lang.IllegalStateException
        Returns a global instance which is already started. If a agent has not been initialized before this method will fail.
        Returns:
        global instance
        Throws:
        java.lang.IllegalStateException - if no Agent has been started yet
      • getData

        public RuntimeData getData()
        Returns the runtime data object created by this agent
        Returns:
        runtime data for this agent instance
      • startup

        public void startup()
        Initializes this agent.
      • shutdown

        public void shutdown()
        Shutdown the agent again.
      • createAgentOutput

        IAgentOutput createAgentOutput()
        Create output implementation as given by the agent options.
        Returns:
        configured controller implementation
      • createSessionId

        private java.lang.String createSessionId()
      • getVersion

        public java.lang.String getVersion()
        Description copied from interface: IAgent
        Returns version of JaCoCo.
        Specified by:
        getVersion in interface IAgent
        Returns:
        version of JaCoCo
      • getSessionId

        public java.lang.String getSessionId()
        Description copied from interface: IAgent
        Returns current a session identifier.
        Specified by:
        getSessionId in interface IAgent
        Returns:
        current session identifier
      • setSessionId

        public void setSessionId​(java.lang.String id)
        Description copied from interface: IAgent
        Sets a session identifier.
        Specified by:
        setSessionId in interface IAgent
        Parameters:
        id - new session identifier
      • reset

        public void reset()
        Description copied from interface: IAgent
        Resets all coverage information.
        Specified by:
        reset in interface IAgent
      • getExecutionData

        public byte[] getExecutionData​(boolean reset)
        Description copied from interface: IAgent
        Returns current execution data.
        Specified by:
        getExecutionData in interface IAgent
        Parameters:
        reset - if true the current execution data is cleared afterwards
        Returns:
        dump of current execution data in JaCoCo binary format
      • dump

        public void dump​(boolean reset)
                  throws java.io.IOException
        Description copied from interface: IAgent
        Triggers a dump of the current execution data through the configured output.
        Specified by:
        dump in interface IAgent
        Parameters:
        reset - if true the current execution data is cleared afterwards
        Throws:
        java.io.IOException - if the output can't write execution data