Top Description Inners Fields Constructors Methods
org.aspectj.weaver.tools

public Class WeavingAdaptor

extends Object
implements IMessageContext
Class Inheritance
All Implemented Interfaces
org.aspectj.bridge.IMessageContext
Known Direct Subclasses
org.aspectj.weaver.loadtime.ClassLoaderWeavingAdaptor
Imports
java.io.File, .FileOutputStream, .IOException, .PrintWriter, java.net.URL, .URLClassLoader, java.security.ProtectionDomain, java.util.ArrayList, .Arrays, .HashMap, .HashSet, .Iterator, .LinkedList, .List, .Map, .Properties, .Set, .StringTokenizer, org.aspectj.bridge.AbortException, .IMessage, .IMessage.Kind, .IMessageContext, .IMessageHandler, .IMessageHolder, .Message, .MessageHandler, .MessageUtil, .MessageWriter, .Version, .WeaveMessage, org.aspectj.util.FileUtil, .LangUtil, org.aspectj.weaver.IClassFileProvider, .IUnwovenClassFile, .IWeaveRequestor, .World, org.aspectj.weaver.bcel.BcelObjectType, .BcelWeaver, .BcelWorld, .UnwovenClassFile, org.aspectj.weaver.tools.cache.CachedClassEntry, .CachedClassReference, .SimpleCache, .SimpleCacheFactory, .WeavedClassCache

This adaptor allows the AspectJ compiler to be embedded in an existing system to facilitate load-time weaving. It provides an interface for a weaving class loader to provide a classpath to be woven by a set of aspects. A callback is supplied to allow a class loader to define classes generated by the compiler during the weaving process.

A weaving class loader should create a WeavingAdaptor before any classes are defined, typically during construction. The set of aspects passed to the adaptor is fixed for the lifetime of the adaptor although the classpath can be augmented. A system property can be set to allow verbose weaving messages to be written to the console.

Nested and Inner Type Summary

Modifier and TypeClass and Description
protected class
WeavingAdaptor.WeavingAdaptorMessageHolder

Processes messages arising from weaver operations.

protected class
private class

Field Summary

Modifier and TypeField and Description
private boolean
protected ProtectionDomain
private static final String
protected BcelWorld
protected WeavedClassCache
public BcelObjectType
private boolean
protected Map<String, IUnwovenClassFile>
protected GeneratedClassHandler
private boolean
private static final int
private IMessageHandler
private WeavingAdaptor.WeavingAdaptorMessageHolder
private static final String
public static final String
private static Trace
public static final String
protected boolean
private static final int
private static final int
protected BcelWeaver
private ThreadLocal<Boolean>
public static final String
WEAVING_ADAPTOR_VERBOSE

System property used to turn on verbose weaving messages

private int

Constructor Summary

AccessConstructor and Description
protected
public
WeavingAdaptor(WeavingClassLoader
instance of ClassLoader
loader
)

Construct a WeavingAdaptor with a reference to a weaving class loader.

public
WeavingAdaptor(GeneratedClassHandler
GeneratedClassHandler
handler
,
URL[]
the URLs from which to resolve classes
classURLs
,
URL[]
the aspects used to weave classes defined by this class loader
aspectURLs
)

Construct a WeavingAdaptor with a reference to a GeneratedClassHandler, a full search path for resolving classes and a complete set of aspects.

Method Summary

Modifier and TypeMethod and Description
protected boolean
accept(String name, byte[] bytes)

private void
addAspectLibrary(String aspectLibraryName)

public void
addURL(URL
to be appended to search path
url
)

Appends URL to path used by the WeavingAdptor to resolve classes

private boolean

Returns:

true if even valid to weave: either with an accept check or to munge it for @AspectJ aspectof support
couldWeave
(String name, byte[] bytes)

protected void
protected boolean
debug(String message)

protected void
protected void
dump(String name, byte[] b, boolean
whether we are dumping before weaving
before
)

Dump the given bytcode in _dump/...

protected void
protected void
ensureDelegateInitialized(String name, byte[] bytes)

protected boolean
error(String message)

protected boolean
error(String message, Throwable th)

private byte[]

Returns:

byte[] the woven bytes for the class
getAtAspectJAspectBytes
(String
the name of the class being woven
name
,
byte[]
the bytes that define the class
bytes
)

Weave a set of bytes defining a class for only what is needed to turn @AspectJ aspect in a usefull form ie with aspectOf method - see #113587

