[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