Annotation Interface IntegrationComponentScan
Configuration
classes.
Scans for MessagingGateway
on interfaces to create GatewayProxyFactoryBean
s.
- Since:
- 4.0
- Author:
- Artem Bilan
- See Also:
-
Optional Element Summary
Modifier and TypeOptional ElementDescriptionClass<?>[]
Type-safe alternative tobasePackages()
for specifying the packages to scan for annotated components.String[]
Base packages to scan for annotated components.Specifies which types are not eligible for component scanning.Specifies which types are eligible for component scanning.Class<? extends BeanNameGenerator>
TheBeanNameGenerator
class to be used for naming detected Spring Integration components.boolean
Indicates whether automatic detection of classes annotated with@MessagingGateway
should be enabled.String[]
Alias for thebasePackages()
attribute.
-
Element Details
-
value
Alias for thebasePackages()
attribute. Allows for more concise annotation declarations e.g.:@IntegrationComponentScan("org.my.pkg")
instead of@IntegrationComponentScan(basePackages="org.my.pkg")
.- Returns:
- the array of 'basePackages'.
- Default:
- {}
-
basePackages
Base packages to scan for annotated components. Thevalue()
is an alias for (and mutually exclusive with) this attribute. UsebasePackageClasses()
for a type-safe alternative to String-based package names.- Returns:
- the array of 'basePackages'.
- Default:
- {}
-
basePackageClasses
Class<?>[] basePackageClassesType-safe alternative tobasePackages()
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:
- {}
-
useDefaultFilters
boolean useDefaultFiltersIndicates whether automatic detection of classes annotated with@MessagingGateway
should be enabled.- Returns:
- the
useDefaultFilters
flag - Since:
- 5.0
- Default:
- true
-
includeFilters
ComponentScan.Filter[] includeFiltersSpecifies which types are eligible for component scanning.Further narrows the set of candidate components from everything in
basePackages()
to everything in the base packages that matches the given filter or filters.Note that these filters will be applied in addition to the default filters, if specified. Any type under the specified base packages which matches a given filter will be included, even if it does not match the default filters (i.e. is not annotated with
@MessagingGateway
).- Returns:
- the
includeFilters
array - Since:
- 5.0
- See Also:
- Default:
- {}
-
excludeFilters
ComponentScan.Filter[] excludeFiltersSpecifies which types are not eligible for component scanning.- Returns:
- the
excludeFilters
array - Since:
- 5.0
- See Also:
- Default:
- {}
-
nameGenerator
Class<? extends BeanNameGenerator> nameGeneratorTheBeanNameGenerator
class to be used for naming detected Spring Integration components.The default value of the
BeanNameGenerator
interface itself indicates that the scanner used to process thisIntegrationComponentScan
annotation should use its inherited bean name generator, e.g. the defaultAnnotationBeanNameGenerator
or any custom instance supplied to the application context at bootstrap time.- Since:
- 6.0
- See Also:
- Default:
- org.springframework.beans.factory.support.BeanNameGenerator.class
-