com.atlassian.annotations
Annotation Type PublicApi


@Documented
@Retention(value=CLASS)
public @interface PublicApi

The annotated element is part of a product's API contract with plugins.

This element is designed for plugins to consume (call its methods).

Clients of @PublicApi can expect that programs compiled against a given version will remain binary compatible with later versions of the @PublicApi as per each product's API policy as long as the client does not implement/extend @PublicApi interfaces or classes (refer to each product's API policy for the exact guarantee---usually binary compatibility is guaranteed at least across minor versions).

Note: since @PublicApi interfaces and classes are not designed to be implemented or extended by clients, we may perform certain types of binary-incompatible changes to these classes and interfaces, but these will not affect well-behaved clients that do not extend/implement these types (in general, only classes and interfaces annotated with PublicSpi are safe to extend/implement).

See Also:
PublicSpi, binary compatibility



Copyright © 2012 Atlassian. All Rights Reserved.