public String
protected String

Returns:

the directory in which to dump - default is _ajdump but it
getDumpDir
()

private List<String>
protected List<String>
protected IMessageHandler
public IMessageHolder
private static boolean
private byte[]

Returns:

byte[] the woven bytes for the class
getWovenBytes
(String
the name of the class being woven
name
,
byte[]
the bytes that define the class
bytes
)

Weave a set of bytes defining a class.

protected boolean
info(String message)

private void
init(ClassLoader
ClassLoader used by this adapter; which can be null
loader
,
List<String>
classpath of this adapter
classPath
,
List<String>
list of aspect paths
aspectPath
)

Initialize the WeavingAdapter

protected void
initializeCache(ClassLoader
classloader for this adapter, may be null
loader
,
List<String>
List of strings representing aspects managed by the adapter; these could be urls or classnames
aspects
,
GeneratedClassHandler
current class handler
existingClassHandler
,
IMessageHandler
current message handler
myMessageHandler
)

If the cache is enabled, initialize it and swap out the existing classhandler for the caching one -

protected boolean
private static List<String>
private void
public void
protected void
protected boolean
shouldDump(String name, boolean before)

private boolean

Returns:

true if @Aspect
shouldWeaveAnnotationStyleAspect
(String name, byte[]
bytecode (from classloader), allow to NOT lookup stuff on disk again during resolve
bytes
)

We allow @AJ aspect weaving so that we can add aspectOf() as part of the weaving (and not part of the source compilation)

private boolean
protected boolean
warn(String message)

protected boolean
warn(String message, Throwable th)

public byte[]

Returns:

the woven bytes
weaveClass
(String
the name of the class
name
,
byte[]
the class bytes
bytes
)

Weave a class using aspects previously supplied to the adaptor.

public byte[]

Returns:

the woven bytes
weaveClass
(String
the name of the class
name
,
byte[]
the class bytes
bytes
,
boolean
if true then this class *must* get woven (used for concrete aspects generated from XML)
mustWeave
)

Weave a class using aspects previously supplied to the adaptor.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

abortOnErrorback to summary
private boolean abortOnError
activeProtectionDomainback to summary
protected ProtectionDomain activeProtectionDomain
ASPECTJ_BASE_PACKAGEback to summary
private static final String ASPECTJ_BASE_PACKAGE
bcelWorldback to summary
protected BcelWorld bcelWorld
cacheback to summary
protected WeavedClassCache cache
delegateForCurrentClassback to summary
public BcelObjectType delegateForCurrentClass
enabledback to summary
private boolean enabled
generatedClassesback to summary
protected Map<String, IUnwovenClassFile> generatedClasses
generatedClassHandlerback to summary
protected GeneratedClassHandler generatedClassHandler
haveWarnedOnJavaxback to summary
private boolean haveWarnedOnJavax
INITIALIZEDback to summary
private static final int INITIALIZED
messageHandlerback to summary
private IMessageHandler messageHandler
messageHolderback to summary
private WeavingAdaptor.WeavingAdaptorMessageHolder messageHolder
PACKAGE_INITIAL_CHARSback to summary
private static final String PACKAGE_INITIAL_CHARS
SHOW_WEAVE_INFO_PROPERTYback to summary
public static final String SHOW_WEAVE_INFO_PROPERTY
traceback to summary
private static Trace trace
TRACE_MESSAGES_PROPERTYback to summary
public static final String TRACE_MESSAGES_PROPERTY
verboseback to summary
protected boolean verbose
WEAVE_JAVA_PACKAGEback to summary
private static final int WEAVE_JAVA_PACKAGE
WEAVE_JAVAX_PACKAGEback to summary
private static final int WEAVE_JAVAX_PACKAGE
weaverback to summary
protected BcelWeaver weaver
weaverRunningback to summary
private ThreadLocal<Boolean> weaverRunning
WEAVING_ADAPTOR_VERBOSEback to summary
public static final String WEAVING_ADAPTOR_VERBOSE

System property used to turn on verbose weaving messages

weavingSpecialTypesback to summary
private int weavingSpecialTypes

Constructor Detail

WeavingAdaptorback to summary
protected WeavingAdaptor()
WeavingAdaptorback to summary
public WeavingAdaptor(WeavingClassLoader loader)

