Hi.

What I want to do is following. I write an abstract class like this:

Code:
public abstract class MyService {

    public abstract String getSomeValue();

    public String getAnotherValue() { return "test" };

}
What I aim for is that this class gets enhanced by AOP or CGLIB directly, so that calling abstract methods is intercepted and replaced by some logic. I don't want to use interfaces, because I still want non-abstract methods there.

At what level and how should I implement this? Enhancing some class with CGLIB or advising with AOP is not a problem, but I can't think of a way to properly put it all together. If it is possible to be done with AOP, then how? If I should use CGLIB, then at what point in beans lifecycle can I enhance my bean?