Capturing inner calls

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Capturing inner calls

Sina Yazdanmehr
Hello All,

I'm new in AspectJ. Since for a project I need to log all some functions calls, started to learn AspectJ, however, I haven't been able to achieve my goal yet.

I use JavaFX in order to develop a custom web crawler. When I invoke WebEngine (javafx.scene.web.WebEngine), and want to load a web page, it uses another class WebPage (com.sun.webkit.WebPage) to load the URL and build the DOM.

When the function "open" from WebPage class is called, it calls "twkOpen" to open the requested URL. My goal is to capture all "twkOpen" calls and some other functions. 

I tried several different pointcuts, but, wasn't successful. I was wondering if it is possible to capture those functions on that level? And if the answer is yes, how?

Thanks in advance.


Kind regards,
Sina Yazdanmehr 

_______________________________________________
aspectj-users mailing list
[hidden email]
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/aspectj-users
Reply | Threaded
Open this post in threaded view
|

Re: Capturing inner calls

Andy Clement
Not sure what pointcuts you are trying.

The broadest one that perhaps ought to work is:

call(* twkOpen(..))

But typically you would either qualify the target type or use a within() clause to limit the amount of searching AspectJ has to do. (Perhaps call(* twkOpen(..)) && within(com.sub.webkit.WebPage) ).

Are you doing loadtime weaving?

Have you tried turning on the debug options to see if AspectJ is getting a chance to see the types you need to modify:

cheers,
Andy


On Oct 25, 2016, at 4:52 AM, Sina Yazdanmehr <[hidden email]> wrote:

Hello All,

I'm new in AspectJ. Since for a project I need to log all some functions calls, started to learn AspectJ, however, I haven't been able to achieve my goal yet.

I use JavaFX in order to develop a custom web crawler. When I invoke WebEngine (javafx.scene.web.WebEngine), and want to load a web page, it uses another class WebPage (com.sun.webkit.WebPage) to load the URL and build the DOM.

When the function "open" from WebPage class is called, it calls "twkOpen" to open the requested URL. My goal is to capture all "twkOpen" calls and some other functions. 

I tried several different pointcuts, but, wasn't successful. I was wondering if it is possible to capture those functions on that level? And if the answer is yes, how?

Thanks in advance.


Kind regards,
Sina Yazdanmehr 
_______________________________________________
aspectj-users mailing list
[hidden email]
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/aspectj-users


_______________________________________________
aspectj-users mailing list
[hidden email]
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/aspectj-users