Bug 242589 - split matching and weaving
Summary: split matching and weaving
Status: RESOLVED FIXED
Alias: None
Product: AspectJ
Classification: Tools
Component: Compiler (show other bugs)
Version: DEVELOPMENT   Edit
Hardware: PC Mac OS X - Carbon (unsup.)
: P3 enhancement (vote)
Target Milestone: 1.6.3   Edit
Assignee: aspectj inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 69896 109759 265029
  Show dependency tree
 
Reported: 2008-07-30 12:07 EDT by Andrew Clement CLA
Modified: 2009-02-16 11:30 EST (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Andrew Clement CLA 2008-07-30 12:07:08 EDT
The proposal is to split the matching and weaving process.  Although the pointcut matching is already usable as a standalone entity, it cannot currently be used without also having the weaving code around (and so the entirety of aspectjweaver.jar is required).  Also, when the matching is used standalone it still attempts to access the information necessary to determine a match through reflection.  It would be better if that were pluggable (perhaps an abstraction over the required information) and then the user could embed it wherever they wish and provide that information however suits their environment.  Two use cases need supporting:

- matcher code can be used without the weaver code (without org.aspectj.weaver.bcel.*).  So that a user may have a matcher without 'worrying' that bytecode may get altered.
- matcher code can be backed by an Eclipse JDT model of resources rather than reflection

This second case will enable much neater matching in Eclipse and even sets up the possibility of showing matches *as you type*
Comment 1 Andrew Clement CLA 2008-12-16 15:51:33 EST
first pass is complete in AspectJ 1.6.3