Construct a WeavingAdaptor with a reference to a weaving class loader. The adaptor will automatically search the class loader hierarchy to resolve classes. The adaptor will also search the hierarchy for WeavingClassLoader instances to determine the set of aspects to be used for weaving.

Parameters
loader:WeavingClassLoader

instance of ClassLoader

WeavingAdaptorback to summary
public WeavingAdaptor(GeneratedClassHandler handler, URL[] classURLs, URL[] aspectURLs)

Construct a WeavingAdaptor with a reference to a GeneratedClassHandler, a full search path for resolving classes and a complete set of aspects. The search path must include classes loaded by the class loader constructing the WeavingAdaptor and all its parents in the hierarchy.

Parameters
handler:GeneratedClassHandler

GeneratedClassHandler

classURLs:URL[]

the URLs from which to resolve classes

aspectURLs:URL[]

the aspects used to weave classes defined by this class loader

Method Detail

acceptback to summary
protected boolean accept(String name, byte[] bytes)
addAspectLibraryback to summary
private void addAspectLibrary(String aspectLibraryName)
addURLback to summary
public void addURL(URL url)

Appends URL to path used by the WeavingAdptor to resolve classes

Parameters
url:URL

to be appended to search path

couldWeaveback to summary
private boolean couldWeave(String name, byte[] bytes)
Returns:boolean

true if even valid to weave: either with an accept check or to munge it for @AspectJ aspectof support

createMessageHandlerback to summary
protected void createMessageHandler()
debugback to summary
protected boolean debug(String message)
disableback to summary
protected void disable()
dumpback to summary
protected void dump(String name, byte[] b, boolean before)

Dump the given bytcode in _dump/... (dev mode)

Parameters
before:boolean

whether we are dumping before weaving

enableback to summary
protected void enable()
ensureDelegateInitializedback to summary
protected void ensureDelegateInitialized(String name, byte[] bytes)
errorback to summary
protected boolean error(String message)
errorback to summary
protected boolean error(String message, Throwable th)
getAtAspectJAspectBytesback to summary
private byte[] getAtAspectJAspectBytes(String name, byte[] bytes) throws IOException

Weave a set of bytes defining a class for only what is needed to turn @AspectJ aspect in a usefull form ie with aspectOf method - see #113587

Parameters
name:String

the name of the class being woven

bytes:byte[]

the bytes that define the class

Returns:byte[]

byte[] the woven bytes for the class

getContextIdback to summary
public String getContextId()

Implements org.aspectj.bridge.IMessageContext.getContextId.

getDumpDirback to summary
protected String getDumpDir()
Returns:String

the directory in which to dump - default is _ajdump but it

getFullAspectPathback to summary
private List<String> getFullAspectPath(ClassLoader loader)
getFullClassPathback to summary
protected List<String> getFullClassPath(ClassLoader loader)
getMessageHandlerback to summary
protected IMessageHandler getMessageHandler()
getMessageHolderback to summary
public IMessageHolder getMessageHolder()
getVerboseback to summary
private static boolean getVerbose()
getWovenBytesback to summary
private byte[] getWovenBytes(String name, byte[] bytes) throws IOException

Weave a set of bytes defining a class.

Parameters
name:String

the name of the class being woven

bytes:byte[]

the bytes that define the class

Returns:byte[]

byte[] the woven bytes for the class

infoback to summary
protected boolean info(String message)
initback to summary
private void init(ClassLoader loader, List<String> classPath, List<String> aspectPath)

Initialize the WeavingAdapter

Parameters
loader:ClassLoader

ClassLoader used by this adapter; which can be null

classPath:List<String>

classpath of this adapter

aspectPath:List<String>

list of aspect paths

initializeCacheback to summary
protected void initializeCache(ClassLoader loader, List<String> aspects, GeneratedClassHandler existingClassHandler, IMessageHandler myMessageHandler)

If the cache is enabled, initialize it and swap out the existing classhandler for the caching one -

Parameters
loader:ClassLoader

classloader for this adapter, may be null

aspects:List<String>

List of strings representing aspects managed by the adapter; these could be urls or classnames

existingClassHandler:GeneratedClassHandler

current class handler

myMessageHandler:IMessageHandler

current message handler

