User-Defined Join Point Selectors — An Extension Mechanism for Pointcut Languages

By: Cristiano Breuel, Francisco Reverbel


One of the main issues in contemporary AOP languages and frameworks is the expressiveness of the pointcut language. This paper proposes an extension mechanism for enriching pointcut languages with constructs that play the role of 'new primitive pointcuts' and allow the creation of pointcuts with greater semantic value. Join point selectors are a generalization of the primitive pointcuts of current pointcut languages. Existing languages, however, do not allow users to create new join point selectors. We present a simple architecture for supporting user-defined join-point selectors as an extension mechanism implemented atop an existing AOP framework. We show examples of user-defined selectors that enhance the quality of pointcuts and make aspect development easier. Moreover, we show that our extension mechanism supports framework-specific selectors, which let aspects cross the boundary of a given framework while still respecting the modularity of that framework.

Cite as:

Cristiano Breuel, Francisco Reverbel, “User-Defined Join Point Selectors — An Extension Mechanism for Pointcut Languages”, Journal of Object Technology, Volume 7, no. 9 (December 2008), pp. 5-24, doi:10.5381/jot.2008.7.9.a1.

PDF | HTML | DOI | BiBTeX | Tweet this | Post to CiteULike | Share on LinkedIn