|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: REQUIRED | OPTIONAL | DETAIL: ELEMENT | ||||||||
@Documented
@Retention(value=RUNTIME)
@Target(value={PACKAGE,TYPE,METHOD,CONSTRUCTOR})
@PublicAPI(stability=UNCOMMITTED,
mayInstantiate=false,
mayExtend=false,
mayInvoke=false)
public @interface PublicAPI
This class defines an annotation type that can be used to describe
the position of a package, class, or method in the OpenDS public
API (including to denote that the associated code should NOT be
considered part of the public API). Third-party developers should
pay attention to these annotations in order to understand how best
to interact with the OpenDS code. For the purposes of this
annotation, a "third-party developer" should be assumed to refer to
anyone who is interacting with the OpenDS code in a manner in which
their work is not expected to become part of the core OpenDS code
base.
This annotation type may be used to describe things like:
mayInvoke=true but a method in that class is marked with
mayInvoke=false, then third-party code should not attempt
to invoke that method because the method-level annotation is more
specific (and therefore overrides) the less-specific class-level
annotation.
| Optional Element Summary | |
|---|---|
boolean |
mayExtend
Indicates whether the associated class/interface/method may be extended/implemented/overridden by third-party code. |
boolean |
mayInstantiate
Indicates whether third-party code should be allowed to directly create new instances of the associated object type by calling the constructor or a static factory method defined in that class. |
boolean |
mayInvoke
Indicates whether the associated method may be invoked by third-party code. |
java.lang.String |
notes
Retrieves a string that may contain additional notes that should be taken into consideration by third-party developers that may be interested in using the associated code. |
StabilityLevel |
stability
Retrieves the stability level for the associated class or method. |
public abstract StabilityLevel stability
public abstract boolean mayInstantiate
true if third-party code should be allowed to
create new instances of the associated object type, or
false if not.public abstract boolean mayExtend
true if the associated class/interface/method
may be extended by third-party code, or false if
not.public abstract boolean mayInvoke
true if third-party code should be allowed to
invoke the associated method, or false if not.public abstract java.lang.String notes
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: REQUIRED | OPTIONAL | DETAIL: ELEMENT | ||||||||