[jboss-cvs] JBossAS SVN: r81330 - in projects/jboss-man/branches/Branch_2_0/managed/src: main/java/org/jboss/managed/plugins and 3 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Wed Nov 19 17:13:55 EST 2008
Author: scott.stark at jboss.org
Date: 2008-11-19 17:13:55 -0500 (Wed, 19 Nov 2008)
New Revision: 81330
Modified:
projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/api/Fields.java
projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/api/ManagedObject.java
projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/api/ManagedOperation.java
projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/api/ManagedParameter.java
projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/api/ManagedProperty.java
projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/api/MutableManagedObject.java
projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/plugins/DefaultFieldsImpl.java
projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/plugins/ManagedOperationImpl.java
projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/plugins/ManagedParameterImpl.java
projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/plugins/ManagedPropertyImpl.java
projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/plugins/WritethroughManagedPropertyImpl.java
projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/plugins/factory/AbstractManagedObjectFactory.java
projects/jboss-man/branches/Branch_2_0/managed/src/test/java/org/jboss/test/managed/factory/test/ManagementPropertyUnitTestCase.java
projects/jboss-man/branches/Branch_2_0/managed/src/test/java/org/jboss/test/managed/mock/MockDOMFields.java
projects/jboss-man/branches/Branch_2_0/managed/src/test/java/org/jboss/test/managed/mock/MockTest.java
Log:
JBMAN-36, JBMAN-37 Consistent MetaValue usage and Fields.VIEW_USE. svn merge -c 81298 from trunk.
Modified: projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/api/Fields.java
===================================================================
--- projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/api/Fields.java 2008-11-19 22:12:04 UTC (rev 81329)
+++ projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/api/Fields.java 2008-11-19 22:13:55 UTC (rev 81330)
@@ -26,9 +26,11 @@
/**
* Fields.
*
- * TODO the fields names should be annotation class names (where relevant) when the annotations exist
+ * TODO the fields names should be annotation class names (where relevant)
+ * when the annotations exist
* @author <a href="adrian at jboss.com">Adrian Brock</a>
- * @version $Revision: 1.1 $
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
*/
public interface Fields extends Serializable
{
@@ -68,6 +70,9 @@
/** The attachment */
String ATTACHMENT = "attachment";
+ /** The ViewUses */
+ String VIEW_USE = "viewUse";
+
// TODO other standard fields here
/**
@@ -76,7 +81,7 @@
* @param name the name
* @return the field value
*/
- Serializable getField(String name);
+ Object getField(String name);
/**
* Set a field with the given name
@@ -84,5 +89,5 @@
* @param name the name
* @param value the field value
*/
- void setField(String name, Serializable value);
+ void setField(String name, Object value);
}
Property changes on: projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/api/Fields.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Modified: projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/api/ManagedObject.java
===================================================================
--- projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/api/ManagedObject.java 2008-11-19 22:12:04 UTC (rev 81329)
+++ projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/api/ManagedObject.java 2008-11-19 22:13:55 UTC (rev 81330)
@@ -21,7 +21,6 @@
*/
package org.jboss.managed.api;
-import java.io.Serializable;
import java.lang.annotation.Annotation;
import java.util.Map;
@@ -40,12 +39,15 @@
*
* @author <a href="adrian at jboss.com">Adrian Brock</a>
* @author Scott.Stark at jboss.org
- * @version $Revision: 1.1 $
+ * @version $Revision$
*/
public interface ManagedObject extends ManagedCommon
{
/**
- * Get the underlying object
+ * Get the underlying object. Note that this is only useful in the server
+ * environment where the ManagedObject is associated with a deployment
+ * attachment. In a client environment (admin tool for example), this is
+ * most likely null.
*
* @return the underlying object
*/
@@ -65,5 +67,9 @@
*/
Object getComponentName();
+ /**
+ * Get the parent ManagedObject
+ * @return the parent if one exists, null otherwise
+ */
public ManagedObject getParent();
}
Property changes on: projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/api/ManagedObject.java
___________________________________________________________________
Name: svn:keywords
+ Id Revision
Modified: projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/api/ManagedOperation.java
===================================================================
--- projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/api/ManagedOperation.java 2008-11-19 22:12:04 UTC (rev 81329)
+++ projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/api/ManagedOperation.java 2008-11-19 22:13:55 UTC (rev 81330)
@@ -84,5 +84,5 @@
* @param param the varags for the operation parameters.
* @return the MetaValue for the result.
*/
- public Object invoke(MetaValue... param);
+ public MetaValue invoke(MetaValue... param);
}
Modified: projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/api/ManagedParameter.java
===================================================================
--- projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/api/ManagedParameter.java 2008-11-19 22:12:04 UTC (rev 81329)
+++ projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/api/ManagedParameter.java 2008-11-19 22:13:55 UTC (rev 81330)
@@ -86,14 +86,14 @@
*
* @return the value
*/
- Object getValue();
+ MetaValue getValue();
/**
* Set the value
*
* @param value the value
*/
- void setValue(Serializable value);
+ void setValue(MetaValue value);
/**
* Get the legal values
@@ -122,6 +122,6 @@
* @param value the value
* @return null for a valid value, an error message otherwise
*/
- String checkValidValue(Serializable value);
+ String checkValidValue(MetaValue value);
}
Modified: projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/api/ManagedProperty.java
===================================================================
--- projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/api/ManagedProperty.java 2008-11-19 22:12:04 UTC (rev 81329)
+++ projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/api/ManagedProperty.java 2008-11-19 22:13:55 UTC (rev 81330)
@@ -133,14 +133,14 @@
*
* @return the value
*/
- Object getValue();
+ MetaValue getValue();
/**
* Set the value
*
* @param value the value
*/
- void setValue(Serializable value);
+ void setValue(MetaValue value);
/**
* Get the legal values
Modified: projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/api/MutableManagedObject.java
===================================================================
--- projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/api/MutableManagedObject.java 2008-11-19 22:12:04 UTC (rev 81329)
+++ projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/api/MutableManagedObject.java 2008-11-19 22:13:55 UTC (rev 81330)
@@ -57,7 +57,7 @@
*/
public void setParent(ManagedObject parent);
/**
- * Set the metadata attachment.
+ * Set the metadata attachment. This is only
* @param attachment - the metadata attachment this ManagedObject maps to.
*/
public void setAttachment(Object attachment);
Modified: projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/plugins/DefaultFieldsImpl.java
===================================================================
--- projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/plugins/DefaultFieldsImpl.java 2008-11-19 22:12:04 UTC (rev 81329)
+++ projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/plugins/DefaultFieldsImpl.java 2008-11-19 22:13:55 UTC (rev 81330)
@@ -28,6 +28,7 @@
import java.util.Set;
import org.jboss.managed.api.Fields;
+import org.jboss.managed.api.annotation.ViewUse;
import org.jboss.metatype.api.types.MetaType;
import org.jboss.metatype.api.values.MetaValue;
import org.jboss.metatype.api.values.SimpleValue;
@@ -36,7 +37,7 @@
* A default implementation of the Fields interface.
*
* @author Scott.Stark at jboss.org
- * @version $Revision:$
+ * @version $Revision$
*/
public class DefaultFieldsImpl
implements Fields
@@ -47,7 +48,7 @@
private static final long serialVersionUID = 1;
/** The fields */
- private HashMap<String, Serializable> fields = new HashMap<String, Serializable>();
+ private HashMap<String, Object> fields = new HashMap<String, Object>();
/**
* Create a new DefaultFieldsImpl.
@@ -131,9 +132,9 @@
*
* @return the value
*/
- public Object getValue()
+ public MetaValue getValue()
{
- return getField(VALUE);
+ return getField(VALUE, MetaValue.class);
}
/**
@@ -141,12 +142,29 @@
*
* @param value the value
*/
- public void setValue(Serializable value)
+ public void setValue(MetaValue value)
{
setField(VALUE, value);
}
/**
+ * Get the view use
+ * @return the view use field
+ */
+ public ViewUse[] getViewUse()
+ {
+ return getField(VIEW_USE, ViewUse[].class);
+ }
+ /**
+ * Set the view use
+ * @param use - the view use
+ */
+ public void setViewUse(ViewUse[] use)
+ {
+ setField(VIEW_USE, use);
+ }
+
+ /**
* Get the legal values
*
* @return the values
@@ -238,7 +256,7 @@
*
* @param name the field name
*/
- public Serializable getField(String name)
+ public Object getField(String name)
{
return fields.get(name);
}
@@ -249,7 +267,7 @@
* @param name the field name
* @param value the value
*/
- public void setField(String name, Serializable value)
+ public void setField(String name, Object value)
{
fields.put(name, value);
}
@@ -270,7 +288,7 @@
if (expected == null)
throw new IllegalArgumentException("Null expected type");
- Serializable field = getField(fieldName);
+ Object field = getField(fieldName);
if (field == null)
return null;
@@ -291,6 +309,30 @@
}
/**
+ * Display key fields like name, metaType and value
+ */
+ @Override
+ public String toString()
+ {
+ StringBuilder sb = new StringBuilder(super.toString());
+ //
+ sb.append('(');
+ sb.append(NAME);
+ sb.append('=');
+ sb.append(getName());
+ sb.append(',');
+ sb.append(META_TYPE);
+ sb.append('=');
+ sb.append(getMetaType());
+ sb.append(',');
+ sb.append(VALUE);
+ sb.append('=');
+ sb.append(getValue());
+ sb.append(')');
+ return sb.toString();
+ }
+
+ /**
* Only write out the fields that should be usable by a remote client.
* Excludes:
* PROPERTY_INFO
@@ -302,7 +344,7 @@
private void writeObject(java.io.ObjectOutputStream out)
throws IOException
{
- for (Map.Entry<String, Serializable> entry : fields.entrySet())
+ for (Map.Entry<String, Object> entry : fields.entrySet())
{
if(entry.getKey().equals(PROPERTY_INFO))
continue;
@@ -316,7 +358,7 @@
private void readObject(java.io.ObjectInputStream in)
throws IOException, ClassNotFoundException
{
- fields = new HashMap<String, Serializable>();
+ fields = new HashMap<String, Object>();
String key;
do
{
Property changes on: projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/plugins/DefaultFieldsImpl.java
___________________________________________________________________
Name: svn:keywords
- Id,Revision
+ Id Revision
Modified: projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/plugins/ManagedOperationImpl.java
===================================================================
--- projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/plugins/ManagedOperationImpl.java 2008-11-19 22:12:04 UTC (rev 81329)
+++ projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/plugins/ManagedOperationImpl.java 2008-11-19 22:13:55 UTC (rev 81330)
@@ -113,7 +113,7 @@
* is unknown. A runtime aspect that understand the context of this
* operation needs to perform the invocation.
*/
- public Object invoke(MetaValue... param)
+ public MetaValue invoke(MetaValue... param)
{
return null;
}
Modified: projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/plugins/ManagedParameterImpl.java
===================================================================
--- projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/plugins/ManagedParameterImpl.java 2008-11-19 22:12:04 UTC (rev 81329)
+++ projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/plugins/ManagedParameterImpl.java 2008-11-19 22:13:55 UTC (rev 81330)
@@ -92,7 +92,7 @@
if (expected == null)
throw new IllegalArgumentException("Null expected type");
- Serializable field = getFields().getField(fieldName);
+ Object field = getFields().getField(fieldName);
if (field == null)
return null;
@@ -172,12 +172,12 @@
setField(Fields.META_TYPE, type);
}
- public Object getValue()
+ public MetaValue getValue()
{
- return getField(Fields.VALUE, Object.class);
+ return getField(Fields.VALUE, MetaValue.class);
}
- public void setValue(Serializable value)
+ public void setValue(MetaValue value)
{
setField(Fields.VALUE, value);
}
@@ -228,7 +228,7 @@
setField(Fields.MAXIMUM_VALUE, (Serializable)value);
}
- public String checkValidValue(Serializable value)
+ public String checkValidValue(MetaValue value)
{
// TODO check min/max/etc.
return null;
Modified: projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/plugins/ManagedPropertyImpl.java
===================================================================
--- projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/plugins/ManagedPropertyImpl.java 2008-11-19 22:12:04 UTC (rev 81329)
+++ projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/plugins/ManagedPropertyImpl.java 2008-11-19 22:13:55 UTC (rev 81330)
@@ -27,6 +27,7 @@
import java.io.ObjectOutputStream;
import java.io.Serializable;
import java.lang.annotation.Annotation;
+import java.util.HashSet;
import java.util.Map;
import java.util.Set;
@@ -148,7 +149,7 @@
if (expected == null)
throw new IllegalArgumentException("Null expected type");
- Serializable field = getFields().getField(fieldName);
+ Object field = getFields().getField(fieldName);
if (field == null)
return null;
@@ -221,7 +222,7 @@
/**
* See if the property has the indicated ViewUse among its
- * @ManagementProperty annotation uses.
+ * @ManagementProperty annotation or VIEW_USE field uses.
*
* @param use - the ViewUse to check for
* @return true if the ViewUse exists in the property uses, false otherwise
@@ -229,14 +230,12 @@
public boolean hasViewUse(ViewUse use)
{
boolean hasViewUse = false;
- Map<String, Annotation> annotations = getAnnotations();
- if(annotations != null)
+ ViewUse[] uses = getViewUse();
+ if(uses != null)
{
- ManagementProperty mp = (ManagementProperty) annotations.get(ManagementProperty.class.getName());
- if(mp != null)
+ for(ViewUse vu : uses)
{
- for(ViewUse vu : mp.use())
- hasViewUse |= vu == use;
+ hasViewUse |= vu == use;
}
}
return hasViewUse;
@@ -257,16 +256,55 @@
setField(Fields.META_TYPE, type);
}
- public Object getValue()
+ public MetaValue getValue()
{
- return getField(Fields.VALUE, Object.class);
+ return getField(Fields.VALUE, MetaValue.class);
}
- public void setValue(Serializable value)
+ public void setValue(MetaValue value)
{
setField(Fields.VALUE, value);
}
+ public ViewUse[] getViewUse()
+ {
+ ViewUse[] use = {};
+ ViewUse[] useField = getField(Fields.VIEW_USE, ViewUse[].class);
+ // Also look to the ManagementProperty annotation
+ Map<String, Annotation> annotations = getAnnotations();
+ if(annotations != null)
+ {
+ ManagementProperty mp = (ManagementProperty) annotations.get(ManagementProperty.class.getName());
+ if(mp != null)
+ {
+ use = mp.use();
+ if(useField != null && useField.length > 0)
+ {
+ HashSet<ViewUse> uses = new HashSet<ViewUse>();
+ for(ViewUse vu : use)
+ {
+ uses.add(vu);
+ }
+ for(ViewUse vu : useField)
+ {
+ uses.add(vu);
+ }
+ use = new ViewUse[uses.size()];
+ uses.toArray(use);
+ }
+ }
+ }
+ else if(useField != null)
+ {
+ use = useField;
+ }
+ return use;
+ }
+ public void setViewUse(ViewUse[] use)
+ {
+ setField(Fields.VIEW_USE, use);
+ }
+
@SuppressWarnings("unchecked")
public Set<MetaValue> getLegalValues()
{
Modified: projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/plugins/WritethroughManagedPropertyImpl.java
===================================================================
--- projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/plugins/WritethroughManagedPropertyImpl.java 2008-11-19 22:12:04 UTC (rev 81329)
+++ projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/plugins/WritethroughManagedPropertyImpl.java 2008-11-19 22:13:55 UTC (rev 81330)
@@ -88,7 +88,7 @@
*/
@Override
@SuppressWarnings("unchecked")
- public void setValue(Serializable value)
+ public void setValue(MetaValue value)
{
super.setValue(value);
@@ -98,16 +98,10 @@
Object attachment = getManagedObject().getAttachment();
if (attachment != null)
{
- MetaValue metaValue;
- if (value instanceof MetaValue == false)
- metaValue = getValueFactory().create(value, propertyInfo.getType());
- else
- metaValue = (MetaValue)value;
-
ManagedObjectFactory mof = getObjectFactory();
InstanceClassFactory icf = mof.getInstanceClassFactory(attachment.getClass(), null);
BeanInfo beanInfo = propertyInfo.getBeanInfo();
- icf.setValue(beanInfo, this, attachment, metaValue);
+ icf.setValue(beanInfo, this, attachment, value);
}
}
}
Modified: projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/plugins/factory/AbstractManagedObjectFactory.java
===================================================================
--- projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/plugins/factory/AbstractManagedObjectFactory.java 2008-11-19 22:12:04 UTC (rev 81329)
+++ projects/jboss-man/branches/Branch_2_0/managed/src/main/java/org/jboss/managed/plugins/factory/AbstractManagedObjectFactory.java 2008-11-19 22:13:55 UTC (rev 81330)
@@ -315,11 +315,13 @@
}
ManagedObject result = createSkeletonManagedObject(moClass, metaData);
- if (result == null )
+ if (result == null)
{
log.debug("Null ManagedObject created for: "+moClass);
return null;
}
+ log.debug("Created skeleton ManagedObject: "+result);
+
if(result instanceof MutableManagedObject)
{
MutableManagedObject mmo = (MutableManagedObject) result;
@@ -436,7 +438,10 @@
// Work around JBMDR-51 by checking type/subtype
// if (mc.equals(AnnotationDefaults.COMP_TYPE) == false)
if (mc.type().length() > 0 || mc.subtype().length() > 0)
+ {
+ log.debug("ManagedObject("+name+") is ManagedComponent type: "+mc);
moAnnotations.put(ManagementComponent.class.getName(), mc);
+ }
// ManagementObject level default factory classes
moFieldsFactory = managementObject.fieldsFactory();
moConstraintsFactory = managementObject.constraintsFactory();
Modified: projects/jboss-man/branches/Branch_2_0/managed/src/test/java/org/jboss/test/managed/factory/test/ManagementPropertyUnitTestCase.java
===================================================================
--- projects/jboss-man/branches/Branch_2_0/managed/src/test/java/org/jboss/test/managed/factory/test/ManagementPropertyUnitTestCase.java 2008-11-19 22:12:04 UTC (rev 81329)
+++ projects/jboss-man/branches/Branch_2_0/managed/src/test/java/org/jboss/test/managed/factory/test/ManagementPropertyUnitTestCase.java 2008-11-19 22:13:55 UTC (rev 81330)
@@ -22,6 +22,7 @@
package org.jboss.test.managed.factory.test;
import java.lang.annotation.Annotation;
+import java.util.HashMap;
import java.util.Map;
import junit.framework.Test;
@@ -31,6 +32,9 @@
import org.jboss.managed.api.annotation.ManagementObjectID;
import org.jboss.managed.api.annotation.ManagementProperty;
import org.jboss.managed.api.annotation.ViewUse;
+import org.jboss.managed.plugins.ManagedPropertyImpl;
+import org.jboss.metatype.api.types.SimpleMetaType;
+import org.jboss.metatype.api.values.SimpleValueSupport;
import org.jboss.test.managed.factory.AbstractManagedObjectFactoryTest;
import org.jboss.test.managed.factory.support.ManagementPropertyAnnotations;
import org.jboss.test.managed.factory.support.ManagementPropertyDescription;
@@ -125,4 +129,36 @@
ManagedProperty stat = managedObject.getProperty("stat");
assertTrue("has ViewUse.STATISTIC", stat.hasViewUse(ViewUse.STATISTIC));
}
-}
\ No newline at end of file
+
+ /**
+ * Test the
+ */
+ @ManagementProperty(name="runtime-stat", use={ViewUse.STATISTIC})
+ public void testViewUseField()
+ throws Exception
+ {
+ ManagedPropertyImpl mp = new ManagedPropertyImpl("runtime");
+ mp.setMetaType(SimpleMetaType.LONG);
+ mp.setValue(SimpleValueSupport.wrap(1000));
+ mp.setViewUse(new ViewUse[]{ViewUse.RUNTIME});
+ assertTrue("has ViewUse.RUNTIME", mp.hasViewUse(ViewUse.RUNTIME));
+
+ ManagedPropertyImpl mp2 = new ManagedPropertyImpl("runtime-stat");
+ mp2.setMetaType(SimpleMetaType.LONG);
+ mp2.setValue(SimpleValueSupport.wrap(1000));
+ mp2.setViewUse(new ViewUse[]{ViewUse.RUNTIME, ViewUse.STATISTIC});
+ assertTrue("has ViewUse.RUNTIME", mp2.hasViewUse(ViewUse.RUNTIME));
+ assertTrue("has ViewUse.STATISTIC", mp2.hasViewUse(ViewUse.STATISTIC));
+
+ ManagedPropertyImpl mp3 = new ManagedPropertyImpl("runtime-stat");
+ mp3.setMetaType(SimpleMetaType.LONG);
+ mp3.setValue(SimpleValueSupport.wrap(1000));
+ mp3.setViewUse(new ViewUse[]{ViewUse.RUNTIME});
+ HashMap<String, Annotation> annotations = new HashMap<String, Annotation>();
+ ManagementProperty mpa = getClass().getMethod("testViewUseField", null).getAnnotation(ManagementProperty.class);
+ annotations.put(ManagementProperty.class.getName(), mpa);
+ mp3.setAnnotations(annotations);
+ assertTrue("has ViewUse.RUNTIME", mp3.hasViewUse(ViewUse.RUNTIME));
+ assertTrue("has ViewUse.STATISTIC", mp3.hasViewUse(ViewUse.STATISTIC));
+}
+}
Modified: projects/jboss-man/branches/Branch_2_0/managed/src/test/java/org/jboss/test/managed/mock/MockDOMFields.java
===================================================================
--- projects/jboss-man/branches/Branch_2_0/managed/src/test/java/org/jboss/test/managed/mock/MockDOMFields.java 2008-11-19 22:12:04 UTC (rev 81329)
+++ projects/jboss-man/branches/Branch_2_0/managed/src/test/java/org/jboss/test/managed/mock/MockDOMFields.java 2008-11-19 22:13:55 UTC (rev 81330)
@@ -56,7 +56,7 @@
this.elementName = elementName;
}
- public Serializable getField(String name)
+ public Object getField(String name)
{
if (NAME.equals(name))
return elementName;
@@ -74,7 +74,7 @@
return null;
}
- public void setField(String name, Serializable value)
+ public void setField(String name, Object value)
{
if (VALUE.equals(name))
{
Modified: projects/jboss-man/branches/Branch_2_0/managed/src/test/java/org/jboss/test/managed/mock/MockTest.java
===================================================================
--- projects/jboss-man/branches/Branch_2_0/managed/src/test/java/org/jboss/test/managed/mock/MockTest.java 2008-11-19 22:12:04 UTC (rev 81329)
+++ projects/jboss-man/branches/Branch_2_0/managed/src/test/java/org/jboss/test/managed/mock/MockTest.java 2008-11-19 22:13:55 UTC (rev 81330)
@@ -29,6 +29,7 @@
import org.jboss.managed.api.Fields;
import org.jboss.managed.api.ManagedObject;
import org.jboss.managed.api.ManagedProperty;
+import org.jboss.metatype.api.values.SimpleValueSupport;
import org.jboss.test.managed.ManagedTest;
/**
@@ -77,16 +78,16 @@
getLog().debug(mock.prettyPrint());
getLog().debug("Adding jndi-name...");
- mo.getProperty("jndi-name").setValue("DefaultDS");
+ mo.getProperty("jndi-name").setValue(SimpleValueSupport.wrap("DefaultDS"));
getLog().debug(mock.prettyPrint());
getLog().debug("Adding user and password...");
- mo.getProperty("user").setValue("Scott");
- mo.getProperty("password").setValue("Tiger");
+ mo.getProperty("user").setValue(SimpleValueSupport.wrap("Scott"));
+ mo.getProperty("password").setValue(SimpleValueSupport.wrap("Tiger"));
getLog().debug(mock.prettyPrint());
getLog().debug("Changing jndi-name...");
- mo.getProperty("jndi-name").setValue("ChangedDS");
+ mo.getProperty("jndi-name").setValue(SimpleValueSupport.wrap("ChangedDS"));
getLog().debug(mock.prettyPrint());
getLog().debug("Removing jndi-name...");
@@ -117,19 +118,22 @@
MockDataSourceManagedObject mock = new MockDataSourceManagedObject();
ManagedObject mo = mock;
- mo.getProperty("jndi-name").setValue("DefaultDS");
- mo.getProperty("user").setValue("Scott");
- mo.getProperty("password").setValue("Tiger");
- mo.getProperty("jndi-name").setValue("ChangedDS");
+ mo.getProperty("jndi-name").setValue(SimpleValueSupport.wrap("DefaultDS"));
+ mo.getProperty("user").setValue(SimpleValueSupport.wrap("Scott"));
+ mo.getProperty("password").setValue(SimpleValueSupport.wrap("Tiger"));
+ mo.getProperty("jndi-name").setValue(SimpleValueSupport.wrap("ChangedDS"));
getLog().debug(mock.prettyPrint());
byte[] data = super.serialize(mo);
ManagedObject mo2 = (ManagedObject) super.deserialize(data);
- assertEquals("jndiName", "ChangedDS", mo2.getProperty("jndi-name").getValue());
- assertEquals("user", "Scott", mo2.getProperty("user").getValue());
- assertEquals("password", "Tiger", mo2.getProperty("password").getValue());
+ assertEquals("jndiName", SimpleValueSupport.wrap("ChangedDS"),
+ mo2.getProperty("jndi-name").getValue());
+ assertEquals("user", SimpleValueSupport.wrap("Scott"),
+ mo2.getProperty("user").getValue());
+ assertEquals("password",SimpleValueSupport.wrap("Tiger"),
+ mo2.getProperty("password").getValue());
}
/**
@@ -145,12 +149,12 @@
ManagedObject mo = mock;
ManagedProperty jndiName = mo.getProperty("jndi-name");
- jndiName.setValue("DefaultDS");
+ jndiName.setValue(SimpleValueSupport.wrap("DefaultDS"));
ManagedProperty user = mo.getProperty("user");
- user.setValue("Scott");
+ user.setValue(SimpleValueSupport.wrap("Scott"));
ManagedProperty password = mo.getProperty("password");
- password.setValue("Tiger");
- jndiName.setValue("ChangedDS");
+ password.setValue(SimpleValueSupport.wrap("Tiger"));
+ jndiName.setValue(SimpleValueSupport.wrap("ChangedDS"));
HashMap<String, ManagedProperty> props = new HashMap<String, ManagedProperty>();
props.put(jndiName.getName(), jndiName);
@@ -160,13 +164,13 @@
HashMap<String, ManagedProperty> props2 = serializeDeserialize(props, HashMap.class);
ManagedProperty jndiName2 = props2.get("jndi-name");
- assertEquals("jndiName", "ChangedDS", jndiName2.getValue());
+ assertEquals("jndiName", SimpleValueSupport.wrap("ChangedDS"), jndiName2.getValue());
ManagedProperty jndiName3 = jndiName2.getManagedObject().getProperty("jndi-name");
- assertEquals("jndiName", "ChangedDS", jndiName3.getValue());
+ assertEquals("jndiName", SimpleValueSupport.wrap("ChangedDS"), jndiName3.getValue());
ManagedProperty user2 = props2.get("user");
- assertEquals("user", "Scott", user2.getValue());
+ assertEquals("user", SimpleValueSupport.wrap("Scott"), user2.getValue());
ManagedProperty password2 = props2.get("password");
- assertEquals("password", "Tiger", password2.getValue());
+ assertEquals("password", SimpleValueSupport.wrap("Tiger"), password2.getValue());
}
/**
More information about the jboss-cvs-commits
mailing list