Community
Participate
Working Groups
We had a prototype “join point probe” tool in pre-AJDT IDE support, and it would let you put in a pointcut, then show you the matches. But we never quite worked out the UI (e.g. matches showed in new view, you had to fully qualify type names). Julie Waterhouse and I spent a bit more time discussion how this could work for AJDT, and thought a good way of doing it would be to allow you to create a .ajpage (similar to a .jpage file), then select any pointcut, right-click, and hit “show matches” to temporarily show everything the probe matched in the Cross References view (the content would stick if the view were not in “link with editor mode”). Some user input is on this thread: http://dev.eclipse.org/mhonarc/lists/aspectj-users/msg04582.html
"Join point probe" is probably too wierd and unintuitive a name, and this tool would be about showing pointcut matches, so I updated the description accordingly.
The following is a general requirement and not really technical. This could be a simple console used to type my pointcut and the matches would show in another console or be printed to a text file. The idea is to make the adoption of AspectJ as simple as possible. This will help us use AspectJ with complex features like generics because I found that the biggest stumbling block is the new syntax. Moreover prototypes are very useful. I think that printing a set of matched joinpoints immediately would be more helpful than the visualizer.
Thanks for hte use case Mohan. I also see this as a good learning tool, but note that it still requires you to know the most sophisticated parts of the syntax: pointcuts. It is feasible to imagine another tool that lets you make a structured selection (e.g. several methods and fields) and infers the pointcut for you. I prototype this way back but it's pretty much a research problem.
In order for an idea like this to really work, there is a requirement for quick matching of pointcuts. Matching and weaving would need to be split in the weaver. See Bug 242589
No longer slated for the next release.