[jboss-cvs] JBossAS SVN: r66169 - in projects/microcontainer/trunk/deployers-impl/src/tests/org/jboss/test/deployers: managed/test and 1 other directory.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Tue Oct 16 05:04:36 EDT 2007
Author: alesj
Date: 2007-10-16 05:04:36 -0400 (Tue, 16 Oct 2007)
New Revision: 66169
Added:
projects/microcontainer/trunk/deployers-impl/src/tests/org/jboss/test/deployers/deployer/support/SimpleMetaData.java
Modified:
projects/microcontainer/trunk/deployers-impl/src/tests/org/jboss/test/deployers/deployer/support/TestServiceMetaData.java
projects/microcontainer/trunk/deployers-impl/src/tests/org/jboss/test/deployers/deployer/support/TestServiceMetaDataICF.java
projects/microcontainer/trunk/deployers-impl/src/tests/org/jboss/test/deployers/managed/test/DeployerManagedDeploymentUnitTestCase.java
Log:
Component name and set value tests.
Added: projects/microcontainer/trunk/deployers-impl/src/tests/org/jboss/test/deployers/deployer/support/SimpleMetaData.java
===================================================================
--- projects/microcontainer/trunk/deployers-impl/src/tests/org/jboss/test/deployers/deployer/support/SimpleMetaData.java (rev 0)
+++ projects/microcontainer/trunk/deployers-impl/src/tests/org/jboss/test/deployers/deployer/support/SimpleMetaData.java 2007-10-16 09:04:36 UTC (rev 66169)
@@ -0,0 +1,69 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, 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.test.deployers.deployer.support;
+
+import java.io.Serializable;
+
+import org.jboss.managed.api.annotation.ManagementComponent;
+import org.jboss.managed.api.annotation.ManagementObject;
+import org.jboss.managed.api.annotation.ManagementObjectID;
+import org.jboss.managed.api.annotation.ManagementProperty;
+
+/**
+ * Simple meta data.
+ *
+ * @author Ales.Justin at jboss.org
+ */
+ at ManagementObject(componentType = @ManagementComponent(type = "SimpleType", subtype = "LocalTx"))
+public class SimpleMetaData implements Serializable
+{
+ private static final long serialVersionUID = 1L;
+
+ public enum SecurityDeploymentType {NONE, APPLICATION, DOMAIN, DOMAIN_AND_APPLICATION}
+
+ private String domain;
+ private SimpleMetaData.SecurityDeploymentType type;
+
+ @ManagementProperty(name="domain-name")
+ @ManagementObjectID(type="SimpleDomain")
+ public String getDomain()
+ {
+ return domain;
+ }
+
+ public void setDomain(String domain)
+ {
+ this.domain = domain;
+ }
+
+ @ManagementProperty(name="security-criteria")
+ public SimpleMetaData.SecurityDeploymentType getType()
+ {
+ return type;
+ }
+
+ public void setType(SimpleMetaData.SecurityDeploymentType type)
+ {
+ this.type = type;
+ }
+
+}
Modified: projects/microcontainer/trunk/deployers-impl/src/tests/org/jboss/test/deployers/deployer/support/TestServiceMetaData.java
===================================================================
--- projects/microcontainer/trunk/deployers-impl/src/tests/org/jboss/test/deployers/deployer/support/TestServiceMetaData.java 2007-10-16 08:38:26 UTC (rev 66168)
+++ projects/microcontainer/trunk/deployers-impl/src/tests/org/jboss/test/deployers/deployer/support/TestServiceMetaData.java 2007-10-16 09:04:36 UTC (rev 66169)
@@ -24,14 +24,16 @@
import java.io.Serializable;
import java.util.List;
+import org.jboss.managed.api.annotation.ManagementObject;
+
/**
* The mbean service metadata
*
* @author Scott.Stark at jboss.org
* @version $Revision$
*/
-public class TestServiceMetaData
- implements Serializable
+ at ManagementObject
+public class TestServiceMetaData implements Serializable
{
private static final long serialVersionUID = 1;
@@ -40,6 +42,8 @@
/** The code */
private String code;
+
+ /**The attributes */
private List<TestServiceAttributeMetaData> attributes;
public String getCode()
@@ -61,7 +65,6 @@
{
this.objectName = objectName;
}
-
public List<TestServiceAttributeMetaData> getAttributes()
{
Modified: projects/microcontainer/trunk/deployers-impl/src/tests/org/jboss/test/deployers/deployer/support/TestServiceMetaDataICF.java
===================================================================
--- projects/microcontainer/trunk/deployers-impl/src/tests/org/jboss/test/deployers/deployer/support/TestServiceMetaDataICF.java 2007-10-16 08:38:26 UTC (rev 66168)
+++ projects/microcontainer/trunk/deployers-impl/src/tests/org/jboss/test/deployers/deployer/support/TestServiceMetaDataICF.java 2007-10-16 09:04:36 UTC (rev 66169)
@@ -79,13 +79,13 @@
public void setValue(BeanInfo beanInfo, ManagedProperty property, TestServiceMetaData object, MetaValue value)
{
String name = getPropertyName(property);
+ PropertyInfo propertyInfo = beanInfo.getProperty(name);
for (TestServiceAttributeMetaData amd : object.getAttributes())
{
if (amd.getName().equals(name))
{
- Class clazz = value != null ? value.getClass() : null;
- amd.setValue(metaValueFactory.unwrap(value, clazz));
+ amd.setValue(metaValueFactory.unwrap(value, propertyInfo.getType()));
break;
}
}
Modified: projects/microcontainer/trunk/deployers-impl/src/tests/org/jboss/test/deployers/managed/test/DeployerManagedDeploymentUnitTestCase.java
===================================================================
--- projects/microcontainer/trunk/deployers-impl/src/tests/org/jboss/test/deployers/managed/test/DeployerManagedDeploymentUnitTestCase.java 2007-10-16 08:38:26 UTC (rev 66168)
+++ projects/microcontainer/trunk/deployers-impl/src/tests/org/jboss/test/deployers/managed/test/DeployerManagedDeploymentUnitTestCase.java 2007-10-16 09:04:36 UTC (rev 66169)
@@ -49,6 +49,7 @@
import org.jboss.test.deployers.deployer.support.MCFDeployer;
import org.jboss.test.deployers.deployer.support.SecMetaData;
import org.jboss.test.deployers.deployer.support.SecurityDeployment;
+import org.jboss.test.deployers.deployer.support.SimpleMetaData;
import org.jboss.test.deployers.deployer.support.TestServiceAttributeMetaData;
import org.jboss.test.deployers.deployer.support.TestServiceMetaData;
import org.jboss.test.deployers.deployer.support.TestServiceMetaDataICF;
@@ -59,6 +60,7 @@
* ManagedDeployment unit tests.
*
* @author Scott.Stark at jboss.org
+ * @author Ales.Justin at jboss.org
* @version $Revision$
*/
public class DeployerManagedDeploymentUnitTestCase extends AbstractDeployerTest
@@ -75,8 +77,7 @@
super(name);
}
- public void testAnnotationScan()
- throws Exception
+ public void testAnnotationScan() throws Exception
{
ManagedObjectFactory mof = ManagedObjectFactory.getInstance();
ManagedObject mo = mof.createManagedObject(DSMetaData.class);
@@ -86,14 +87,53 @@
assertEquals(2, props.size());
}
- public void testManagedDeployment()
- throws Exception
+ public void testComponentNameAndSetValue() throws Exception
{
DeployerClient main = getMainDeployer();
MockProfileService ps = new MockProfileService(main);
ManagedObjectFactory mof = ManagedObjectFactory.getInstance();
TestServiceMetaDataICF tsicf = new TestServiceMetaDataICF();
mof.setInstanceClassFactory(TestServiceMetaData.class, tsicf);
+
+ // Deploy a datasource with local and xa factories
+ Deployment ctx1 = createSimpleDeployment("deployment1");
+ MutableAttachments a1 = (MutableAttachments) ctx1.getPredeterminedManagedObjects();
+ // The mbeans associated with the local DS
+ TestServiceMetaData localMBeans = new TestServiceMetaData();
+ localMBeans.setObjectName("jboss.jca:service.SecurityDomain");
+ localMBeans.setCode(SimpleMetaData.class.getName());
+ ArrayList<TestServiceAttributeMetaData> localMBeanAttrs = new ArrayList<TestServiceAttributeMetaData>();
+ localMBeanAttrs.add(new TestServiceAttributeMetaData("java:/jaas/domain1", "domain"));
+ TestServiceAttributeMetaData typeAttribute = new TestServiceAttributeMetaData(SimpleMetaData.SecurityDeploymentType.NONE, "type");
+ localMBeanAttrs.add(typeAttribute);
+ localMBeans.setAttributes(localMBeanAttrs);
+ a1.addAttachment(TestServiceMetaData.class, localMBeans);
+ ps.addDeployment(ctx1);
+
+ ps.process();
+
+ ManagedObject mo = ps.getManagedObject("java:/jaas/domain1/SimpleDomain");
+ assertNotNull(mo);
+ assertEquals(localMBeans.getObjectName(), mo.getComponentName());
+
+ ManagedDeployment md = ps.getManagedDeployment("deployment1");
+ assertNotNull(md);
+ ManagedComponent mc = md.getComponent("java:/jaas/domain1");
+ assertNotNull(mc);
+ ManagedProperty prop = mc.getProperty("security-criteria");
+ assertNotNull(prop);
+ assertEquals(typeAttribute.getValue(), SimpleMetaData.SecurityDeploymentType.NONE);
+ prop.setValue(SimpleMetaData.SecurityDeploymentType.APPLICATION);
+ assertEquals(typeAttribute.getValue(), SimpleMetaData.SecurityDeploymentType.APPLICATION);
+ }
+
+ public void testManagedDeployment() throws Exception
+ {
+ DeployerClient main = getMainDeployer();
+ MockProfileService ps = new MockProfileService(main);
+ ManagedObjectFactory mof = ManagedObjectFactory.getInstance();
+ TestServiceMetaDataICF tsicf = new TestServiceMetaDataICF();
+ mof.setInstanceClassFactory(TestServiceMetaData.class, tsicf);
// Deploy a datasource with local and xa factories
Deployment ctx1 = createSimpleDeployment("deployment1");
More information about the jboss-cvs-commits
mailing list