## org.aspectj.weaver.loadtime
Class Aj

    java.lang.Object
      org.aspectj.weaver.loadtime.Aj

All Implemented Interfaces:
  ClassPreProcessor

    public class Aj

extends java.lang.Object
implements ClassPreProcessor

Adapter between the generic class pre processor interface and the AspectJ weaver Load time weaving consistency relies on Bcel.setRepository

Author:
  Alexandre Vasseur

Constructor Summary
`Aj()`
`Aj(IWeavingContext context)`

Method Summary
`void` `flushGeneratedClasses(java.lang.ClassLoader loader)`
`boolean` `generatedClassesExist(java.lang.ClassLoader loader)` Check to see if any classes have been generated for a particular classes loader.
`java.lang.String` `getNamespace(java.lang.ClassLoader loader)` Returns a namespace based on the contest of the aspects available
`void` `initialize()` Initialization
`byte[]` `preProcess(java.lang.String className, byte[] bytes, java.lang.ClassLoader loader)` Weave

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### Aj

    public Aj()

### Aj

    public Aj(IWeavingContext context)

Method Detail

### initialize

    public void initialize()

  Initialization

  Specified by:
    `initialize` in interface `ClassPreProcessor`

### preProcess

    public byte[] preProcess(java.lang.String className,
                             byte[] bytes,
                             java.lang.ClassLoader loader)

  Weave

  Specified by:
    `preProcess` in interface `ClassPreProcessor`
  Parameters:
    `className` -
    `bytes` -
    `loader` -
  Returns:
    weaved bytes

### getNamespace

    public java.lang.String getNamespace(java.lang.ClassLoader loader)

  Returns a namespace based on the contest of the aspects available

### generatedClassesExist

    public boolean generatedClassesExist(java.lang.ClassLoader loader)

  Check to see if any classes have been generated for a particular classes loader. Calls ClassLoaderWeavingAdaptor.generatedClassesExist()

  Parameters:
    `loader` - the class cloder
  Returns:
    true if classes have been generated.

### flushGeneratedClasses

    public void flushGeneratedClasses(java.lang.ClassLoader loader)