Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [aspectj-users] help on pointcuts weaving

If your code is this:

public void foo() {
 InetAddress testAddress = null;
 Socket s = new Socket(addr, 80);
 testAddress = s.getInetAddress().getLocalHost();
}

Your pointcut is this:

pointcut p(): call(* getLocalHost(..)) && withincode(public void foo());

The line s.getInetAddress().getLocalHost() contains multiple method
calls, a call to getInetAddress() and a call to getLocalHost() - you
can't use a single call() pointcut to match both of them.  You want
the second one, so match the second one with your call().

Andy.

2008/6/25 Neeraja Maniyani <neeraja.maniyani@xxxxxxxxx>:
> hi,
>
> The call in the java class looks like this
>
> InetAddress testAddress = null;
> Socket s = new Socket(addr, 80);
> testAddress = s.getInetAddress().getLocalHost();
>
> I want the advice to weave in at this "s.getInetAddress().getLocalHost(); "
> point.
>
> The pointcut and advice with which i currently tested looks like this
>
> pointcut name2()
>   : call(public * Socket.getInetAddress(..)) && withincode(public *
> InetAddress.getLocalHost(..));
>
>
>   before() : name2() {
>    System.out.println("able to weave"); }
>
>
> I have tested using this call(public * Socket.getInetAddress..*(..)).
>
> But the advice dint get weaved in
>
> thank you.
>
>
> _______________________________________________
> aspectj-users mailing list
> aspectj-users@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/aspectj-users
>
>


Back to the top