Hello,

The problem is that you did not parameterize the abstract aspect. This is what you should do:

public aspect ReplicateConcrete extends Replicate<Test> {
        protected pointcut replica() : call( Test.new() );
}

Best regards,

Paulo Zenida


Citando Nuno Santos <[EMAIL PROTECTED]>:

Hi,

I'm trying to create a generic aspect which can do thing without  being
type dependent.

I'm trying to do the following to start:

Test.java

public class Test {
        public Test() {

        }

        public void sayHello() {
                System.out.println("Hello world!");
        }

        public static void main(String args[]) {
                Test t = new Test();
                t.sayHello();
        }
}

Replicate.aj

public abstract aspect Replicate<T> {

        protected pointcut replica();

                T around() : replica() {

                // do something

                return(proceed());
        }
}

ReplicateConcrete.aj

public aspect ReplicateConcrete extends Replicate {
        protected pointcut replica() : call( Test.new() );
}

But i'm having an error in the concrete. Eclipse complains in the
"public aspect ReplicateConcrete extends Replicate {" line but it
doesnt tell what's the problem..


Can anyone give me some tips here?

Thx,

Nuno



_______________________________________________
aspectj-users mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/aspectj-users

Reply via email to