Package org.apache.yetus.audience
Class InterfaceAudience
- java.lang.Object
-
- org.apache.yetus.audience.InterfaceAudience
-
@Public @Evolving public class InterfaceAudience extends Object
Annotation to inform users of a package, class or method's intended audience. Currently the audience can beInterfaceAudience.Public,InterfaceAudience.LimitedPrivateorInterfaceAudience.Private.
All public classes must have InterfaceAudience annotation.
- Public classes that are not marked with this annotation must be
considered by default as
InterfaceAudience.Private. - External applications must only use classes that are marked
InterfaceAudience.Public. Avoid using non public classes as these classes could be removed or change in incompatible ways. - Some projects may choose to give special consideration to related
projects. Such consideration can be done by using the
InterfaceAudience.LimitedPrivateannotation with a named set of projects. - Methods may have a different annotation that it is more restrictive
compared to the audience classification of the class. Example: A class
might be
InterfaceAudience.Public, but a method may beInterfaceAudience.LimitedPrivate
- Public classes that are not marked with this annotation must be
considered by default as
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceorg.apache.yetus.audience.InterfaceAudience.LimitedPrivateIntended only for the project(s) specified in the annotation.static interfaceorg.apache.yetus.audience.InterfaceAudience.PrivateIntended for use only within a given project.static interfaceorg.apache.yetus.audience.InterfaceAudience.PublicIntended for use by any project or application.
-