isEnabledback to summary
protected boolean isEnabled()
makeClasspathback to summary
private static List<String> makeClasspath(String cp)
registerAspectLibrariesback to summary
private void registerAspectLibraries(List<String> aspectPath)
setActiveProtectionDomainback to summary
public void setActiveProtectionDomain(ProtectionDomain protectionDomain)
setMessageHandlerback to summary
protected void setMessageHandler(IMessageHandler mh)
shouldDumpback to summary
protected boolean shouldDump(String name, boolean before)
shouldWeaveAnnotationStyleAspectback to summary
private boolean shouldWeaveAnnotationStyleAspect(String name, byte[] bytes)

We allow @AJ aspect weaving so that we can add aspectOf() as part of the weaving (and not part of the source compilation)

Parameters
bytes:byte[]

bytecode (from classloader), allow to NOT lookup stuff on disk again during resolve

Returns:boolean

true if @Aspect

shouldWeaveNameback to summary
private boolean shouldWeaveName(String name)
warnback to summary
protected boolean warn(String message)
warnback to summary
protected boolean warn(String message, Throwable th)
weaveClassback to summary
public byte[] weaveClass(String name, byte[] bytes) throws IOException

Weave a class using aspects previously supplied to the adaptor.

Parameters
name:String

the name of the class

bytes:byte[]

the class bytes

Returns:byte[]

the woven bytes

Exceptions
IOException:
weave failed
weaveClassback to summary
public byte[] weaveClass(String name, byte[] bytes, boolean mustWeave) throws IOException

Weave a class using aspects previously supplied to the adaptor.

Parameters
name:String

the name of the class

bytes:byte[]

the class bytes

mustWeave:boolean

if true then this class *must* get woven (used for concrete aspects generated from XML)

Returns:byte[]

the woven bytes

Exceptions
IOException:
weave failed
org.aspectj.weaver.tools back to summary

protected Class WeavingAdaptor.WeavingAdaptorMessageHolder

extends MessageHandler
Class Inheritance

Processes messages arising from weaver operations. Tell weaver to abort on any message more severe than warning.

Field Summary

Modifier and TypeField and Description
private IMessageHandler
private List<IMessage>
protected boolean
Inherited from org.aspectj.bridge.MessageHandler:
handleMessageResultignoringinterceptormessages

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public void
dontIgnore(IMessage.Kind kind)

Overrides org.aspectj.bridge.MessageHandler.dontIgnore.

Implements org.aspectj.bridge.IMessageHandler.dontIgnore.

Remove a message kind from the list of those ignored from now on.
public void
public List<IMessage>
public boolean
handleMessage(IMessage
the IMessage to handle - never null
message
)

Overrides org.aspectj.bridge.MessageHandler.handleMessage.

Implements org.aspectj.bridge.IMessageHandler.handleMessage.

This implementation accumulates message.
public void
ignore(IMessage.Kind kind)

Overrides org.aspectj.bridge.MessageHandler.ignore.

Implements org.aspectj.bridge.IMessageHandler.ignore.

Set a message kind to be ignored from now on
public boolean
isIgnoring(IMessage.Kind kind)

Overrides org.aspectj.bridge.MessageHandler.isIgnoring.

Implements org.aspectj.bridge.IMessageHandler.isIgnoring.

Signal clients whether this will ignore messages of a given type.
protected String
render(IMessage message)

public void
setDelegate(IMessageHandler messageHandler)

private void
Inherited from org.aspectj.bridge.MessageHandler:
clearMessagesgetErrorsgetMessagesgetWarningshasAnyMessageinitinitnumMessagessetInterceptortoString

Field Detail

delegateback to summary
private IMessageHandler delegate
savedMessagesback to summary
private List<IMessage> savedMessages
traceMessagesback to summary
protected boolean traceMessages

Constructor Detail

WeavingAdaptorMessageHolderback to summary
public WeavingAdaptorMessageHolder(PrintWriter writer)

Method Detail

dontIgnoreback to summary
public void dontIgnore(IMessage.Kind kind)

Overrides org.aspectj.bridge.MessageHandler.dontIgnore.

Implements org.aspectj.bridge.IMessageHandler.dontIgnore.

Doc from org.aspectj.bridge.MessageHandler.dontIgnore.

Remove a message kind from the list of those ignored from now on.

Annotations
@Override
flushMessagesback to summary
public void flushMessages()
getUnmodifiableListViewback to summary
public List<IMessage> getUnmodifiableListView()

Overrides org.aspectj.bridge.MessageHandler.getUnmodifiableListView.

Implements org.aspectj.bridge.IMessageHolder.getUnmodifiableListView.

Returns:List<IMessage>

Doc from org.aspectj.bridge.IMessageHolder.getUnmodifiableListView.

