OC4JLoadTimeWeaver (Spring Framework 3.2.1.RELEASE API)
Date: 2013-01-24

org.springframework.instrument.classloading.oc4j

## Class OC4JLoadTimeWeaver

- java.lang.Object
- - org.springframework.instrument.classloading.oc4j.OC4JLoadTimeWeaver

- All Implemented Interfaces:
    LoadTimeWeaver

  Deprecated.
  as of Spring 3.2, in favor of `WebLogicLoadTimeWeaver` since Oracle end-of-lifed OC4J in favor of WebLogic

      @Deprecated
      public class OC4JLoadTimeWeaver
      extends Object
      implements LoadTimeWeaver

  `LoadTimeWeaver` implementation for OC4J's instrumentable ClassLoader. Requires Oracle OC4J version 10.1.3.1 or higher.

  Many thanks to Mike Keith for his assistance.

  Since:
    2.0
  Author:
    Costin Leau, Juergen Hoeller

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `OC4JLoadTimeWeaver()` Deprecated. Creates a new instance of thie `OC4JLoadTimeWeaver` class using the default `class loader`.
    `OC4JLoadTimeWeaver(ClassLoader classLoader)` Deprecated. Creates a new instance of the `OC4JLoadTimeWeaver` class using the supplied `ClassLoader`.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addTransformer(ClassFileTransformer transformer)` Deprecated. Add a `ClassFileTransformer` to be applied by this `LoadTimeWeaver`.
    `ClassLoader` | `getInstrumentableClassLoader()` Deprecated. Return a `ClassLoader` that supports instrumentation through AspectJ-style load-time weaving based on user-defined `ClassFileTransformers`.
    `ClassLoader` | `getThrowawayClassLoader()` Deprecated. Return a throwaway `ClassLoader`, enabling classes to be loaded and inspected without affecting the parent `ClassLoader`.

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

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

- - ### Constructor Detail

    - #### OC4JLoadTimeWeaver

          public OC4JLoadTimeWeaver()

      Deprecated.
      Creates a new instance of thie `OC4JLoadTimeWeaver` class using the default `class loader`.
      See Also:
        `ClassUtils.getDefaultClassLoader()`

    - #### OC4JLoadTimeWeaver

          public OC4JLoadTimeWeaver(ClassLoader classLoader)

      Deprecated.
      Creates a new instance of the `OC4JLoadTimeWeaver` class using the supplied `ClassLoader`.
      Parameters:
        `classLoader` - the `ClassLoader` to delegate to for weaving

  - ### Method Detail

    - #### addTransformer

          public void addTransformer(ClassFileTransformer transformer)

      Deprecated.
      Description copied from interface: `LoadTimeWeaver`
      Add a `ClassFileTransformer` to be applied by this `LoadTimeWeaver`.
      Specified by:
        `addTransformer` in interface `LoadTimeWeaver`
      Parameters:
        `transformer` - the `ClassFileTransformer` to add

    - #### getInstrumentableClassLoader

          public ClassLoader getInstrumentableClassLoader()

      Deprecated.
      Description copied from interface: `LoadTimeWeaver`
      Return a `ClassLoader` that supports instrumentation through AspectJ-style load-time weaving based on user-defined `ClassFileTransformers`.

      May be the current `ClassLoader`, or a `ClassLoader` created by this `LoadTimeWeaver` instance.

      Specified by:
        `getInstrumentableClassLoader` in interface `LoadTimeWeaver`
      Returns:
        the `ClassLoader` which will expose instrumented classes according to the registered transformers

    - #### getThrowawayClassLoader

          public ClassLoader getThrowawayClassLoader()

      Deprecated.
      Description copied from interface: `LoadTimeWeaver`
      Return a throwaway `ClassLoader`, enabling classes to be loaded and inspected without affecting the parent `ClassLoader`.

      Should not return the same instance of the `ClassLoader` returned from an invocation of `LoadTimeWeaver.getInstrumentableClassLoader()`.

      Specified by:
        `getThrowawayClassLoader` in interface `LoadTimeWeaver`
      Returns:
        a temporary throwaway `ClassLoader`; should return a new instance for each call, with no existing state