Using Javadoc, to document objects of type(workWithAnnot
,Method
,Constructor
,Annotation
,Package
) as unfinished in development, below is the code,
src
package1
package-info.java
Unfinished.java
test
package-info.java
workWithAnnot.java
package1/package-info.java
@Unfinished("Package scope")
package package1;
package1/Unfinished.java
package package1;
import java.lang.annotation.*;
@Unfinished("Just articleware")
@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.TYPE,ElementType.METHOD, ElementType.CONSTRUCTOR,
ElementType.ANNOTATION_TYPE, ElementType.PACKAGE})
@Inherited
public @interface Unfinished {
public enum Priority {LOW, MEDIUM, HIGH}
String value();
String[] owners() default "";
Priority priority() default Priority.MEDIUM;
}
test/workWithAnnot.java
package test;
import package1.Unfinished;
import package1.Unfinished.Priority;
@Unfinished(
value = "Class Scope",
priority = Priority.LOW
)
public class workWithAnnot {
@Unfinished(owners = "xyz", value="Method scope")
public void foo() {
}
@Unfinished(owners = "Sham", value="Method scope")
public void bar() {
}
}
test/package-info.java
@Unfinished("Package scope")
package test;
import package1.Unfinished;
Javadoc displays objects of Package
type as unfinished in Java syntax but not as documentation(in plain english):
@Unfinished(value="Package scope")
Package test
Javadoc displays objects of workWithAnnot
type as unfinished in Java syntax but not as documentation:
@Unfinished(value="Class Scope", priority=LOW)
public class workWithAnnot extends java.lang.Object
Javadoc displays objects of Method
type as unfinished in Java syntax but not as documentation:
foo
@Unfinished(owners="xyz", value="Method scope")
public void foo()
Can @Documented
annotation resolve this problem?
or
Do I need to write a compile-time annotation processor for a new custom annotation instead of using meta annotation(@Documented
)?