INT-1817 added namespace support for object-name-static-properties for IntegrationMBeanExporter

This commit is contained in:
Oleg Zhurakousky
2011-03-09 17:13:13 -05:00
parent 3f06998118
commit 8b53fa1fc7
5 changed files with 47 additions and 12 deletions

View File

@@ -52,6 +52,8 @@ public class MBeanExporterParser extends AbstractSingleBeanDefinitionParser {
Object mbeanServer = getMBeanServer(element, parserContext);
builder.getRawBeanDefinition().setSource(parserContext.extractSource(element));
IntegrationNamespaceUtils.setValueIfAttributeDefined(builder, element, "default-domain");
IntegrationNamespaceUtils.setReferenceIfAttributeDefined(builder, element, "object-name-static-properties-ref", "objectNameStaticProperties");
builder.addPropertyValue("server", mbeanServer);
}

View File

@@ -17,6 +17,7 @@ import java.lang.reflect.Field;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
import java.util.Properties;
import java.util.Set;
import java.util.concurrent.atomic.AtomicLong;
import java.util.concurrent.locks.ReentrantLock;
@@ -29,6 +30,7 @@ import javax.management.modelmbean.ModelMBean;
import org.aopalliance.aop.Advice;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.springframework.aop.Advisor;
import org.springframework.aop.PointcutAdvisor;
import org.springframework.aop.TargetSource;
@@ -132,7 +134,7 @@ public class IntegrationMBeanExporter extends MBeanExporter implements BeanPostP
private boolean initialized = false;
private final Map<String, String> objectNameStaticProperties = new HashMap<String, String>();
private final Properties objectNameStaticProperties = new Properties();
private final MetadataMBeanInfoAssembler assembler = new MetadataMBeanInfoAssembler(attributeSource);
@@ -617,7 +619,8 @@ public class IntegrationMBeanExporter extends MBeanExporter implements BeanPostP
return "";
}
StringBuilder builder = new StringBuilder();
for (String key : objectNameStaticProperties.keySet()) {
for (Object key : objectNameStaticProperties.keySet()) {
builder.append("," + key + "=" + objectNameStaticProperties.get(key));
}
return builder.toString();