Package org.jacoco.agent.rt.internal
Class Agent
java.lang.Object
org.jacoco.agent.rt.internal.Agent
- All Implemented Interfaces:
IAgent
The agent manages the life cycle of JaCoCo runtime.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final RuntimeData
private final IExceptionLogger
private final AgentOptions
private IAgentOutput
private static Agent
-
Constructor Summary
ConstructorsConstructorDescriptionAgent
(AgentOptions options, IExceptionLogger logger) Creates a new agent with the given agent options. -
Method Summary
Modifier and TypeMethodDescription(package private) IAgentOutput
Create output implementation as given by the agent options.private String
void
dump
(boolean reset) Triggers a dump of the current execution data through the configured output.getData()
Returns the runtime data object created by this agentbyte[]
getExecutionData
(boolean reset) Returns current execution data.static Agent
Returns a global instance which is already started.static Agent
getInstance
(AgentOptions options) Returns a global instance which is already started.Returns current a session identifier.Returns version of JaCoCo.void
reset()
Resets all coverage information.void
setSessionId
(String id) Sets a session identifier.void
shutdown()
Shutdown the agent again.void
startup()
Initializes this agent.
-
Field Details
-
singleton
-
options
-
logger
-
data
-
output
-
jmxRegistration
-
-
Constructor Details
-
Agent
Agent(AgentOptions options, IExceptionLogger logger) Creates a new agent with the given agent options.- Parameters:
options
- agent optionslogger
- logger used by this agent
-
-
Method Details
-
getInstance
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
- Throws:
Exception
- in case something cannot be initialized
-
getInstance
Returns a global instance which is already started. If a agent has not been initialized before this method will fail.- Returns:
- global instance
- Throws:
IllegalStateException
- if no Agent has been started yet
-
getData
Returns the runtime data object created by this agent- Returns:
- runtime data for this agent instance
-
startup
Initializes this agent.- Throws:
Exception
- in case something cannot be initialized
-
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
-
getVersion
Description copied from interface:IAgent
Returns version of JaCoCo.- Specified by:
getVersion
in interfaceIAgent
- Returns:
- version of JaCoCo
-
getSessionId
Description copied from interface:IAgent
Returns current a session identifier.- Specified by:
getSessionId
in interfaceIAgent
- Returns:
- current session identifier
-
setSessionId
Description copied from interface:IAgent
Sets a session identifier.- Specified by:
setSessionId
in interfaceIAgent
- Parameters:
id
- new session identifier
-
reset
public void reset()Description copied from interface:IAgent
Resets all coverage information. -
getExecutionData
public byte[] getExecutionData(boolean reset) Description copied from interface:IAgent
Returns current execution data.- Specified by:
getExecutionData
in interfaceIAgent
- Parameters:
reset
- iftrue
the current execution data is cleared afterwards- Returns:
- dump of current execution data in JaCoCo binary format
-
dump
Description copied from interface:IAgent
Triggers a dump of the current execution data through the configured output.- Specified by:
dump
in interfaceIAgent
- Parameters:
reset
- iftrue
the current execution data is cleared afterwards- Throws:
IOException
- if the output can't write execution data
-