Annotation Type EnableFeignClients


@Retention(RUNTIME) @Target(TYPE) @Documented @Import(org.springframework.cloud.openfeign.FeignClientsRegistrar.class) public @interface EnableFeignClients
Scans for interfaces that declare they are feign clients (via FeignClient @FeignClient). Configures component scanning directives for use with Configuration @Configuration classes.
Since:
1.0
Author:
Spencer Gibb, Dave Syer
  • Element Details

    • value

      String[] value
      Alias for the basePackages() attribute. Allows for more concise annotation declarations e.g.: @ComponentScan("org.my.pkg") instead of @ComponentScan(basePackages="org.my.pkg").
      Returns:
      the array of 'basePackages'.
      Default:
      {}
    • basePackages

      String[] basePackages
      Base packages to scan for annotated components.

      value() is an alias for (and mutually exclusive with) this attribute.

      Use basePackageClasses() for a type-safe alternative to String-based package names.

      Returns:
      the array of 'basePackages'.
      Default:
      {}
    • basePackageClasses

      Class<?>[] basePackageClasses
      Type-safe alternative to basePackages() for specifying the packages to scan for annotated components. The package of each class specified will be scanned.

      Consider creating a special no-op marker class or interface in each package that serves no purpose other than being referenced by this attribute.

      Returns:
      the array of 'basePackageClasses'.
      Default:
      {}
    • defaultConfiguration

      Class<?>[] defaultConfiguration
      A custom @Configuration for all feign clients. Can contain override @Bean definition for the pieces that make up the client, for instance Decoder, Encoder, Contract.
      Returns:
      list of default configurations
      See Also:
      Default:
      {}
    • clients

      Class<?>[] clients
      List of classes annotated with @FeignClient. If not empty, disables classpath scanning.
      Returns:
      list of FeignClient classes
      Default:
      {}