unmodifiable List view of underlying collection of IMessage

Annotations
@Override
handleMessageback to summary
public boolean handleMessage(IMessage message) throws AbortException

Overrides org.aspectj.bridge.MessageHandler.handleMessage.

Implements org.aspectj.bridge.IMessageHandler.handleMessage.

Doc from org.aspectj.bridge.MessageHandler.handleMessage.

This implementation accumulates message. If an interceptor is installed and returns true (message handled), then processing halts and the message is not accumulated.

Parameters
message:IMessage

Doc from org.aspectj.bridge.IMessageHandler.handleMessage.

the IMessage to handle - never null

Returns:boolean

true on interception or the constructor value otherwise

Annotations
@Override
Exceptions
AbortException:

Doc from org.aspectj.bridge.IMessageHandler.handleMessage.

depending on handler logic.

ignoreback to summary
public void ignore(IMessage.Kind kind)

Overrides org.aspectj.bridge.MessageHandler.ignore.

Implements org.aspectj.bridge.IMessageHandler.ignore.

Doc from org.aspectj.bridge.MessageHandler.ignore.

Set a message kind to be ignored from now on

Annotations
@Override
isIgnoringback to summary
public boolean isIgnoring(IMessage.Kind kind)

Overrides org.aspectj.bridge.MessageHandler.isIgnoring.

Implements org.aspectj.bridge.IMessageHandler.isIgnoring.

Doc from org.aspectj.bridge.IMessageHandler.isIgnoring.

Signal clients whether this will ignore messages of a given type. Clients may use this to avoid constructing or sending certain messages.

Returns:boolean

Doc from org.aspectj.bridge.MessageHandler.isIgnoring.

true if this kind has been flagged to be ignored.

Annotations
@Override
renderback to summary
protected String render(IMessage message)
setDelegateback to summary
public void setDelegate(IMessageHandler messageHandler)
traceMessageback to summary
private void traceMessage(IMessage message)
org.aspectj.weaver.tools back to summary

protected Class WeavingAdaptor.WeavingAdaptorMessageWriter

extends MessageWriter
Class Inheritance

Field Summary

Modifier and TypeField and Description
private final IMessage.Kind
private final Set<IMessage.Kind>
Inherited from org.aspectj.bridge.MessageWriter:
abortOnFailurewriter

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public void
dontIgnore(IMessage.Kind kind)

Overrides org.aspectj.bridge.MessageWriter.dontIgnore.

Implements org.aspectj.bridge.IMessageHandler.dontIgnore.

Remove a message kind from the list of those ignored from now on.
public boolean
handleMessage(IMessage
the IMessage to handle - never null
message
)

Overrides org.aspectj.bridge.MessageWriter.handleMessage.

Implements org.aspectj.bridge.IMessageHandler.handleMessage.

Handle message by printing and (if abortOnFailure) throwing an AbortException if the messages is a failure or an abort (but not for errors).
public void
ignore(IMessage.Kind kind)

Overrides org.aspectj.bridge.MessageWriter.ignore.

Implements org.aspectj.bridge.IMessageHandler.ignore.

Set a message kind to be ignored from now on
public boolean
isIgnoring(IMessage.Kind kind)

Overrides org.aspectj.bridge.MessageWriter.isIgnoring.

Implements org.aspectj.bridge.IMessageHandler.isIgnoring.

Signal clients whether this will ignore messages of a given type.
protected String

Field Detail

failKindback to summary
private final IMessage.Kind failKind
ignoringback to summary
private final Set<IMessage.Kind> ignoring

Constructor Detail

WeavingAdaptorMessageWriterback to summary
public WeavingAdaptorMessageWriter(PrintWriter writer)

Method Detail

dontIgnoreback to summary
public void dontIgnore(IMessage.Kind kind)

Overrides org.aspectj.bridge.MessageWriter.dontIgnore.

Implements org.aspectj.bridge.IMessageHandler.dontIgnore.

Remove a message kind from the list of those ignored from now on.

Annotations
@Override
handleMessageback to summary
public boolean handleMessage(IMessage message) throws AbortException

Overrides org.aspectj.bridge.MessageWriter.handleMessage.

Implements org.aspectj.bridge.IMessageHandler.handleMessage.

Doc from org.aspectj.bridge.MessageWriter.handleMessage.

Handle message by printing and (if abortOnFailure) throwing an AbortException if the messages is a failure or an abort (but not for errors).

