Функция C / C ++ с использованием float, double или int

Я использую AspectJ некоторое время, и он отлично работает с полями области видимости объекта, содержащими аннотации. Я только что столкнулся с ситуацией, когда я хочу аннотировать переменную области действия метода, которая будет работать с моим pointcut, но у меня с этим возникают проблемы.

Вот pointcut, который я использую. Он отлично работает, если моя переменная является полем для объекта, но если я уменьшу область видимости до метода (переменная, объявленная внутри метода), она больше не будет работать, и я не уверен, почему. Дайте мне знать, что я могу сделать, спасибо.

 after(final Trigger trigger): set(@Triggereable * *) && args(trigger)
 {
  System.out.println("trigger flush");
 }

Также вот пример того, над чем я хочу работать. Указанный выше System.out.println должен срабатывать при создании экземпляра триггера:

public void foo()
{
   @Triggereable
   private Trigger trigger = new Trigger();
}
5
задан Dave Jarvis 20 December 2010 в 16:29
поделиться