[BLOSSOM-131] Meta annotations for component availability Created: 17/Sep/13 Updated: 09/Oct/13 Resolved: 30/Sep/13 |
|
| Status: | Closed |
| Project: | Blossom |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 3.0 |
| Type: | New Feature | Priority: | Neutral |
| Reporter: | Tobias Mattsson | Assignee: | Tobias Mattsson |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||
| Template: |
|
||||||||
| Acceptance criteria: |
Empty
|
||||||||
| Description |
|
For component availability it would be very handy if it supported meta annotations. The @AvailableComponentClasses annotation would then accept custom annotations annotated somehow to mark them as annotations to be used for this purpose. Any components found having such an annotation would be available when that annotation is given to @AvailableComponentClasses. @ComponentCategory @Retention(RetentionPolicy.RUNTIME) @Target(ElementType.TYPE) public @interface Banner {} @Area("banners") @AvailableComponentClasses({Banner.class}) @Controller public class BannersArea {} @Banner @Template(id = "myModule:components/largePromoBanner", title="Large promo") @Controller("banner") public class LargePromoBannerComponent {} |