public class Agent
extends java.lang.Object
| Modifier | Constructor and Description |
|---|---|
protected |
Agent() |
| Modifier and Type | Method and Description |
|---|---|
static void |
agentmain(java.lang.String args,
java.lang.instrument.Instrumentation inst)
Dynamic loading the agent to virtual machine.
|
static Agent |
getInstance()
Get Agent singleton instance.
|
void |
handleHijack(java.lang.String className,
java.lang.String methodName,
HijackBehavior hijackBehavior)
Handler for new hijacks.
|
void |
removeHijack(java.lang.String className,
java.lang.String methodName,
HijackBehavior hijackBehavior)
Hijack stopper.
|
public static Agent getInstance()
public static void agentmain(java.lang.String args,
java.lang.instrument.Instrumentation inst)
throws java.lang.Exception
Instrumentation.retransformClasses(Class[])}, because some classes are already transformed
before our running, ie.: {Socket}.java.lang.Exceptionpublic void handleHijack(java.lang.String className,
java.lang.String methodName,
HijackBehavior hijackBehavior)
throws AgentException
className - which should be instrumented.methodName - which should be instrumented.hijackBehavior - specific implementation which will be called during instrumentation.AgentException - if there will be a problem with instrumentation.public void removeHijack(java.lang.String className,
java.lang.String methodName,
HijackBehavior hijackBehavior)
className - of registered hijack.methodName - of registered hijack.hijackBehavior - of registered hijack.