[jboss-cvs] JBossAS SVN: r93647 - in projects/jboss-man/trunk/metatype/src/main/java/org/jboss/metatype: plugins/values and 1 other directory.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Thu Sep 17 10:39:08 EDT 2009
Author: emuckenhuber
Date: 2009-09-17 10:39:07 -0400 (Thu, 17 Sep 2009)
New Revision: 93647
Modified:
projects/jboss-man/trunk/metatype/src/main/java/org/jboss/metatype/api/values/MapCompositeValueSupport.java
projects/jboss-man/trunk/metatype/src/main/java/org/jboss/metatype/plugins/values/DefaultMetaValueFactory.java
Log:
port missing changes from 2_1 branch
Modified: projects/jboss-man/trunk/metatype/src/main/java/org/jboss/metatype/api/values/MapCompositeValueSupport.java
===================================================================
--- projects/jboss-man/trunk/metatype/src/main/java/org/jboss/metatype/api/values/MapCompositeValueSupport.java 2009-09-17 13:38:57 UTC (rev 93646)
+++ projects/jboss-man/trunk/metatype/src/main/java/org/jboss/metatype/api/values/MapCompositeValueSupport.java 2009-09-17 14:39:07 UTC (rev 93647)
@@ -27,12 +27,15 @@
import java.util.List;
import java.util.Map;
-import org.jboss.metatype.api.types.CompositeMetaType;
import org.jboss.metatype.api.types.MapCompositeMetaType;
import org.jboss.metatype.api.types.MetaType;
/**
- * A CompositeValue for Map<String,MetaValue>
+ * A {@link CompositeValue} representing a <code>Map<String,MetaValue></code>, where the set of allowed keys is
+ * specified by the associated {@link MapCompositeMetaType}, and where all values must be of the same MetaType.
+ *
+ * To represent a <code>Map<String,MetaValue></code> where values may have different MetaTypes, use
+ * {@link CompositeValueSupport} instead.
*
* @author Scott.Stark at jboss.org
* @version $Revision$
@@ -92,6 +95,11 @@
map.put(key, value);
}
+ public MetaValue remove(String key)
+ {
+ return map.remove(key);
+ }
+
public MetaValue[] getAll(String[] keys)
{
List<MetaValue> values = new ArrayList<MetaValue>();
@@ -107,7 +115,7 @@
return values.toArray(mvs);
}
- public CompositeMetaType getMetaType()
+ public MapCompositeMetaType getMetaType()
{
return mapType;
}
@@ -116,6 +124,7 @@
{
return map.values();
}
+
@Override
public boolean equals(Object obj)
{
@@ -136,14 +145,19 @@
return false;
return map.equals(otherMap);
}
+
@Override
public int hashCode()
{
return map.hashCode();
}
+
@Override
public String toString()
{
- return mapType + ":" + map;
+ StringBuilder buffer = new StringBuilder(getClass().getSimpleName()).append(":");
+ buffer.append(" mapType=[").append(mapType).append("]");
+ buffer.append(" map=[").append(map).append("]");
+ return buffer.toString();
}
}
Modified: projects/jboss-man/trunk/metatype/src/main/java/org/jboss/metatype/plugins/values/DefaultMetaValueFactory.java
===================================================================
--- projects/jboss-man/trunk/metatype/src/main/java/org/jboss/metatype/plugins/values/DefaultMetaValueFactory.java 2009-09-17 13:38:57 UTC (rev 93646)
+++ projects/jboss-man/trunk/metatype/src/main/java/org/jboss/metatype/plugins/values/DefaultMetaValueFactory.java 2009-09-17 14:39:07 UTC (rev 93647)
@@ -36,11 +36,12 @@
import java.util.Iterator;
import java.util.List;
import java.util.Map;
-import java.util.Map.Entry;
import java.util.Set;
import java.util.SortedSet;
import java.util.Stack;
import java.util.WeakHashMap;
+import java.util.Map.Entry;
+
import javax.management.ObjectName;
import org.jboss.beans.info.spi.BeanInfo;
@@ -90,8 +91,9 @@
/**
* DefaultMetaValueFactory.
*
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
* @author <a href="adrian at jboss.com">Adrian Brock</a>
- * @author <a href="ales.justin at jboss.com">Ales Justin</a>
+ * @author Scott.Stark at jboss.org
* @version $Revision$
*/
public class DefaultMetaValueFactory extends MetaValueFactory
@@ -549,7 +551,6 @@
{
return internalCreate(value, type, null);
}
-
@Override
public MetaValue create(Object value, MetaType type)
{
@@ -794,11 +795,11 @@
MetaValue domain = compositeValue.get("domain");
String domainUnwrap = (String) unwrap(domain, String.class);
MetaValue keys = compositeValue.get("keyPropertyList");
- PropertiesMetaValue keysUnwrap = null;
+ Hashtable keysUnwrap = null;
if(keys instanceof PropertiesMetaValue)
keysUnwrap = (PropertiesMetaValue) keys;
-
- return PropertiesObjectNameMetaMapper.createObjectName(domainUnwrap, keysUnwrap);
+ ObjectName name = new ObjectName(domainUnwrap, keysUnwrap);
+ return name;
}
Object bean = createNewInstance(beanInfo);
More information about the jboss-cvs-commits
mailing list