Dragon
Dragon

Reputation: 2481

Java: how to set default value to annotation with another annotation as its attribute?

I have an annotation with 3 attributes:

public @interface Date {
    int day() default 1;
    int month() default 1;
    int year() default 2000;
}

And annotation that uses previous annotation as attribute:

public @interface Author {
    String name();
    Date date(); //default value here
}

How to set default value for attribute date?

Upvotes: 5

Views: 5026

Answers (1)

Balder
Balder

Reputation: 8718

You do this by providing a default annotaion...

For example:

public @interface Author {
    String name();
    Date date() default @Date(year=2014);
}

Upvotes: 8

Related Questions