Home

Documentation

* Programming Guide * CJDT User Guide * Publications * Tutorial * Language Spec.

Examples

Downloads

Source Code

FAQ

Community Info

About Us

 

 
Search:
 
ST Logo
TUD Logo
<< Bindings | Contents | Aspect Deployment >>

Pointcuts and Advice (cc.gen)

(cc.gen.1) Pointcuts and advice are declared as members of Caesar classes.

Def: Class containing pointcuts and advice is called aspect class. The instances of such class are called aspect objects.

(cc.gen.2) Pointcuts and advice are defined in the same way as in AspectJ with following exceptions
  1. if() pointcut is not allowed.
  2. abstract pointcuts are not allowed.
  3. A piece of advice can refer to the pointcuts in the declaring class or any of its superclasses.

(cc.gen.3) A pointcut can refer to other pointcuts in the declaring class or any of its superclasses.

(cc.gen.4) Advice is always running in the context of an instance of the declaring class (or its subclass). It can access this pointer as well as its members the same way as all other methods of the declaring class

(cc.gen.5) Pointcuts and advice are inherited by all subclasses of a class.

(cc.gen.6) Pointcuts and advice cannot be overridden.

(cc.gen.7) The advice call order of instances of different classes can be controlled using declare precedence declaration in the same way as in AspectJ. The advice call order of the instances of the same class are determined by aspect deployment.

<< Bindings | Contents | Aspect Deployment >>