public class MetadataNamingStrategy extends Object implements ObjectNamingStrategy, InitializingBean
ObjectNamingStrategy interface
that reads the ObjectName from the source-level metadata.
Falls back to the bean key (bean name) if no ObjectName
can be found in source-level metadata.
Uses the JmxAttributeSource strategy interface, so that
metadata can be read using any supported implementation. Out of the box,
AnnotationJmxAttributeSource
introspects a well-defined set of Java 5 annotations that come with Spring.
ObjectNamingStrategy,
AnnotationJmxAttributeSource| Constructor and Description |
|---|
MetadataNamingStrategy()
Create a new
MetadataNamingStrategy which needs to be
configured through the setAttributeSource(org.springframework.jmx.export.metadata.JmxAttributeSource) method. |
MetadataNamingStrategy(JmxAttributeSource attributeSource)
Create a new
MetadataNamingStrategy for the given
JmxAttributeSource. |
| Modifier and Type | Method and Description |
|---|---|
void |
afterPropertiesSet()
Invoked by a BeanFactory after it has set all bean properties supplied
(and satisfied BeanFactoryAware and ApplicationContextAware).
|
ObjectName |
getObjectName(Object managedBean,
String beanKey)
Reads the
ObjectName from the source-level metadata associated
with the managed resource's Class. |
void |
setAttributeSource(JmxAttributeSource attributeSource)
Set the implementation of the
JmxAttributeSource interface to use
when reading the source-level metadata. |
void |
setDefaultDomain(String defaultDomain)
Specify the default domain to be used for generating ObjectNames
when no source-level metadata has been specified.
|
public MetadataNamingStrategy()
MetadataNamingStrategy which needs to be
configured through the setAttributeSource(org.springframework.jmx.export.metadata.JmxAttributeSource) method.public MetadataNamingStrategy(JmxAttributeSource attributeSource)
MetadataNamingStrategy for the given
JmxAttributeSource.attributeSource - the JmxAttributeSource to usepublic void setAttributeSource(JmxAttributeSource attributeSource)
JmxAttributeSource interface to use
when reading the source-level metadata.public void setDefaultDomain(String defaultDomain)
The default is to use the domain specified in the bean name (if the bean name follows the JMX ObjectName syntax); else, the package name of the managed bean class.
public void afterPropertiesSet()
InitializingBeanThis method allows the bean instance to perform initialization only possible when all bean properties have been set and to throw an exception in the event of misconfiguration.
afterPropertiesSet in interface InitializingBeanpublic ObjectName getObjectName(Object managedBean, String beanKey) throws MalformedObjectNameException
ObjectName from the source-level metadata associated
with the managed resource's Class.getObjectName in interface ObjectNamingStrategymanagedBean - the bean that will be exposed under the
returned ObjectNamebeanKey - the key associated with this bean in the beans map
passed to the MBeanExporterObjectName instanceMalformedObjectNameException - if the resulting ObjectName is invalid