Parameters
message:IMessage

Doc from org.aspectj.bridge.IMessageHandler.handleMessage.

the IMessage to handle - never null

Returns:boolean

Doc from org.aspectj.bridge.IMessageHandler.handleMessage.

true if this message was handled by this handler

Annotations
@Override
Exceptions
AbortException:

Doc from org.aspectj.bridge.IMessageHandler.handleMessage.

depending on handler logic.

ignoreback to summary
public void ignore(IMessage.Kind kind)

Overrides org.aspectj.bridge.MessageWriter.ignore.

Implements org.aspectj.bridge.IMessageHandler.ignore.

Set a message kind to be ignored from now on

Annotations
@Override
isIgnoringback to summary
public boolean isIgnoring(IMessage.Kind kind)

Overrides org.aspectj.bridge.MessageWriter.isIgnoring.

Implements org.aspectj.bridge.IMessageHandler.isIgnoring.

Doc from org.aspectj.bridge.IMessageHandler.isIgnoring.

Signal clients whether this will ignore messages of a given type. Clients may use this to avoid constructing or sending certain messages.

Returns:boolean

true if this handler is ignoring all messages of this type

Annotations
@Override
renderback to summary
protected String render(IMessage message)

Overrides org.aspectj.bridge.MessageWriter.render.

Returns:String

Doc from org.aspectj.bridge.MessageWriter.render.

null to not print, or message rendering (including newlines)

Annotations
@Override
org.aspectj.weaver.tools back to summary

private Class WeavingAdaptor.WeavingClassFileProvider

extends Object
implements IClassFileProvider
Class Inheritance
  • java.lang.Object
  • org.aspectj.weaver.tools.WeavingAdaptor.WeavingClassFileProvider
All Implemented Interfaces
org.aspectj.weaver.IClassFileProvider

Field Summary

Modifier and TypeField and Description
private boolean
private final UnwovenClassFile
private final List<UnwovenClassFile>
private IUnwovenClassFile

Constructor Summary

AccessConstructor and Description
public
WeavingClassFileProvider(String name, byte[] bytes)

Method Summary

Modifier and TypeMethod and Description
public byte[]
public Iterator<UnwovenClassFile>
getClassFileIterator()

Implements org.aspectj.weaver.IClassFileProvider.getClassFileIterator.

Answer an iterator that can be used to iterate over a set of UnwovenClassFiles to be woven.
public IWeaveRequestor
getRequestor()

Implements org.aspectj.weaver.IClassFileProvider.getRequestor.

The client to which the woven results should be returned.
public boolean
public void
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

isApplyAtAspectJMungersOnlyback to summary
private boolean isApplyAtAspectJMungersOnly
unwovenClassback to summary
private final UnwovenClassFile unwovenClass
unwovenClassesback to summary
private final List<UnwovenClassFile> unwovenClasses
wovenClassback to summary
private IUnwovenClassFile wovenClass

Constructor Detail

WeavingClassFileProviderback to summary
public WeavingClassFileProvider(String name, byte[] bytes)

Method Detail

getBytesback to summary
public byte[] getBytes()
getClassFileIteratorback to summary
public Iterator<UnwovenClassFile> getClassFileIterator()

Implements org.aspectj.weaver.IClassFileProvider.getClassFileIterator.

Doc from org.aspectj.weaver.IClassFileProvider.getClassFileIterator.

Answer an iterator that can be used to iterate over a set of UnwovenClassFiles to be woven. During a weave, this method may be called multiple times.

Returns:Iterator<UnwovenClassFile>

iterator over UnwovenClassFiles.

getRequestorback to summary
public IWeaveRequestor getRequestor()

Implements org.aspectj.weaver.IClassFileProvider.getRequestor.

Doc from org.aspectj.weaver.IClassFileProvider.getRequestor.

The client to which the woven results should be returned.

isApplyAtAspectJMungersOnlyback to summary
public boolean isApplyAtAspectJMungersOnly()

Implements org.aspectj.weaver.IClassFileProvider.isApplyAtAspectJMungersOnly.

Returns:boolean

Doc from org.aspectj.weaver.IClassFileProvider.isApplyAtAspectJMungersOnly.

true if weaver should only do some internal munging as the one needed for @AspectJ aspectOf methods creation

setApplyAtAspectJMungersOnlyback to summary
public void setApplyAtAspectJMungersOnly()