Dan, Unless your code directly calls the method then no you can not match the join point. This is especially true when it comes to code contained within the JDK/JRE libraries. You will have to capture pointcuts at high levels like the event code that you have for your buttons, mouse drags, etc.
Ron DiFrango Architect/Lead Consultant Cap Tech Ventures, Inc _____ From: [EMAIL PROTECTED] on behalf of Fleck, Dan Sent: Tue 6/5/2007 8:31 AM To: [email protected] Subject: RE: [aspectj-users] RE: Capturing EventDispatch Thread There are many calls to that in the Swing library that my code will trigger (although not call directly). My code creates swing events and actions (buttons, mouse drags, etc..). I know that within the code I pressed a button and had it generate a stack trace and at the bottom of the trace is the call (as expected) to: EventQueue.dispatchEvent(AWTEvent); It seems odd that the pointcut wouldn't hit it. Has anyone else tried this? Thanks, Dan -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Eric Bodden Sent: Monday, June 04, 2007 6:32 PM To: [email protected] Subject: Re: [aspectj-users] RE: Capturing EventDispatch Thread Are any calls of that in code that you actually weave into? If such calls only exist within the JRE and you don't weave into it, then it's clear that it cannot match. Eric On 04/06/07, Fleck, Dan <[EMAIL PROTECTED]> wrote: > > > > > Hi, > > > > I am trying to capture and time calls to > java.awt.EventQueue.dispatchEvent(AWTEvent e). > > > > I am using the following code but it doesn't seem to work. Any ideas why I'm > not seeing the events? I added a lot of tries to get it but nothing seemed > to work. I do have other aspects that work fine. > > > > Thanks, > > Dan > > > > Code:--- > ----------------------------------------------------------------------- > > > > @Aspect > > public aspect SluggishDetector { > > > > pointcut dispatchPoint(java.awt.Component p1, java.awt.AWTEvent event): > > target(p1) && args(event) && > > ( > > call(void *.dispatchEvent(java.awt.AWTEvent+)) > || > > call(void *.dispatchEvent(java.awt.AWTEvent+)) > || > > execution(void > *.dispatchEvent(java.awt.AWTEvent+)) || > > execution(void > *.dispatchEvent(java.awt.AWTEvent+)) > > ) ; > > > > before(java.awt.Component p1, java.awt.AWTEvent event): dispatchPoint(p1, > event) { > > System.err.println("ASPECTJ ***** SLUGGISH"); > > } > > } > > ~ > _______________________________________________ > aspectj-users mailing list > [email protected] > https://dev.eclipse.org/mailman/listinfo/aspectj-users > > -- Eric Bodden Sable Research Group McGill University, Montréal, Canada _______________________________________________ aspectj-users mailing list [email protected] https://dev.eclipse.org/mailman/listinfo/aspectj-users _______________________________________________ aspectj-users mailing list [email protected] https://dev.eclipse.org/mailman/listinfo/aspectj-users _______________________________________________ aspectj-users mailing list [email protected] https://dev.eclipse.org/mailman/listinfo/aspectj-users
