[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [equinox-dev] Integrating AspectJ Load-Time Weaving into OSGi/Eclipse


LTW can be used weave aspects that are declared in packages already
imported or required by a bundle: one of the goals of this approach is to
make the use of aspects as similar to classes as possible. However the
side-affect of weaving is a new dependency on the (small) AspectJ runtime
which must be added to the "class space": using Require-Bundle semantics
allows aspect bundles to transparently re-export the necessary packages.
Furthermore capabilities in completely new packages can also be introduced.

The Supplement-Bundle/Importer/Exporter is both a configuration mechanism
and a means for the resolver to extend the set of dependencies for a
bundle. In the same way a bundle provider selects classes through
Import-Package or Require-Bundle header an aspect bundle provider selects
the target bundles with a Supplement header. WRT it being hard we have a
working version ;-).

Could you help me here? I think I am a bit confused about the point where the possibly affected target classes/bundles are defined... So basically the question is: What is the relation between pointcuts, the weaver options in the aop.xml file and the supplement definitions?