[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[aspectj-users] AW: Pointcut on a constructor with a custom @Annotation

Hallo Again

Sorry, I hit send accidentally. :(
> Hallo Mailingliste
> I am struggling to create a proper pointcut on a constructor. I want to
> catch all creations of an object which is annotated with a custom
> annotation. Like:
> @MyAnnotation
> public class TheClass {
>   public TheClass {
>   }
> }
> So whenever a classlass is instantiated I want to get the instance of that
class (having the MyAnnotation annotation).
> Therefore I developed the following Pointcut:

So I continue here with the mentioned pointcut:

@AfterReturning(pointcut = "call(* .new(..)) && @target(MyAnnotation)",
returning = "obj")
  public void objectCreation() {
The problem here is, that the combination of the call(* .new(..)) and the
@target(MyAnnotation) does not work. I can either remove the @target and it
works fine or I can remove the call(..) and let the @target be the key. But
together those two do not work.

Am I doing something completely wrong? Or is there another suggested way to
intercept a newly created object?

Any help is appreciated

Moritz Post