[jboss-cvs] JBossAS SVN: r90629 - in projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx: naming and 1 other directory.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Fri Jun 26 09:04:47 EDT 2009
Author: alesj
Date: 2009-06-26 09:04:46 -0400 (Fri, 26 Jun 2009)
New Revision: 90629
Added:
projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/AbstractMetaDataConverter.java
Modified:
projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/AliasMetaDataConverter.java
projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/AnnotationMetaDataConverter.java
projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/AttributeMetaDataConverter.java
projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/AttributeValueMetaDataConverter.java
projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/ConstructorMetaDataConverter.java
projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/DependencyMetaDataConverter.java
projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/DependencyValueMetaDataConverter.java
projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/ElementValueMetaDataConverter.java
projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/InjectionValueMetaDataConverter.java
projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/JBXBValueMetaDataConverter.java
projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/JavaBeanValueMetaDateConverter.java
projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/MetaDataConverter.java
projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/ServiceMetaDataConverter.java
projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/TextValueMetaDataConverter.java
projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/ValueFactoryMetaDataConverter.java
projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/ValueMetaDataConverter.java
projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/naming/AutoIncrementNameService.java
projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/naming/BeanNameService.java
projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/naming/InputNameService.java
Log:
Introduce toXML via convertor.
Copied: projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/AbstractMetaDataConverter.java (from rev 90591, projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/AliasMetaDataConverter.java)
===================================================================
--- projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/AbstractMetaDataConverter.java (rev 0)
+++ projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/AbstractMetaDataConverter.java 2009-06-26 13:04:46 UTC (rev 90629)
@@ -0,0 +1,72 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.mc.tools.jmx.convert;
+
+import java.util.Map;
+
+/**
+ * @param <S> service metadata type
+ * @param <B> bean metadata type
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ */
+abstract class AbstractMetaDataConverter<S,B> implements MetaDataConverter<S, B>
+{
+ protected abstract String element();
+
+ protected String startTag()
+ {
+ return startTag(null);
+ }
+
+ protected String startTag(Map<String, ?> attributes)
+ {
+ return "<" + element() + toPairs(attributes) + ">";
+ }
+
+ protected String emptyTag(Map<String, ?> attributes)
+ {
+ return "<" + element() + toPairs(attributes) + "/>";
+ }
+
+ protected String simpleElement(Object value)
+ {
+ return startTag() + value + endTag();
+ }
+
+ protected static String toPairs(Map<String, ?> map)
+ {
+ if (map == null || map.isEmpty())
+ return "";
+
+ StringBuilder result = new StringBuilder(" ");
+ for (Map.Entry<String, ?> entry : map.entrySet())
+ {
+ result.append(entry.getKey()).append("=\"").append(entry.getValue()).append("\" ");
+ }
+ return result.toString();
+ }
+
+ protected String endTag()
+ {
+ return "</" + element() + ">";
+ }
+}
\ No newline at end of file
Modified: projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/AliasMetaDataConverter.java
===================================================================
--- projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/AliasMetaDataConverter.java 2009-06-26 13:03:39 UTC (rev 90628)
+++ projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/AliasMetaDataConverter.java 2009-06-26 13:04:46 UTC (rev 90629)
@@ -29,7 +29,7 @@
* @author <a href="flavia.rainone at jboss.com">Flavia Rainone</a>
* @version $Revision$
*/
-class AliasMetaDataConverter implements MetaDataConverter<String, AbstractAliasMetaData>
+class AliasMetaDataConverter extends AbstractMetaDataConverter<String, AbstractAliasMetaData>
{
public AbstractAliasMetaData toMCMetaData(String alias, Collection<String> unhandledAtributes)
{
@@ -37,4 +37,14 @@
newAlias.setAliasValue(alias);
return newAlias;
}
+
+ protected String element()
+ {
+ return "alias";
+ }
+
+ public String toXML(AbstractAliasMetaData beanMetaData)
+ {
+ return simpleElement(beanMetaData.getAliasValue());
+ }
}
\ No newline at end of file
Modified: projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/AnnotationMetaDataConverter.java
===================================================================
--- projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/AnnotationMetaDataConverter.java 2009-06-26 13:03:39 UTC (rev 90628)
+++ projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/AnnotationMetaDataConverter.java 2009-06-26 13:04:46 UTC (rev 90629)
@@ -31,10 +31,20 @@
* @version $Revision$
*
*/
-class AnnotationMetaDataConverter implements MetaDataConverter <ServiceAnnotationMetaData, AbstractAnnotationMetaData>
+class AnnotationMetaDataConverter extends AbstractMetaDataConverter <ServiceAnnotationMetaData, AbstractAnnotationMetaData>
{
public AbstractAnnotationMetaData toMCMetaData(ServiceAnnotationMetaData annotation, Collection<String> unhandled)
{
- return new AbstractAnnotationMetaData(((ServiceAnnotationMetaData) annotation).getAnnotation());
+ return new AbstractAnnotationMetaData(annotation.getAnnotation());
}
+
+ protected String element()
+ {
+ return "annotation";
+ }
+
+ public String toXML(AbstractAnnotationMetaData beanMetaData)
+ {
+ return simpleElement(beanMetaData.getAnnotation());
+ }
}
\ No newline at end of file
Modified: projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/AttributeMetaDataConverter.java
===================================================================
--- projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/AttributeMetaDataConverter.java 2009-06-26 13:03:39 UTC (rev 90628)
+++ projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/AttributeMetaDataConverter.java 2009-06-26 13:04:46 UTC (rev 90629)
@@ -22,6 +22,7 @@
package org.jboss.mc.tools.jmx.convert;
import java.util.Collection;
+import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
@@ -35,7 +36,7 @@
* @author <a href="flavia.rainone at jboss.com">Flavia Rainone</a>
* @version $Revision$
*/
-class AttributeMetaDataConverter implements MetaDataConverter<ServiceAttributeMetaData, AbstractPropertyMetaData>
+class AttributeMetaDataConverter extends AbstractMetaDataConverter<ServiceAttributeMetaData, AbstractPropertyMetaData>
{
Map<Class<?>, AttributeValueMetaDataConverter<?, ?>> valueConverters;
private ValueMetaDataConverter defaultValueConverter = new ValueMetaDataConverter();
@@ -59,9 +60,8 @@
valueConverters.put(valueConverter.getClass(), valueConverter);
}
- public AbstractPropertyMetaData toMCMetaData(ServiceAttributeMetaData attributeMetaData, Collection<String> unhandledAttributes)
+ public AbstractPropertyMetaData toMCMetaData(ServiceAttributeMetaData attribute, Collection<String> unhandledAttributes)
{
- ServiceAttributeMetaData attribute = (ServiceAttributeMetaData) attributeMetaData;
ServiceValueMetaData serviceValue = attribute.getValue();
AttributeValueMetaDataConverter<?, ?> valueConverter = valueConverters.get(serviceValue.getChildren());
if (valueConverter == null)
@@ -72,4 +72,18 @@
String name = attribute.getName().substring(0, 1).toLowerCase() + attribute.getName().substring(1);
return new AbstractPropertyMetaData(name, newValue);
}
+
+ protected String element()
+ {
+ return "property";
+ }
+
+ public String toXML(AbstractPropertyMetaData beanMetaData)
+ {
+ String start = startTag(Collections.singletonMap("name", beanMetaData.getName()));
+ AttributeValueMetaDataConverter converter = null; // TODO
+ String value = converter.toXML(beanMetaData.getValue());
+ String end = endTag();
+ return start + value + end;
+ }
}
\ No newline at end of file
Modified: projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/AttributeValueMetaDataConverter.java
===================================================================
--- projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/AttributeValueMetaDataConverter.java 2009-06-26 13:03:39 UTC (rev 90628)
+++ projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/AttributeValueMetaDataConverter.java 2009-06-26 13:04:46 UTC (rev 90629)
@@ -31,7 +31,7 @@
* @version $Revision$
*
*/
-abstract class AttributeValueMetaDataConverter<V extends ServiceValueMetaData, B extends ValueMetaData> implements MetaDataConverter<V, B>
+abstract class AttributeValueMetaDataConverter<V extends ServiceValueMetaData, B extends ValueMetaData> extends AbstractMetaDataConverter<V, B>
{
public abstract Class<V> getCompatibleClass();
@@ -41,8 +41,7 @@
* @return
*/
@SuppressWarnings("all")
- public B toMCMetaData(ServiceValueMetaData serviceValue,
- Collection<String> unhandledAttributes)
+ public B toMCMetaData(ServiceValueMetaData serviceValue, Collection<String> unhandledAttributes)
{
return this.toMCMetaData((V) serviceValue, unhandledAttributes);
}
Modified: projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/ConstructorMetaDataConverter.java
===================================================================
--- projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/ConstructorMetaDataConverter.java 2009-06-26 13:03:39 UTC (rev 90628)
+++ projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/ConstructorMetaDataConverter.java 2009-06-26 13:04:46 UTC (rev 90629)
@@ -36,7 +36,7 @@
* @author <a href="flavia.rainone at jboss.com">Flavia Rainone</a>
* @version $Revision$
*/
-class ConstructorMetaDataConverter implements MetaDataConverter<ServiceConstructorMetaData, AbstractConstructorMetaData>
+class ConstructorMetaDataConverter extends AbstractMetaDataConverter<ServiceConstructorMetaData, AbstractConstructorMetaData>
{
public AbstractConstructorMetaData toMCMetaData(ServiceConstructorMetaData constructor, Collection<String> unhandled)
{
@@ -66,4 +66,21 @@
}
return beanConstructor;
}
+
+ protected String element()
+ {
+ return "constructor";
+ }
+
+ public String toXML(AbstractConstructorMetaData beanMetaData)
+ {
+ List<ParameterMetaData> params = beanMetaData.getParameters();
+ if (params == null || params.isEmpty())
+ return ""; // TODO; is this OK? == default ctor
+
+ String start = startTag();
+ String paramElts = ""; // TODO
+ String end = endTag();
+ return start + paramElts + end;
+ }
}
\ No newline at end of file
Modified: projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/DependencyMetaDataConverter.java
===================================================================
--- projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/DependencyMetaDataConverter.java 2009-06-26 13:03:39 UTC (rev 90628)
+++ projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/DependencyMetaDataConverter.java 2009-06-26 13:04:46 UTC (rev 90629)
@@ -31,11 +31,21 @@
* @version $Revision$
*
*/
-class DependencyMetaDataConverter implements MetaDataConverter<ServiceDependencyMetaData, AbstractDependencyMetaData>
+class DependencyMetaDataConverter extends AbstractMetaDataConverter<ServiceDependencyMetaData, AbstractDependencyMetaData>
{
public AbstractDependencyMetaData toMCMetaData(ServiceDependencyMetaData valueMetaData, Collection<String> unhandledAttributes)
{
String dependencyName = NAME_TRANSLATOR.translate(valueMetaData.getIDependOn());
return new AbstractDependencyMetaData(dependencyName);
}
+
+ protected String element()
+ {
+ return "depends";
+ }
+
+ public String toXML(AbstractDependencyMetaData beanMetaData)
+ {
+ return simpleElement(beanMetaData.getDependency());
+ }
}
\ No newline at end of file
Modified: projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/DependencyValueMetaDataConverter.java
===================================================================
--- projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/DependencyValueMetaDataConverter.java 2009-06-26 13:03:39 UTC (rev 90628)
+++ projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/DependencyValueMetaDataConverter.java 2009-06-26 13:04:46 UTC (rev 90629)
@@ -22,6 +22,7 @@
package org.jboss.mc.tools.jmx.convert;
import java.util.Collection;
+import java.util.Collections;
import org.jboss.beans.metadata.plugins.AbstractInjectionValueMetaData;
import org.jboss.system.metadata.ServiceDependencyValueMetaData;
@@ -48,4 +49,14 @@
String beanName = NAME_TRANSLATOR.translate(value.getDependency());
return new AbstractInjectionValueMetaData(beanName);
}
+
+ protected String element()
+ {
+ return "inject";
+ }
+
+ public String toXML(AbstractInjectionValueMetaData beanMetaData)
+ {
+ return emptyTag(Collections.singletonMap("bean", beanMetaData.getUnderlyingValue()));
+ }
}
\ No newline at end of file
Modified: projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/ElementValueMetaDataConverter.java
===================================================================
--- projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/ElementValueMetaDataConverter.java 2009-06-26 13:03:39 UTC (rev 90628)
+++ projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/ElementValueMetaDataConverter.java 2009-06-26 13:04:46 UTC (rev 90629)
@@ -43,4 +43,14 @@
// TODO what to do in this case?
throw new RuntimeException("XML Element Value Unsupported");
}
+
+ protected String element()
+ {
+ return "";
+ }
+
+ public String toXML(B beanMetaData)
+ {
+ return "";
+ }
}
\ No newline at end of file
Modified: projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/InjectionValueMetaDataConverter.java
===================================================================
--- projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/InjectionValueMetaDataConverter.java 2009-06-26 13:03:39 UTC (rev 90628)
+++ projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/InjectionValueMetaDataConverter.java 2009-06-26 13:04:46 UTC (rev 90629)
@@ -22,6 +22,7 @@
package org.jboss.mc.tools.jmx.convert;
import java.util.Collection;
+import java.util.Collections;
import org.jboss.beans.metadata.plugins.AbstractInjectionValueMetaData;
import org.jboss.system.metadata.ServiceInjectionValueMetaData;
@@ -46,4 +47,14 @@
String property = value.getProperty();
return new AbstractInjectionValueMetaData(NAME_TRANSLATOR.translate(dependency), property);
}
+
+ protected String element()
+ {
+ return "inject";
+ }
+
+ public String toXML(AbstractInjectionValueMetaData beanMetaData)
+ {
+ return emptyTag(Collections.singletonMap("bean", beanMetaData.getUnderlyingValue()));
+ }
}
\ No newline at end of file
Modified: projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/JBXBValueMetaDataConverter.java
===================================================================
--- projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/JBXBValueMetaDataConverter.java 2009-06-26 13:03:39 UTC (rev 90628)
+++ projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/JBXBValueMetaDataConverter.java 2009-06-26 13:04:46 UTC (rev 90629)
@@ -45,4 +45,14 @@
// TODO: is there an equivalent for MC?
return null;
}
+
+ protected String element()
+ {
+ return null;
+ }
+
+ public String toXML(B beanMetaData)
+ {
+ return "";
+ }
}
\ No newline at end of file
Modified: projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/JavaBeanValueMetaDateConverter.java
===================================================================
--- projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/JavaBeanValueMetaDateConverter.java 2009-06-26 13:03:39 UTC (rev 90628)
+++ projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/JavaBeanValueMetaDateConverter.java 2009-06-26 13:04:46 UTC (rev 90629)
@@ -22,6 +22,7 @@
package org.jboss.mc.tools.jmx.convert;
import java.util.Collection;
+import java.util.Map;
import org.jboss.beans.metadata.plugins.AbstractBeanMetaData;
import org.jboss.beans.metadata.plugins.AbstractPropertyMetaData;
@@ -45,7 +46,7 @@
public AbstractBeanMetaData toMCMetaData(ServiceJavaBeanValueMetaData beanMetaData, Collection<String> unhandledAttributes)
{
- Element element = ((ServiceJavaBeanValueMetaData) beanMetaData).getElement();
+ Element element = beanMetaData.getElement();
AbstractBeanMetaData result = new AbstractBeanMetaData(element.getAttribute("attributeClass"));
NodeList properties = element.getElementsByTagName("property");
for(int n = 0; n < properties.getLength(); n ++)
@@ -63,4 +64,18 @@
}
return result;
}
+
+ protected String element()
+ {
+ return "bean";
+ }
+
+ public String toXML(AbstractBeanMetaData beanMetaData)
+ {
+ Map<String, ?> attributes = null; // TODO; name, class
+ String start = startTag(attributes);
+ String props = ""; // TODO; properties
+ String end = endTag();
+ return start + props + end;
+ }
}
Modified: projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/MetaDataConverter.java
===================================================================
--- projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/MetaDataConverter.java 2009-06-26 13:03:39 UTC (rev 90628)
+++ projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/MetaDataConverter.java 2009-06-26 13:04:46 UTC (rev 90629)
@@ -36,5 +36,7 @@
{
BeanNameService NAME_TRANSLATOR = new InputNameService();
- public abstract B toMCMetaData(S serviceMetaData, Collection<String> unhandledAtributes);
+ B toMCMetaData(S serviceMetaData, Collection<String> unhandledAtributes);
+
+ String toXML(B beanMetaData);
}
\ No newline at end of file
Modified: projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/ServiceMetaDataConverter.java
===================================================================
--- projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/ServiceMetaDataConverter.java 2009-06-26 13:03:39 UTC (rev 90628)
+++ projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/ServiceMetaDataConverter.java 2009-06-26 13:04:46 UTC (rev 90629)
@@ -42,7 +42,7 @@
* @version $Revision$
*
*/
-public class ServiceMetaDataConverter implements MetaDataConverter<ServiceMetaData, BeanMetaData>
+public class ServiceMetaDataConverter extends AbstractMetaDataConverter<ServiceMetaData, BeanMetaData>
{
private JMXAnnotationStrategy jmxAnnotationStrategy;
private ConstructorMetaDataConverter constructorConverter;
@@ -197,5 +197,15 @@
annotations.add(jmxAnnotation);
}
beanMetaData.setAnnotations(annotations);
- }
+ }
+
+ protected String element()
+ {
+ return "bean";
+ }
+
+ public String toXML(BeanMetaData beanMetaData)
+ {
+ return ""; // TODO -- impl all via sub-converters
+ }
}
\ No newline at end of file
Modified: projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/TextValueMetaDataConverter.java
===================================================================
--- projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/TextValueMetaDataConverter.java 2009-06-26 13:03:39 UTC (rev 90628)
+++ projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/TextValueMetaDataConverter.java 2009-06-26 13:04:46 UTC (rev 90629)
@@ -43,4 +43,14 @@
{
return new StringValueMetaData(valueMetaData.getText());
}
+
+ protected String element()
+ {
+ return "value";
+ }
+
+ public String toXML(StringValueMetaData beanMetaData)
+ {
+ return simpleElement(beanMetaData.getValue());
+ }
}
\ No newline at end of file
Modified: projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/ValueFactoryMetaDataConverter.java
===================================================================
--- projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/ValueFactoryMetaDataConverter.java 2009-06-26 13:03:39 UTC (rev 90628)
+++ projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/ValueFactoryMetaDataConverter.java 2009-06-26 13:04:46 UTC (rev 90629)
@@ -77,4 +77,14 @@
}
return metaData;
}
+
+ protected String element()
+ {
+ return "value-factory";
+ }
+
+ public String toXML(AbstractValueFactoryMetaData beanMetaData)
+ {
+ return ""; // TODO -- real impl
+ }
}
\ No newline at end of file
Modified: projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/ValueMetaDataConverter.java
===================================================================
--- projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/ValueMetaDataConverter.java 2009-06-26 13:03:39 UTC (rev 90628)
+++ projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/convert/ValueMetaDataConverter.java 2009-06-26 13:04:46 UTC (rev 90629)
@@ -43,4 +43,14 @@
{
throw new RuntimeException("Unexpected value type: " + (valueMetaData == null? valueMetaData: valueMetaData.getClass().getName()));
}
+
+ protected String element()
+ {
+ return null; // TODO -- check what goes here, if anything?
+ }
+
+ public String toXML(ValueMetaData beanMetaData)
+ {
+ return ""; // TODO; real impl?
+ }
}
\ No newline at end of file
Modified: projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/naming/AutoIncrementNameService.java
===================================================================
--- projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/naming/AutoIncrementNameService.java 2009-06-26 13:03:39 UTC (rev 90628)
+++ projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/naming/AutoIncrementNameService.java 2009-06-26 13:04:46 UTC (rev 90629)
@@ -21,9 +21,6 @@
*/
package org.jboss.mc.tools.jmx.naming;
-import java.util.HashMap;
-import java.util.Map;
-
/**
* @author <a href="flavia.rainone at jboss.com">Flavia Rainone</a>
* @version $Revision$
@@ -32,16 +29,15 @@
public class AutoIncrementNameService extends BeanNameService
{
private int count = 0;
- private Map<String, String> names = new HashMap<String, String>();
public String translate(String serviceName)
{
- if (names.containsKey(serviceName))
- {
- return names.get(serviceName);
- }
- String name = "bean" + ++count;
- names.put(serviceName, name);
+ String name = getCachedName(serviceName);
+ if (name != null)
+ return name;
+
+ name = "bean" + ++count;
+ putCachedName(serviceName, name);
return name;
}
}
\ No newline at end of file
Modified: projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/naming/BeanNameService.java
===================================================================
--- projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/naming/BeanNameService.java 2009-06-26 13:03:39 UTC (rev 90628)
+++ projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/naming/BeanNameService.java 2009-06-26 13:04:46 UTC (rev 90629)
@@ -21,6 +21,9 @@
*/
package org.jboss.mc.tools.jmx.naming;
+import java.util.Map;
+import java.util.HashMap;
+
import org.jboss.system.metadata.ServiceMetaData;
/**
@@ -30,10 +33,22 @@
*/
public abstract class BeanNameService
{
+ private Map<String, String> cachedNames = new HashMap<String, String>();
+
public String translate(ServiceMetaData service)
{
return translate(service.getObjectName().getCanonicalName());
}
public abstract String translate(String serviceName);
+
+ protected String getCachedName(String key)
+ {
+ return cachedNames.get(key);
+ }
+
+ protected void putCachedName(String key, String name)
+ {
+ cachedNames.put(key, name);
+ }
}
\ No newline at end of file
Modified: projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/naming/InputNameService.java
===================================================================
--- projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/naming/InputNameService.java 2009-06-26 13:03:39 UTC (rev 90628)
+++ projects/mc-tools/smd2bmd/trunk/src/main/java/org/jboss/mc/tools/jmx/naming/InputNameService.java 2009-06-26 13:04:46 UTC (rev 90629)
@@ -21,28 +21,22 @@
*/
package org.jboss.mc.tools.jmx.naming;
-import java.util.HashMap;
-import java.util.Map;
-
import org.jboss.mc.tools.jmx.IOUtil;
/**
* @author <a href="flavia.rainone at jboss.com">Flavia Rainone</a>
* @version $Revision$
- *
*/
public class InputNameService extends BeanNameService
{
- private Map<String, String> names = new HashMap<String, String>();
-
public String translate(String serviceName)
{
- if (names.containsKey(serviceName))
- {
- return names.get(serviceName);
- }
- String name = IOUtil.inputName("Type in the name of the bean name of Mbean " + serviceName);
- names.put(serviceName, name);
+ String name = getCachedName(serviceName);
+ if (name != null)
+ return name;
+
+ name = IOUtil.inputName("Type in the name of the bean name of Mbean " + serviceName);
+ putCachedName(serviceName, name);
return name;
}
}
\ No newline at end of file
More information about the jboss-cvs-commits
mailing list