org.springframework.instrument

## Class InstrumentationSavingAgent

- java.lang.Object
- - org.springframework.instrument.InstrumentationSavingAgent

    public class InstrumentationSavingAgent
    extends Object

Java agent that saves the `Instrumentation` interface from the JVM for later use.

Since:
  2.0
Author:
  Rod Johnson, Juergen Hoeller
See Also:
  `InstrumentationLoadTimeWeaver`

### Constructor Summary

Constructors
Constructor and Description
`InstrumentationSavingAgent()`

### Method Summary

Methods
`static Instrumentation` `getInstrumentation()` Return the `Instrumentation` interface exposed by the JVM.
`static void` `premain(String agentArgs, Instrumentation inst)` Save the `Instrumentation` interface exposed by the JVM.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### InstrumentationSavingAgent

    public InstrumentationSavingAgent()

### Method Detail

#### premain

    public static void premain(String agentArgs,
               Instrumentation inst)

Save the `Instrumentation` interface exposed by the JVM.

#### getInstrumentation

    public static Instrumentation getInstrumentation()

Return the `Instrumentation` interface exposed by the JVM.

Note that this agent class will typically not be available in the classpath unless the agent is actually specified on JVM startup. If you intend to do conditional checking with respect to agent availability, consider using `InstrumentationLoadTimeWeaver.getInstrumentation()` instead - which will work without the agent class in the classpath as well.

Returns:
  the `Instrumentation` instance previously saved when the `premain(java.lang.String, java.lang.instrument.Instrumentation)` method was called by the JVM; will be `null` if this class was not used as Java agent when this JVM was started.
See Also:
  `InstrumentationLoadTimeWeaver.getInstrumentation()`