View Javadoc
1   package com.atlassian.plugin.spring.scanner.annotation.component;
2   
3   import com.atlassian.plugin.spring.scanner.ProductFilter;
4   import com.atlassian.plugin.spring.scanner.annotation.OnlyInProduct;
5   import org.springframework.stereotype.Component;
6   
7   import java.lang.annotation.ElementType;
8   import java.lang.annotation.Retention;
9   import java.lang.annotation.RetentionPolicy;
10  import java.lang.annotation.Target;
11  
12  /**
13   * Annotation representing a component that should only be considered when running in JIRA.
14   * Can be applied to Class type elements defined in the local project or to constructor params
15   * where the param type is located in an external jar on this bundle's classpath
16   */
17  @Target({ElementType.TYPE, ElementType.PARAMETER, ElementType.FIELD})
18  @Retention(RetentionPolicy.RUNTIME)
19  @Component
20  @OnlyInProduct(ProductFilter.JIRA)
21  public @interface JiraComponent {
22      String value() default "";
23  }