|
TPTP 4.6.0 Platform Project Public API Specification |
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.eclipse.tptp.platform.probekit.launch.launchpad.LaunchPadJVMTI
public class LaunchPadJVMTI
This class replaces LaunchPad.java for the JVMTI implementation of probekit profiling. After the agent attaches but before it calls RESUME there is a small window of time in which we can send commands to the agent. This class is invoked during that time from the agentActive call to the ProbeControlListener, notified at the start of this crucial time. This class is used to first retrieve the ProbeID information stored as an attribute in the LaunchConfiguration which is passed in to agentActive. Once we have the ProbeIDs of all the selected probes, we can look up the probe information for these probes stored in the Probe Registry. Upon retrieving the registry entry, we have to wrap the class file and probescript information as a String using a Base64 encoder so that it can be sent as the commandData in the new execution framework command protocol. The command creation and invocation of agent.sendCommand() happens during deployClasses() which uses the agent passed in to send a command containing all of the necessary probe file information.
| Constructor Summary | |
|---|---|
LaunchPadJVMTI()
|
|
| Method Summary | |
|---|---|
void |
addFilter(java.lang.String filterString)
Add a filter to the LaunchPad filter list. |
void |
agentActive(ICollector currentAgent,
org.eclipse.debug.core.ILaunchConfiguration config)
A method called when the agent gives control to the probekit. |
void |
clearFilters()
Wipes out all of the filters in the global filters Vector |
static void |
deployProbeClasses(java.util.Vector bytes,
java.util.Vector classNames,
IAgent agent,
int probeNumber)
A method to send the probe classes to the Agent using the new execution framework command protocol |
void |
deployProbes(ProbeRegistryEntry probeRegistryEntry,
int probeNumber)
Begins the process of deploying all of the user-defined probes by first looping through the selected Probe Registry entries and retrieving the probe classPaths. |
void |
prepareFileArrays(java.lang.Object[] probeClassPath,
ICollector agent,
int probeNumber)
This method is used to read in the class files and create two arrays, one of the class files themselves and one of the file names to pass to the method which sends the probekit commands to the agent. |
void |
setAgent(ICollector agent)
Set the TPTP profiling agent. |
| Methods inherited from class java.lang.Object |
|---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public LaunchPadJVMTI()
| Method Detail |
|---|
public void agentActive(ICollector currentAgent,
org.eclipse.debug.core.ILaunchConfiguration config)
throws org.eclipse.core.runtime.CoreException,
LaunchPadException
currentAgent - - the currently active Agentconfig - - the Launch Configuration
org.eclipse.core.runtime.CoreException
LaunchPadException
public void deployProbes(ProbeRegistryEntry probeRegistryEntry,
int probeNumber)
throws LaunchPadException
RegsitryEntries - - Vector of selected probes' Regsitry EntriesprobeNumber -
LaunchPadException
public void prepareFileArrays(java.lang.Object[] probeClassPath,
ICollector agent,
int probeNumber)
throws LaunchPadException
probeClassPath - - Array of the classPaths for selected probe filesagent- - the active agent we will use to send commandsprobeNumber -
LaunchPadException
public static void deployProbeClasses(java.util.Vector bytes,
java.util.Vector classNames,
IAgent agent,
int probeNumber)
throws LaunchPadException
bytes - - The Vector of bytes representing the probe file classes (probescript etc.)classNames - - A Vector of the classNames for each probeagent - - The currently active agent
LaunchPadExceptionpublic void clearFilters()
LaunchPad.clearFilters()public void addFilter(java.lang.String filterString)
filterString - LaunchPad.addFilter(String)public void setAgent(ICollector agent)
agent - - The profiling agent
|
TPTP 4.6.0 Platform Project Public API Specification |
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||