View Javadoc
1   package com.atlassian.plugin.spring.scanner.annotation.imports;
2   
3   import com.atlassian.plugin.spring.scanner.ProductFilter;
4   import com.atlassian.plugin.spring.scanner.annotation.OnlyInProduct;
5   
6   import java.lang.annotation.ElementType;
7   import java.lang.annotation.Retention;
8   import java.lang.annotation.RetentionPolicy;
9   import java.lang.annotation.Target;
10  
11  /**
12   * Annotation representing an OSGi service that's required to be imported into this bundle
13   * when running within Refapp. Can be applied to constructor params where the param type
14   * is a service interface exported by another bundle
15   */
16  @Target({ElementType.PARAMETER, ElementType.FIELD})
17  @Retention(RetentionPolicy.RUNTIME)
18  @ComponentImport
19  @OnlyInProduct(ProductFilter.REFAPP)
20  public @interface RefappImport {
21  
22      /**
23       * Override the default spring bean name to assign <b>within this plugin</b> for the imported OSGi service.
24       * Not usually needed.
25       *
26       * @see ComponentImport#value() for more info.
27       */
28      String value() default "";
29  }