aboutsummaryrefslogtreecommitdiffstats
path: root/tests/java5/decps/Basic3c.java
blob: 8d82b8090e5a3e0dd7c6a05d3608847d032e6001 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
import org.aspectj.lang.annotation.*;

public class Basic3c {
  public static void main(String []argv) {
    Basic3c b = new Basic3c();
    if (!(b instanceof X.I)) throw new RuntimeException("Basic3c should implement I");
    ((X.I)b).m2();
    ((X.I)b).m3();
    ((X.I)b).m2();
    ((X.I)b).m4();
  }
}



@Aspect class X {

  interface I {
	  public void m2();
	  public void m3();
	  public void m4();
  }

  static class IImpl implements I {
	  private IImpl() {}
    public void m2() { }
    public void m3() { }
    public void m4() { }
  }


  @DeclareParents(value="Basic3c",defaultImpl=IImpl.class)
  private I simplefield;


  @Before("call(* *(..))")
  public void advice1() {}

}