declare @field : * DAO+.* : @Persisted;
+ declare @constructor : BankAccount+.new(..) : @Secured(role="supervisor");
+
declare warning : staticinitialization(@BusinessDomain *)
: "@BusinessDomain";
declare warning : set(@Persisted * *) : "@Persisted";
+ declare warning : initialization(@Secured *.new(..)) : "@Secured";
+
public static void main(String[] args) throws Exception {
Class bAcc = BankAccount.class;
java.lang.reflect.Method credit = bAcc.getDeclaredMethod("credit");
class ExecutiveBankAccount extends BankAccount {
+ public ExecutiveBankAccount() {
+ super();
+ }
+
public void interest() {}
protected void commission() {}
<ajc-test dir="java5/annotations/ajdkExamples" title="ajdk: dec annotation">
<compile files="DeclareAnnotation.aj,org/xyz/model/Model.java" options="-1.5">
<message kind="warning" line="3" text="@BusinessDomain"/>
- <message kind="warning" line="39" text="@Secured"/>
- <message kind="warning" line="40" text="@Secured"/>
- <message kind="warning" line="47" text="@Secured"/>
- <message kind="warning" line="54" text="@Persisted"/>
- <message kind="warning" line="60" text="@Persisted"/>
+ <message kind="warning" line="43" text="@Secured"/>
+ <message kind="warning" line="44" text="@Secured"/>
+ <message kind="warning" line="55" text="@Secured"/>
+ <message kind="warning" line="62" text="@Persisted"/>
+ <message kind="warning" line="68" text="@Persisted"/>
+ <message kind="warning" line="41" text="@Secured"/>
+ <message kind="warning" line="51" text="@Secured"/>
</compile>
<run class="DeclareAnnotation"/>
</ajc-test>