Annotation Interface EnableIntegrationMBeanExport
@Target(TYPE)
@Retention(RUNTIME)
@Documented
@Import(IntegrationMBeanExportConfiguration.class)
public @interface EnableIntegrationMBeanExport
Enables default exporting for Spring Integration components in an existing application, as
well as well all
@ManagedResource
annotated beans.
The resulting IntegrationMBeanExporter
bean is defined under the name integrationMbeanExporter
. Alternatively, consider defining a
custom IntegrationMBeanExporter
bean explicitly.
This annotation is modeled after and functionally equivalent to Spring Integration XML's
<int-jmx:mbean-export/>
element.
- Since:
- 4.0
- Author:
- Artem Bilan, Gary Russell
-
Optional Element Summary
Modifier and TypeOptional ElementDescriptionThe default domain to use when generating JMX ObjectNames.String[]
A list of simple patterns for component names to register (defaults to '*').The policy to use when attempting to register an MBean under anObjectName
that already exists.The bean name of the MBeanServer to which MBeans should be exported.
-
Element Details
-
defaultDomain
String defaultDomainThe default domain to use when generating JMX ObjectNames. Supports property placeholders (e.g.${project.domain}
).- Returns:
- the domain.
- Default:
- ""
-
server
String serverThe bean name of the MBeanServer to which MBeans should be exported. Default is to use the platform's default MBeanServer. Supports property placeholders (e.g.${project.mbeanServer}
) and SpEL expression (e.g.#{mbeanServer}
).- Returns:
- the server.
- Default:
- ""
-
registration
RegistrationPolicy registrationThe policy to use when attempting to register an MBean under anObjectName
that already exists. Defaults toRegistrationPolicy.FAIL_ON_EXISTING
.- Returns:
- the registration policy.
- Default:
- FAIL_ON_EXISTING
-
managedComponents
String[] managedComponentsA list of simple patterns for component names to register (defaults to '*'). The pattern is applied to all components before they are registered, looking for a match on the 'name' property of the ObjectName. A MessageChannel and a MessageHandler (for instance) can share a name because they have a different type, so in that case they would either both be included or both excluded. Since version 4.2, a leading '!' negates the pattern match ('!foo*' means don't export components where the name matches the pattern 'foo*'). For components with names that match multiple patterns, the first pattern wins. Supports property placeholders (e.g.$ managed.components
}). Can be applied for each element.- Returns:
- the patterns.
- Default:
- {"*"}
-