Stuart McCulloch | bb01437 | 2012-06-07 21:57:32 +0000 | [diff] [blame] | 1 | package aQute.bnd.annotation; |
| 2 | |
| 3 | import java.lang.annotation.*; |
| 4 | |
| 5 | /** |
| 6 | * This annotation can be applied to interface where an implementation should be |
| 7 | * treated as a use policy, not an implementation policy. Many package have |
| 8 | * interfaces that are very stable and can be maintained backward compatible for |
| 9 | * implementers during minor changes. For example, in Event Admin, the |
| 10 | * EventAdmin implementers should follow the minor version, e.g. [1.1,1.2), however, |
| 11 | * an implementer of EventHandler should not require such a small range. Therefore |
| 12 | * an interface like EventHandler should use this anotation. |
| 13 | */ |
| 14 | @Retention(RetentionPolicy.CLASS) |
| 15 | @Target(ElementType.TYPE) |
| 16 | @Deprecated |
| 17 | public @interface UsePolicy { |
| 18 | String RNAME = "LaQute/bnd/annotation/UsePolicy;"; |
| 19 | |
| 20 | } |