2014-02-18 6 views
3

Я реализующий интерфейс от аспектуВозвращение экземпляра класса в методе интерфейса (аспект)

declare parents: SomePackage.AClass+ extends InterfaceBelow 

public interface InterfaceBelow() { 
     //bunch of methods 
} 

Я хочу метод, который должен возвращать класс/экземпляр, реализующий сам интерфейс. Что-то такие, как добавление метода к интерфейсу public Object getSelf(), а затем использовать AspectJ реализовать это следующим образом:

public InterfaceBelow.getSelf() 
{ 
    //how to return the instance implementing the interface 
} 

мне нужно сделать это в аспекте не из класса, а затем {return this;}

ответ

1

имеет InterfaceBelow.getSelf() возвращение нуля , затем создайте нужный пункт around. pointcut может захватить target вызова метода. верните это вместо этого.

Смежные вопросы