[jboss-cvs] JBossAS SVN: r108172 - in projects/jboss-jca/trunk/common/src: main/java/org/jboss/jca/common/metadata/ra/common and 2 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu Sep 16 09:32:45 EDT 2010


Author: maeste
Date: 2010-09-16 09:32:37 -0400 (Thu, 16 Sep 2010)
New Revision: 108172

Added:
   projects/jboss-jca/trunk/common/src/test/resources/merger/connector-merging-connectiondefinition.xml
   projects/jboss-jca/trunk/common/src/test/resources/merger/connector-merging-with-ironjacamar-adminObj-multiple.xml
   projects/jboss-jca/trunk/common/src/test/resources/merger/connector-merging-with-ironjacamar-adminObj.xml
   projects/jboss-jca/trunk/common/src/test/resources/merger/connector-merging-with-ironjacamar-distributivity.xml
   projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-ignoring-not-enabled-connectiondefinition.xml
   projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-ignoring-not-matching-connectiondefinition.xml
   projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-admi-obj-multiple.xml
   projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-admi-obj-notenabled.xml
   projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-admi-obj-notmatching.xml
   projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-admi-obj.xml
   projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-connectiondefinition.xml
   projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-multiple-connectiondefinition.xml
   projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-with-connector-distributivity1.xml
   projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-with-connector-distributivity2.xml
   projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-with-connector-withNewProperty.xml
Modified:
   projects/jboss-jca/trunk/common/src/main/java/org/jboss/jca/common/metadata/merge/DefaultAdminObjectMatcher.java
   projects/jboss-jca/trunk/common/src/main/java/org/jboss/jca/common/metadata/merge/DefaultConnectionDefinitionMatcher.java
   projects/jboss-jca/trunk/common/src/main/java/org/jboss/jca/common/metadata/merge/Merger.java
   projects/jboss-jca/trunk/common/src/main/java/org/jboss/jca/common/metadata/ra/common/ConfigPropertyImpl.java
   projects/jboss-jca/trunk/common/src/main/java/org/jboss/jca/common/metadata/ra/common/ResourceAdapter1516Impl.java
   projects/jboss-jca/trunk/common/src/test/java/org/jboss/jca/common/metadata/merge/MergerTestCase.java
Log:
JBJCA-422: improved test suite. Fixed some bugs in Merger classi. The task is done for COmmonIronJacamar merging. It would be goood to add some tests on DS merging

Modified: projects/jboss-jca/trunk/common/src/main/java/org/jboss/jca/common/metadata/merge/DefaultAdminObjectMatcher.java
===================================================================
--- projects/jboss-jca/trunk/common/src/main/java/org/jboss/jca/common/metadata/merge/DefaultAdminObjectMatcher.java	2010-09-16 10:49:55 UTC (rev 108171)
+++ projects/jboss-jca/trunk/common/src/main/java/org/jboss/jca/common/metadata/merge/DefaultAdminObjectMatcher.java	2010-09-16 13:32:37 UTC (rev 108172)
@@ -40,7 +40,8 @@
    {
       if (!XsdString.isNull(left.getAdminobjectClass()))
       {
-         return left.getAdminobjectClass().getValue().trim().equals(right.getClassName().trim());
+         return right.isEnabled() &&
+                left.getAdminobjectClass().getValue().trim().equals(right.getClassName().trim());
       }
       else
       {

Modified: projects/jboss-jca/trunk/common/src/main/java/org/jboss/jca/common/metadata/merge/DefaultConnectionDefinitionMatcher.java
===================================================================
--- projects/jboss-jca/trunk/common/src/main/java/org/jboss/jca/common/metadata/merge/DefaultConnectionDefinitionMatcher.java	2010-09-16 10:49:55 UTC (rev 108171)
+++ projects/jboss-jca/trunk/common/src/main/java/org/jboss/jca/common/metadata/merge/DefaultConnectionDefinitionMatcher.java	2010-09-16 13:32:37 UTC (rev 108172)
@@ -42,7 +42,8 @@
    {
       if (!XsdString.isNull(left.getConnectionImplClass()))
       {
-         return left.getManagedConnectionFactoryClass().getValue().trim().equals(right.getClassName().trim());
+         return right.isEnabled() &&
+                left.getManagedConnectionFactoryClass().getValue().trim().equals(right.getClassName().trim());
       }
       else
       {

Modified: projects/jboss-jca/trunk/common/src/main/java/org/jboss/jca/common/metadata/merge/Merger.java
===================================================================
--- projects/jboss-jca/trunk/common/src/main/java/org/jboss/jca/common/metadata/merge/Merger.java	2010-09-16 10:49:55 UTC (rev 108171)
+++ projects/jboss-jca/trunk/common/src/main/java/org/jboss/jca/common/metadata/merge/Merger.java	2010-09-16 13:32:37 UTC (rev 108172)
@@ -88,7 +88,7 @@
       List<ConfigProperty> mergedProperties = new ArrayList<ConfigProperty>(original.size());
       for (ConfigProperty c : original)
       {
-         if (ijProperties.containsKey(c.getConfigPropertyName().getValue()))
+         if (ijProperties != null && ijProperties.containsKey(c.getConfigPropertyName().getValue()))
          {
             if (original instanceof ConfigProperty16)
             {
@@ -180,7 +180,7 @@
             List<AdminObject> newAdminObjects = new ArrayList<AdminObject>(ra1516.getAdminObjects().size());
             for (AdminObject adminObj : ra1516.getAdminObjects())
             {
-               boolean found = false;
+               AdminObject newAdminObj = adminObj;
                if (ij.getAdminObjects() != null)
                {
                   for (CommonAdminObject commonAdminObj : ij.getAdminObjects())
@@ -188,15 +188,12 @@
                   {
                      if (adminMatcher.match(adminObj, commonAdminObj))
                      {
-                        found = true;
-                        newAdminObjects.add(mergeAdminObject(commonAdminObj, adminObj));
+                        newAdminObj = mergeAdminObject(commonAdminObj, newAdminObj);
                      }
                   }
                }
-               if (!found)
-               {
-                  newAdminObjects.add(adminObj);
-               }
+               newAdminObjects.add(newAdminObj);
+
             }
             ((ResourceAdapter1516Impl) ra1516).forceAdminObjectsContent(newAdminObjects);
          }
@@ -208,22 +205,19 @@
                .getOutboundResourceadapter().getConnectionDefinitions().size());
             for (ConnectionDefinition conDef : ra1516.getOutboundResourceadapter().getConnectionDefinitions())
             {
-               boolean found = false;
+               ConnectionDefinition newConDef = conDef;
                if (ij.getConnectionDefinitions() != null)
                {
+
                   for (CommonConnDef commonConDef : ij.getConnectionDefinitions())
                   {
                      if (connDefMatcher.match(conDef, commonConDef))
                      {
-                        found = true;
-                        newConDefs.add(mergeConDef(commonConDef, conDef));
+                        newConDef = mergeConDef(commonConDef, newConDef);
                      }
                   }
                }
-               if (!found)
-               {
-                  newConDefs.add(conDef);
-               }
+               newConDefs.add(newConDef);
 
             }
             ((OutboundResourceAdapterImpl) ra1516.getOutboundResourceadapter())

Modified: projects/jboss-jca/trunk/common/src/main/java/org/jboss/jca/common/metadata/ra/common/ConfigPropertyImpl.java
===================================================================
--- projects/jboss-jca/trunk/common/src/main/java/org/jboss/jca/common/metadata/ra/common/ConfigPropertyImpl.java	2010-09-16 10:49:55 UTC (rev 108171)
+++ projects/jboss-jca/trunk/common/src/main/java/org/jboss/jca/common/metadata/ra/common/ConfigPropertyImpl.java	2010-09-16 13:32:37 UTC (rev 108172)
@@ -199,13 +199,6 @@
       }
       else if (!configPropertyValue.equals(other.configPropertyValue))
          return false;
-      if (description == null)
-      {
-         if (other.description != null)
-            return false;
-      }
-      else if (!description.equals(other.description))
-         return false;
       if (id == null)
       {
          if (other.id != null)

Modified: projects/jboss-jca/trunk/common/src/main/java/org/jboss/jca/common/metadata/ra/common/ResourceAdapter1516Impl.java
===================================================================
--- projects/jboss-jca/trunk/common/src/main/java/org/jboss/jca/common/metadata/ra/common/ResourceAdapter1516Impl.java	2010-09-16 10:49:55 UTC (rev 108171)
+++ projects/jboss-jca/trunk/common/src/main/java/org/jboss/jca/common/metadata/ra/common/ResourceAdapter1516Impl.java	2010-09-16 13:32:37 UTC (rev 108172)
@@ -154,7 +154,7 @@
       if (newContent != null)
       {
          this.adminobjects = new ArrayList<AdminObject>(newContent.size());
-         this.adminobjects.addAll(adminobjects);
+         this.adminobjects.addAll(newContent);
       }
       else
       {

Modified: projects/jboss-jca/trunk/common/src/test/java/org/jboss/jca/common/metadata/merge/MergerTestCase.java
===================================================================
--- projects/jboss-jca/trunk/common/src/test/java/org/jboss/jca/common/metadata/merge/MergerTestCase.java	2010-09-16 10:49:55 UTC (rev 108171)
+++ projects/jboss-jca/trunk/common/src/test/java/org/jboss/jca/common/metadata/merge/MergerTestCase.java	2010-09-16 13:32:37 UTC (rev 108172)
@@ -50,6 +50,7 @@
 import static org.hamcrest.core.IsNull.notNullValue;
 import static org.junit.Assert.assertThat;
 import static org.junit.matchers.JUnitMatchers.hasItem;
+import static org.junit.matchers.JUnitMatchers.hasItems;
 
 /**
  *
@@ -350,7 +351,7 @@
          assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getResourceadapterClass(),
             equalTo(((ResourceAdapter1516) connector.getResourceadapter()).getResourceadapterClass()));
          assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getOutboundResourceadapter(),
-            equalTo(((ResourceAdapter1516) connector.getResourceadapter()).getOutboundResourceadapter()));
+            is(((ResourceAdapter1516) connector.getResourceadapter()).getOutboundResourceadapter()));
          assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getOutboundResourceadapter()
             .getConnectionDefinitions().size(), is(1));
          assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getInboundResourceadapter(),
@@ -363,4 +364,722 @@
       }
 
    }
+
+   /**
+    * shouldMergeCommonIronJacamarAndConnectorBeDistributive
+    * @throws Exception in case of error
+    */
+   @SuppressWarnings("unchecked")
+   @Test
+   public void shouldMergeCommonIronJacamarAndConnectorBeDistributive() throws Exception
+   {
+      FileInputStream is = null;
+      try
+      {
+         //given
+         File xmlFile = new File(Thread.currentThread().getContextClassLoader()
+            .getResource("merger/connector-merging-with-ironjacamar-distributivity.xml").toURI());
+         is = new FileInputStream(xmlFile);
+         RaParser parser = new RaParser();
+         Connector connector = parser.parse(is);
+         is.close();
+         xmlFile = new File(Thread.currentThread().getContextClassLoader()
+            .getResource("merger/ironjacamar-merging-with-connector-distributivity1.xml").toURI());
+         is = new FileInputStream(xmlFile);
+         IronJacamarParser ijParser = new IronJacamarParser();
+         IronJacamar ij1 = ijParser.parse(is);
+
+         xmlFile = new File(Thread.currentThread().getContextClassLoader()
+            .getResource("merger/ironjacamar-merging-with-connector-distributivity2.xml").toURI());
+         is = new FileInputStream(xmlFile);
+         IronJacamar ij2 = ijParser.parse(is);
+
+         assertThat(connector, notNullValue());
+         assertThat(ij1, notNullValue());
+         assertThat(ij2, notNullValue());
+         assertThat(((ResourceAdapter1516) connector.getResourceadapter()).getOutboundResourceadapter()
+            .getConnectionDefinitions().size(), is(1));
+
+         //when
+         Merger mf = new Merger();
+         Connector merged = mf.mergeConnectorWithCommonIronJacamar(ij1, connector);
+         merged = mf.mergeConnectorWithCommonIronJacamar(ij2, connector);
+
+         Connector merged2 = mf.mergeConnectorWithCommonIronJacamar(ij2, connector);
+         merged2 = mf.mergeConnectorWithCommonIronJacamar(ij1, connector);
+         //then
+         ConfigProperty expectedConfigProp = new ConfigPropertyImpl(null, new XsdString("StringRAR", null),
+                                                                    new XsdString("java.lang.String", null),
+                                                                    new XsdString("XMLOVERRIDE", null), null);
+         ConfigProperty expectedConfigProp2 = new ConfigPropertyImpl(null, new XsdString("StringRAR2", null),
+                                                                     new XsdString("java.lang.String", null),
+                                                                     new XsdString("XMLOVERRIDE", null), null);
+         assertThat(merged, notNullValue());
+         assertThat((List<ConfigProperty>) connector.getResourceadapter().getConfigProperties(),
+            hasItems(expectedConfigProp, expectedConfigProp2));
+         assertThat(merged.getEisType(), equalTo(connector.getEisType()));
+         assertThat(merged.getVersion(), equalTo(connector.getVersion()));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getResourceadapterClass(),
+            equalTo(((ResourceAdapter1516) connector.getResourceadapter()).getResourceadapterClass()));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getOutboundResourceadapter(),
+            is(((ResourceAdapter1516) connector.getResourceadapter()).getOutboundResourceadapter()));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getOutboundResourceadapter()
+            .getConnectionDefinitions().size(), is(1));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getInboundResourceadapter(),
+            equalTo(((ResourceAdapter1516) connector.getResourceadapter()).getInboundResourceadapter()));
+
+         assertThat(merged2, notNullValue());
+         assertThat((List<ConfigProperty>) connector.getResourceadapter().getConfigProperties(),
+            hasItems(expectedConfigProp, expectedConfigProp2));
+         assertThat(merged2.getEisType(), equalTo(connector.getEisType()));
+         assertThat(merged2.getVersion(), equalTo(connector.getVersion()));
+         assertThat(((ResourceAdapter1516) merged2.getResourceadapter()).getResourceadapterClass(),
+            equalTo(((ResourceAdapter1516) connector.getResourceadapter()).getResourceadapterClass()));
+         assertThat(((ResourceAdapter1516) merged2.getResourceadapter()).getOutboundResourceadapter(),
+            is(((ResourceAdapter1516) connector.getResourceadapter()).getOutboundResourceadapter()));
+         assertThat(((ResourceAdapter1516) merged2.getResourceadapter()).getOutboundResourceadapter()
+            .getConnectionDefinitions().size(), is(1));
+         assertThat(((ResourceAdapter1516) merged2.getResourceadapter()).getInboundResourceadapter(),
+            equalTo(((ResourceAdapter1516) connector.getResourceadapter()).getInboundResourceadapter()));
+      }
+      finally
+      {
+         if (is != null)
+            is.close();
+      }
+
+   }
+
+   /**
+    * shouldMergeCommonIronJacamarAndConnectorBeDistributive
+    * @throws Exception in case of error
+    */
+   @SuppressWarnings("unchecked")
+   @Test
+   public void shouldMergeCommonIronJacamarAndConnectorBeNeutralOnDoubleMerge() throws Exception
+   {
+      FileInputStream is = null;
+      try
+      {
+         //given
+         File xmlFile = new File(Thread.currentThread().getContextClassLoader()
+            .getResource("merger/connector-merging-with-ironjacamar.xml").toURI());
+         is = new FileInputStream(xmlFile);
+         RaParser parser = new RaParser();
+         Connector connector = parser.parse(is);
+         is.close();
+         xmlFile = new File(Thread.currentThread().getContextClassLoader()
+            .getResource("merger/ironjacamar-merging-with-connector.xml").toURI());
+         is = new FileInputStream(xmlFile);
+         IronJacamarParser raparser = new IronJacamarParser();
+         IronJacamar ij = raparser.parse(is);
+
+         assertThat(connector, notNullValue());
+         assertThat(ij, notNullValue());
+         assertThat(((ResourceAdapter1516) connector.getResourceadapter()).getOutboundResourceadapter()
+            .getConnectionDefinitions().size(), is(1));
+
+         //when
+         Merger mf = new Merger();
+         Connector merged = mf.mergeConnectorWithCommonIronJacamar(ij, connector);
+
+         ConfigProperty expectedConfigProp = new ConfigPropertyImpl(null, new XsdString("StringRAR", null),
+                                                                    new XsdString("java.lang.String", null),
+                                                                    new XsdString("XMLOVERRIDE", null), null);
+         assertThat(merged, notNullValue());
+         assertThat((List<ConfigProperty>) connector.getResourceadapter().getConfigProperties(),
+            hasItem(expectedConfigProp));
+         assertThat(merged.getEisType(), equalTo(connector.getEisType()));
+         assertThat(merged.getVersion(), equalTo(connector.getVersion()));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getResourceadapterClass(),
+            equalTo(((ResourceAdapter1516) connector.getResourceadapter()).getResourceadapterClass()));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getOutboundResourceadapter(),
+            is(((ResourceAdapter1516) connector.getResourceadapter()).getOutboundResourceadapter()));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getOutboundResourceadapter()
+            .getConnectionDefinitions().size(), is(1));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getInboundResourceadapter(),
+            equalTo(((ResourceAdapter1516) connector.getResourceadapter()).getInboundResourceadapter()));
+
+         //another time!!
+         merged = mf.mergeConnectorWithCommonIronJacamar(ij, merged);
+
+         //then
+
+         assertThat(merged, notNullValue());
+         assertThat((List<ConfigProperty>) connector.getResourceadapter().getConfigProperties(),
+            hasItem(expectedConfigProp));
+         assertThat(merged.getEisType(), equalTo(connector.getEisType()));
+         assertThat(merged.getVersion(), equalTo(connector.getVersion()));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getResourceadapterClass(),
+            equalTo(((ResourceAdapter1516) connector.getResourceadapter()).getResourceadapterClass()));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getOutboundResourceadapter(),
+            is(((ResourceAdapter1516) connector.getResourceadapter()).getOutboundResourceadapter()));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getOutboundResourceadapter()
+            .getConnectionDefinitions().size(), is(1));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getInboundResourceadapter(),
+            equalTo(((ResourceAdapter1516) connector.getResourceadapter()).getInboundResourceadapter()));
+
+      }
+      finally
+      {
+         if (is != null)
+            is.close();
+      }
+
+   }
+
+   /**
+    * shouldIgnorePropertyInIronJacamarAndNotInConnector
+    * @throws Exception in case of error
+    */
+   @SuppressWarnings("unchecked")
+   @Test
+   public void shouldIgnorePropertyInIronJacamarAndNotInConnector() throws Exception
+   {
+      FileInputStream is = null;
+      try
+      {
+         //given
+         File xmlFile = new File(Thread.currentThread().getContextClassLoader()
+            .getResource("merger/connector-merging-with-ironjacamar.xml").toURI());
+         is = new FileInputStream(xmlFile);
+         RaParser parser = new RaParser();
+         Connector connector = parser.parse(is);
+         is.close();
+         xmlFile = new File(Thread.currentThread().getContextClassLoader()
+            .getResource("merger/ironjacamar-merging-with-connector-withNewProperty.xml").toURI());
+         is = new FileInputStream(xmlFile);
+         IronJacamarParser raparser = new IronJacamarParser();
+         IronJacamar ij = raparser.parse(is);
+
+         assertThat(connector, notNullValue());
+         assertThat(ij, notNullValue());
+         assertThat(((ResourceAdapter1516) connector.getResourceadapter()).getOutboundResourceadapter()
+            .getConnectionDefinitions().size(), is(1));
+
+         //when
+         Merger mf = new Merger();
+         Connector merged = mf.mergeConnectorWithCommonIronJacamar(ij, connector);
+         //then
+         ConfigProperty expectedConfigProp = new ConfigPropertyImpl(null, new XsdString("StringRAR", null),
+                                                                    new XsdString("java.lang.String", null),
+                                                                    new XsdString("XMLOVERRIDE", null), null);
+         assertThat(merged, notNullValue());
+         assertThat(connector.getResourceadapter().getConfigProperties().size(), is(1));
+         assertThat((List<ConfigProperty>) connector.getResourceadapter().getConfigProperties(),
+            hasItem(expectedConfigProp));
+         assertThat(merged.getEisType(), equalTo(connector.getEisType()));
+         assertThat(merged.getVersion(), equalTo(connector.getVersion()));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getResourceadapterClass(),
+            equalTo(((ResourceAdapter1516) connector.getResourceadapter()).getResourceadapterClass()));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getOutboundResourceadapter(),
+            is(((ResourceAdapter1516) connector.getResourceadapter()).getOutboundResourceadapter()));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getOutboundResourceadapter()
+            .getConnectionDefinitions().size(), is(1));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getInboundResourceadapter(),
+            equalTo(((ResourceAdapter1516) connector.getResourceadapter()).getInboundResourceadapter()));
+      }
+      finally
+      {
+         if (is != null)
+            is.close();
+      }
+
+   }
+
+   /**
+    * shouldIgnorePropertyInIronJacamarAndNotInConnector
+    * @throws Exception in case of error
+    */
+   @SuppressWarnings("unchecked")
+   @Test
+   public void shouldMergeCOnnectionDefinitions() throws Exception
+   {
+      FileInputStream is = null;
+      try
+      {
+         //given
+         File xmlFile = new File(Thread.currentThread().getContextClassLoader()
+            .getResource("merger/connector-merging-connectiondefinition.xml").toURI());
+         is = new FileInputStream(xmlFile);
+         RaParser parser = new RaParser();
+         Connector connector = parser.parse(is);
+         is.close();
+         xmlFile = new File(Thread.currentThread().getContextClassLoader()
+            .getResource("merger/ironjacamar-merging-connectiondefinition.xml").toURI());
+         is = new FileInputStream(xmlFile);
+         IronJacamarParser raparser = new IronJacamarParser();
+         IronJacamar ij = raparser.parse(is);
+
+         assertThat(connector, notNullValue());
+         assertThat(ij, notNullValue());
+         assertThat(((ResourceAdapter1516) connector.getResourceadapter()).getOutboundResourceadapter()
+            .getConnectionDefinitions().size(), is(1));
+
+         //when
+         Merger mf = new Merger();
+         Connector merged = mf.mergeConnectorWithCommonIronJacamar(ij, connector);
+         //then
+         ConfigProperty exConf1 = new ConfigPropertyImpl(null, new XsdString("LogConfigFile", null),
+                                                         new XsdString("java.lang.String", null),
+                                                         new XsdString("ASAP_SAP_1_0.xml", null), null);
+         ConfigProperty exConf2 = new ConfigPropertyImpl(null, new XsdString("RootLogContext", null),
+                                                         new XsdString("java.lang.String", null),
+                                                         new XsdString("ASAP_SAP_1_0", null), null);
+         ConfigProperty exConf3 = new ConfigPropertyImpl(null, new XsdString("LogLevel", null),
+                                                         new XsdString("java.lang.String", null),
+                                                         new XsdString("WARN", null), null);
+         ConfigProperty exConf4 = new ConfigPropertyImpl(null, new XsdString("UserName", null),
+                                                         new XsdString("java.lang.String", null),
+                                                         new XsdString("aaa", null), null);
+         ConfigProperty exConf5 = new ConfigPropertyImpl(null, new XsdString("Password", null),
+                                                         new XsdString("java.lang.String", null),
+                                                         new XsdString("bbb", null), null);
+
+         assertThat(merged, notNullValue());
+         assertThat(connector.getResourceadapter().getConfigProperties().size(), is(1));
+         assertThat(merged.getEisType(), equalTo(connector.getEisType()));
+         assertThat(merged.getVersion(), equalTo(connector.getVersion()));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getResourceadapterClass(),
+            equalTo(((ResourceAdapter1516) connector.getResourceadapter()).getResourceadapterClass()));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getOutboundResourceadapter(),
+            is(((ResourceAdapter1516) connector.getResourceadapter()).getOutboundResourceadapter()));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getOutboundResourceadapter()
+            .getConnectionDefinitions().size(), is(1));
+         List<ConfigProperty> conDefProps = (List<ConfigProperty>) ((ResourceAdapter1516) merged
+            .getResourceadapter()).getOutboundResourceadapter().getConnectionDefinitions().get(0)
+            .getConfigProperties();
+         assertThat(conDefProps.size(), is(5));
+         assertThat(conDefProps, hasItems(exConf1, exConf2, exConf3, exConf4, exConf5));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getInboundResourceadapter(),
+            equalTo(((ResourceAdapter1516) connector.getResourceadapter()).getInboundResourceadapter()));
+      }
+      finally
+      {
+         if (is != null)
+            is.close();
+      }
+
+   }
+
+   /**
+    * shouldMergeMultipleConnectionDefinitions
+    * @throws Exception in case of error
+    */
+   @SuppressWarnings("unchecked")
+   @Test
+   public void shouldMergeMultipleConnectionDefinitions() throws Exception
+   {
+      FileInputStream is = null;
+      try
+      {
+         //given
+         File xmlFile = new File(Thread.currentThread().getContextClassLoader()
+            .getResource("merger/connector-merging-connectiondefinition.xml").toURI());
+         is = new FileInputStream(xmlFile);
+         RaParser parser = new RaParser();
+         Connector connector = parser.parse(is);
+         is.close();
+         xmlFile = new File(Thread.currentThread().getContextClassLoader()
+            .getResource("merger/ironjacamar-merging-multiple-connectiondefinition.xml").toURI());
+         is = new FileInputStream(xmlFile);
+         IronJacamarParser raparser = new IronJacamarParser();
+         IronJacamar ij = raparser.parse(is);
+
+         assertThat(connector, notNullValue());
+         assertThat(ij, notNullValue());
+         assertThat(((ResourceAdapter1516) connector.getResourceadapter()).getOutboundResourceadapter()
+            .getConnectionDefinitions().size(), is(1));
+
+         //when
+         Merger mf = new Merger();
+         Connector merged = mf.mergeConnectorWithCommonIronJacamar(ij, connector);
+         //then
+         ConfigProperty exConf1 = new ConfigPropertyImpl(null, new XsdString("LogConfigFile", null),
+                                                         new XsdString("java.lang.String", null),
+                                                         new XsdString("ASAP_SAP_1_0.xml", null), null);
+         ConfigProperty exConf2 = new ConfigPropertyImpl(null, new XsdString("RootLogContext", null),
+                                                         new XsdString("java.lang.String", null),
+                                                         new XsdString("ASAP_SAP_1_0", null), null);
+         ConfigProperty exConf3 = new ConfigPropertyImpl(null, new XsdString("LogLevel", null),
+                                                         new XsdString("java.lang.String", null),
+                                                         new XsdString("WARN", null), null);
+         ConfigProperty exConf4 = new ConfigPropertyImpl(null, new XsdString("UserName", null),
+                                                         new XsdString("java.lang.String", null),
+                                                         new XsdString("aaa", null), null);
+         ConfigProperty exConf5 = new ConfigPropertyImpl(null, new XsdString("Password", null),
+                                                         new XsdString("java.lang.String", null),
+                                                         new XsdString("bbb", null), null);
+
+         assertThat(merged, notNullValue());
+         assertThat(connector.getResourceadapter().getConfigProperties().size(), is(1));
+         assertThat(merged.getEisType(), equalTo(connector.getEisType()));
+         assertThat(merged.getVersion(), equalTo(connector.getVersion()));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getResourceadapterClass(),
+            equalTo(((ResourceAdapter1516) connector.getResourceadapter()).getResourceadapterClass()));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getOutboundResourceadapter(),
+            is(((ResourceAdapter1516) connector.getResourceadapter()).getOutboundResourceadapter()));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getOutboundResourceadapter()
+            .getConnectionDefinitions().size(), is(1));
+         List<ConfigProperty> conDefProps = (List<ConfigProperty>) ((ResourceAdapter1516) merged
+            .getResourceadapter()).getOutboundResourceadapter().getConnectionDefinitions().get(0)
+            .getConfigProperties();
+         assertThat(conDefProps.size(), is(5));
+         assertThat(conDefProps, hasItems(exConf1, exConf2, exConf3, exConf4, exConf5));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getInboundResourceadapter(),
+            equalTo(((ResourceAdapter1516) connector.getResourceadapter()).getInboundResourceadapter()));
+      }
+      finally
+      {
+         if (is != null)
+            is.close();
+      }
+
+   }
+
+   /**
+    * shouldIgnoreNotEnabledConnectionDefinitions
+    * @throws Exception in case of error
+    */
+   @SuppressWarnings("unchecked")
+   @Test
+   public void shouldIgnoreNotEnabledConnectionDefinitions() throws Exception
+   {
+      FileInputStream is = null;
+      try
+      {
+         //given
+         File xmlFile = new File(Thread.currentThread().getContextClassLoader()
+            .getResource("merger/connector-merging-connectiondefinition.xml").toURI());
+         is = new FileInputStream(xmlFile);
+         RaParser parser = new RaParser();
+         Connector connector = parser.parse(is);
+         is.close();
+         xmlFile = new File(Thread.currentThread().getContextClassLoader()
+            .getResource("merger/ironjacamar-ignoring-not-enabled-connectiondefinition.xml").toURI());
+         is = new FileInputStream(xmlFile);
+         IronJacamarParser raparser = new IronJacamarParser();
+         IronJacamar ij = raparser.parse(is);
+
+         assertThat(connector, notNullValue());
+         assertThat(ij, notNullValue());
+         assertThat(((ResourceAdapter1516) connector.getResourceadapter()).getOutboundResourceadapter()
+            .getConnectionDefinitions().size(), is(1));
+
+         //when
+         Merger mf = new Merger();
+         Connector merged = mf.mergeConnectorWithCommonIronJacamar(ij, connector);
+         //then
+         ConfigProperty exConf1 = new ConfigPropertyImpl(null, new XsdString("LogConfigFile", null),
+                                                         new XsdString("java.lang.String", null),
+                                                         new XsdString("default", null), null);
+         ConfigProperty exConf2 = new ConfigPropertyImpl(null, new XsdString("RootLogContext", null),
+                                                         new XsdString("java.lang.String", null),
+                                                         new XsdString("default", null), null);
+         ConfigProperty exConf3 = new ConfigPropertyImpl(null, new XsdString("LogLevel", null),
+                                                         new XsdString("java.lang.String", null),
+                                                         new XsdString("default", null), null);
+
+         assertThat(merged, notNullValue());
+         assertThat(connector.getResourceadapter().getConfigProperties().size(), is(1));
+         assertThat(merged.getEisType(), equalTo(connector.getEisType()));
+         assertThat(merged.getVersion(), equalTo(connector.getVersion()));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getResourceadapterClass(),
+            equalTo(((ResourceAdapter1516) connector.getResourceadapter()).getResourceadapterClass()));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getOutboundResourceadapter(),
+            is(((ResourceAdapter1516) connector.getResourceadapter()).getOutboundResourceadapter()));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getOutboundResourceadapter()
+            .getConnectionDefinitions().size(), is(1));
+         List<ConfigProperty> conDefProps = (List<ConfigProperty>) ((ResourceAdapter1516) merged
+            .getResourceadapter()).getOutboundResourceadapter().getConnectionDefinitions().get(0)
+            .getConfigProperties();
+         assertThat(conDefProps.size(), is(3));
+         assertThat(conDefProps, hasItems(exConf1, exConf2, exConf3));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getInboundResourceadapter(),
+            equalTo(((ResourceAdapter1516) connector.getResourceadapter()).getInboundResourceadapter()));
+      }
+      finally
+      {
+         if (is != null)
+            is.close();
+      }
+
+   }
+
+   /**
+    * shouldIgnoreNotMatchingConnectionDefinitions
+    * @throws Exception in case of error
+    */
+   @SuppressWarnings("unchecked")
+   @Test
+   public void shouldIgnoreNotMatchingConnectionDefinitions() throws Exception
+   {
+      FileInputStream is = null;
+      try
+      {
+         //given
+         File xmlFile = new File(Thread.currentThread().getContextClassLoader()
+            .getResource("merger/connector-merging-connectiondefinition.xml").toURI());
+         is = new FileInputStream(xmlFile);
+         RaParser parser = new RaParser();
+         Connector connector = parser.parse(is);
+         is.close();
+         xmlFile = new File(Thread.currentThread().getContextClassLoader()
+            .getResource("merger/ironjacamar-ignoring-not-matching-connectiondefinition.xml").toURI());
+         is = new FileInputStream(xmlFile);
+         IronJacamarParser raparser = new IronJacamarParser();
+         IronJacamar ij = raparser.parse(is);
+
+         assertThat(connector, notNullValue());
+         assertThat(ij, notNullValue());
+         assertThat(((ResourceAdapter1516) connector.getResourceadapter()).getOutboundResourceadapter()
+            .getConnectionDefinitions().size(), is(1));
+
+         //when
+         Merger mf = new Merger();
+         Connector merged = mf.mergeConnectorWithCommonIronJacamar(ij, connector);
+         //then
+         ConfigProperty exConf1 = new ConfigPropertyImpl(null, new XsdString("LogConfigFile", null),
+                                                         new XsdString("java.lang.String", null),
+                                                         new XsdString("default", null), null);
+         ConfigProperty exConf2 = new ConfigPropertyImpl(null, new XsdString("RootLogContext", null),
+                                                         new XsdString("java.lang.String", null),
+                                                         new XsdString("default", null), null);
+         ConfigProperty exConf3 = new ConfigPropertyImpl(null, new XsdString("LogLevel", null),
+                                                         new XsdString("java.lang.String", null),
+                                                         new XsdString("default", null), null);
+
+         assertThat(merged, notNullValue());
+         assertThat(connector.getResourceadapter().getConfigProperties().size(), is(1));
+         assertThat(merged.getEisType(), equalTo(connector.getEisType()));
+         assertThat(merged.getVersion(), equalTo(connector.getVersion()));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getResourceadapterClass(),
+            equalTo(((ResourceAdapter1516) connector.getResourceadapter()).getResourceadapterClass()));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getOutboundResourceadapter(),
+            is(((ResourceAdapter1516) connector.getResourceadapter()).getOutboundResourceadapter()));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getOutboundResourceadapter()
+            .getConnectionDefinitions().size(), is(1));
+         List<ConfigProperty> conDefProps = (List<ConfigProperty>) ((ResourceAdapter1516) merged
+            .getResourceadapter()).getOutboundResourceadapter().getConnectionDefinitions().get(0)
+            .getConfigProperties();
+         assertThat(conDefProps.size(), is(3));
+         assertThat(conDefProps, hasItems(exConf1, exConf2, exConf3));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getInboundResourceadapter(),
+            equalTo(((ResourceAdapter1516) connector.getResourceadapter()).getInboundResourceadapter()));
+      }
+      finally
+      {
+         if (is != null)
+            is.close();
+      }
+
+   }
+
+   /**
+    * shouldMergeAdminObj
+    * @throws Exception in case of error
+    */
+   @SuppressWarnings("unchecked")
+   @Test
+   public void shouldMergeAdminObj() throws Exception
+   {
+      FileInputStream is = null;
+      try
+      {
+         //given
+         File xmlFile = new File(Thread.currentThread().getContextClassLoader()
+            .getResource("merger/connector-merging-with-ironjacamar-adminObj.xml").toURI());
+         is = new FileInputStream(xmlFile);
+         RaParser parser = new RaParser();
+         Connector connector = parser.parse(is);
+         is.close();
+         xmlFile = new File(Thread.currentThread().getContextClassLoader()
+            .getResource("merger/ironjacamar-merging-admi-obj.xml").toURI());
+         is = new FileInputStream(xmlFile);
+         IronJacamarParser raparser = new IronJacamarParser();
+         IronJacamar ij = raparser.parse(is);
+
+         assertThat(connector, notNullValue());
+         assertThat(ij, notNullValue());
+         assertThat(((ResourceAdapter1516) connector.getResourceadapter()).getAdminObjects().size(), is(1));
+
+         //when
+         Merger mf = new Merger();
+         Connector merged = mf.mergeConnectorWithCommonIronJacamar(ij, connector);
+         //then
+         ConfigProperty expectedConfigProp = new ConfigPropertyImpl(null, new XsdString("StringAdmin", null),
+                                                                    new XsdString("java.lang.String", null),
+                                                                    new XsdString("OVERRIDEXML", null), null);
+         assertThat(merged, notNullValue());
+         assertThat(connector.getResourceadapter().getConfigProperties().size(), is(1));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getAdminObjects().size(), is(1));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getAdminObjects().get(0)
+            .getConfigProperties().size(), is(1));
+         assertThat((List<ConfigProperty>) ((ResourceAdapter1516) merged.getResourceadapter()).getAdminObjects()
+            .get(0).getConfigProperties(), hasItem(expectedConfigProp));
+      }
+      finally
+      {
+         if (is != null)
+            is.close();
+      }
+
+   }
+
+   /**
+    * shouldMergeAdminObj
+    * @throws Exception in case of error
+    */
+   @SuppressWarnings("unchecked")
+   @Test
+   public void shouldMergeAdminObjMultiple() throws Exception
+   {
+      FileInputStream is = null;
+      try
+      {
+         //given
+         File xmlFile = new File(Thread.currentThread().getContextClassLoader()
+            .getResource("merger/connector-merging-with-ironjacamar-adminObj-multiple.xml").toURI());
+         is = new FileInputStream(xmlFile);
+         RaParser parser = new RaParser();
+         Connector connector = parser.parse(is);
+         is.close();
+         xmlFile = new File(Thread.currentThread().getContextClassLoader()
+            .getResource("merger/ironjacamar-merging-admi-obj-multiple.xml").toURI());
+         is = new FileInputStream(xmlFile);
+         IronJacamarParser raparser = new IronJacamarParser();
+         IronJacamar ij = raparser.parse(is);
+
+         assertThat(connector, notNullValue());
+         assertThat(ij, notNullValue());
+         assertThat(((ResourceAdapter1516) connector.getResourceadapter()).getAdminObjects().size(), is(1));
+
+         //when
+         Merger mf = new Merger();
+         Connector merged = mf.mergeConnectorWithCommonIronJacamar(ij, connector);
+         //then
+         ConfigProperty expectedConfigProp = new ConfigPropertyImpl(null, new XsdString("StringAdmin", null),
+                                                                    new XsdString("java.lang.String", null),
+                                                                    new XsdString("OVERRIDEXML", null), null);
+         ConfigProperty expectedConfigProp2 = new ConfigPropertyImpl(null, new XsdString("StringAdmin2", null),
+                                                                     new XsdString("java.lang.String", null),
+                                                                     new XsdString("OVERRIDEXML", null), null);
+         assertThat(merged, notNullValue());
+         assertThat(connector.getResourceadapter().getConfigProperties().size(), is(1));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getAdminObjects().size(), is(1));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getAdminObjects().get(0)
+            .getConfigProperties().size(), is(2));
+         assertThat((List<ConfigProperty>) ((ResourceAdapter1516) merged.getResourceadapter()).getAdminObjects()
+            .get(0).getConfigProperties(), hasItems(expectedConfigProp, expectedConfigProp2));
+      }
+      finally
+      {
+         if (is != null)
+            is.close();
+      }
+
+   }
+
+   /**
+    * shouldMergeAdminObjIgnoringNotEnabled
+    * @throws Exception in case of error
+    */
+   @SuppressWarnings("unchecked")
+   @Test
+   public void shouldMergeAdminObjIgnoringNotEnabled() throws Exception
+   {
+      FileInputStream is = null;
+      try
+      {
+         //given
+         File xmlFile = new File(Thread.currentThread().getContextClassLoader()
+            .getResource("merger/connector-merging-with-ironjacamar-adminObj.xml").toURI());
+         is = new FileInputStream(xmlFile);
+         RaParser parser = new RaParser();
+         Connector connector = parser.parse(is);
+         is.close();
+         xmlFile = new File(Thread.currentThread().getContextClassLoader()
+            .getResource("merger/ironjacamar-merging-admi-obj-notenabled.xml").toURI());
+         is = new FileInputStream(xmlFile);
+         IronJacamarParser raparser = new IronJacamarParser();
+         IronJacamar ij = raparser.parse(is);
+
+         assertThat(connector, notNullValue());
+         assertThat(ij, notNullValue());
+         assertThat(((ResourceAdapter1516) connector.getResourceadapter()).getAdminObjects().size(), is(1));
+
+         //when
+         Merger mf = new Merger();
+         Connector merged = mf.mergeConnectorWithCommonIronJacamar(ij, connector);
+         //then
+         ConfigProperty expectedConfigProp = new ConfigPropertyImpl(null, new XsdString("StringAdmin", null),
+                                                                    new XsdString("java.lang.String", null),
+                                                                    new XsdString("default", null), null);
+         assertThat(merged, notNullValue());
+         assertThat(connector.getResourceadapter().getConfigProperties().size(), is(1));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getAdminObjects().size(), is(1));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getAdminObjects().get(0)
+            .getConfigProperties().size(), is(1));
+         assertThat((List<ConfigProperty>) ((ResourceAdapter1516) merged.getResourceadapter()).getAdminObjects()
+            .get(0).getConfigProperties(), hasItem(expectedConfigProp));
+      }
+      finally
+      {
+         if (is != null)
+            is.close();
+      }
+
+   }
+
+   /**
+    * shouldMergeAdminObjIgnoringNotEnabled
+    * @throws Exception in case of error
+    */
+   @SuppressWarnings("unchecked")
+   @Test
+   public void shouldMergeAdminObjIgnoringNonMatching() throws Exception
+   {
+      FileInputStream is = null;
+      try
+      {
+         //given
+         File xmlFile = new File(Thread.currentThread().getContextClassLoader()
+            .getResource("merger/connector-merging-with-ironjacamar-adminObj.xml").toURI());
+         is = new FileInputStream(xmlFile);
+         RaParser parser = new RaParser();
+         Connector connector = parser.parse(is);
+         is.close();
+         xmlFile = new File(Thread.currentThread().getContextClassLoader()
+            .getResource("merger/ironjacamar-merging-admi-obj-notmatching.xml").toURI());
+         is = new FileInputStream(xmlFile);
+         IronJacamarParser raparser = new IronJacamarParser();
+         IronJacamar ij = raparser.parse(is);
+
+         assertThat(connector, notNullValue());
+         assertThat(ij, notNullValue());
+         assertThat(((ResourceAdapter1516) connector.getResourceadapter()).getAdminObjects().size(), is(1));
+
+         //when
+         Merger mf = new Merger();
+         Connector merged = mf.mergeConnectorWithCommonIronJacamar(ij, connector);
+         //then
+         ConfigProperty expectedConfigProp = new ConfigPropertyImpl(null, new XsdString("StringAdmin", null),
+                                                                    new XsdString("java.lang.String", null),
+                                                                    new XsdString("default", null), null);
+         assertThat(merged, notNullValue());
+         assertThat(connector.getResourceadapter().getConfigProperties().size(), is(1));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getAdminObjects().size(), is(1));
+         assertThat(((ResourceAdapter1516) merged.getResourceadapter()).getAdminObjects().get(0)
+            .getConfigProperties().size(), is(1));
+         assertThat((List<ConfigProperty>) ((ResourceAdapter1516) merged.getResourceadapter()).getAdminObjects()
+            .get(0).getConfigProperties(), hasItem(expectedConfigProp));
+      }
+      finally
+      {
+         if (is != null)
+            is.close();
+      }
+
+   }
+
 }

Added: projects/jboss-jca/trunk/common/src/test/resources/merger/connector-merging-connectiondefinition.xml
===================================================================
--- projects/jboss-jca/trunk/common/src/test/resources/merger/connector-merging-connectiondefinition.xml	                        (rev 0)
+++ projects/jboss-jca/trunk/common/src/test/resources/merger/connector-merging-connectiondefinition.xml	2010-09-16 13:32:37 UTC (rev 108172)
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- $Id $ -->
+<connector xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
+           http://java.sun.com/xml/ns/j2ee/connector_1_6.xsd"
+  version="1.6" metadata-complete="true">
+  <vendor-name>Red Hat Middleware LLC</vendor-name>
+  <eis-type>Test RA</eis-type>
+  <resourceadapter-version>0.1</resourceadapter-version>
+  <resourceadapter>
+    <resourceadapter-class>org.jboss.jca.test.deployers.spec.rars.ra16inoutjbossra.TestResourceAdapter</resourceadapter-class>
+    <config-property>
+      <config-property-name>StringRAR</config-property-name>
+      <config-property-type>java.lang.String</config-property-type>
+      <config-property-value>StringFromRARProperties</config-property-value>
+    </config-property>
+    <outbound-resourceadapter>
+      <connection-definition>
+        <managedconnectionfactory-class>org.jboss.jca.test.deployers.spec.rars.ra16inoutjbossra.TestManagedConnectionFactory</managedconnectionfactory-class>
+        <config-property>
+          <config-property-name>LogConfigFile</config-property-name>
+          <config-property-type>java.lang.String</config-property-type>
+          <config-property-value>default</config-property-value>
+        </config-property>
+        <config-property>
+          <config-property-name>RootLogContext</config-property-name>
+          <config-property-type>java.lang.String</config-property-type>
+          <config-property-value>default</config-property-value>
+        </config-property>
+        <config-property>
+          <config-property-name>LogLevel</config-property-name>
+          <config-property-type>java.lang.String</config-property-type>
+          <config-property-value>default</config-property-value>
+        </config-property>
+        <connectionfactory-interface>javax.resource.spi.ManagedConnection</connectionfactory-interface>
+        <connectionfactory-impl-class>org.jboss.jca.test.deployers.spec.rars.ra16inoutjbossra.TestManagedConnection</connectionfactory-impl-class>
+        <connection-interface>org.jboss.jca.test.deployers.spec.rars.TestConnectionInterface</connection-interface>
+        <connection-impl-class>org.jboss.jca.test.deployers.spec.rars.TestConnection</connection-impl-class>
+      </connection-definition>
+      <transaction-support>LocalTransaction</transaction-support>
+      <reauthentication-support>false</reauthentication-support>
+    </outbound-resourceadapter>
+    <inbound-resourceadapter>
+      <messageadapter>
+        <messagelistener>
+          <messagelistener-type>org.jboss.jca.test.deployers.spec.rars.MessageListener</messagelistener-type>
+          <activationspec>
+            <activationspec-class>org.jboss.jca.test.deployers.spec.rars.ra16inoutjbossra.TestActivationSpec</activationspec-class>
+          </activationspec>
+        </messagelistener>
+      </messageadapter>
+    </inbound-resourceadapter>
+  </resourceadapter>
+</connector>
\ No newline at end of file

Added: projects/jboss-jca/trunk/common/src/test/resources/merger/connector-merging-with-ironjacamar-adminObj-multiple.xml
===================================================================
--- projects/jboss-jca/trunk/common/src/test/resources/merger/connector-merging-with-ironjacamar-adminObj-multiple.xml	                        (rev 0)
+++ projects/jboss-jca/trunk/common/src/test/resources/merger/connector-merging-with-ironjacamar-adminObj-multiple.xml	2010-09-16 13:32:37 UTC (rev 108172)
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- $Id $ -->
+<connector xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
+           http://java.sun.com/xml/ns/j2ee/connector_1_6.xsd"
+  version="1.6" metadata-complete="true">
+  <vendor-name>Red Hat Middleware LLC</vendor-name>
+  <eis-type>Test RA</eis-type>
+  <resourceadapter-version>0.1</resourceadapter-version>
+  <resourceadapter>
+    <resourceadapter-class>org.jboss.jca.test.deployers.spec.rars.ra16inoutjbossra.TestResourceAdapter</resourceadapter-class>
+    <config-property>
+      <config-property-name>StringRAR</config-property-name>
+      <config-property-type>java.lang.String</config-property-type>
+      <config-property-value>StringFromRARProperties</config-property-value>
+    </config-property>
+    <outbound-resourceadapter>
+      <connection-definition>
+        <managedconnectionfactory-class>org.jboss.jca.test.deployers.spec.rars.ra16inoutjbossra.TestManagedConnectionFactory</managedconnectionfactory-class>
+        <connectionfactory-interface>javax.resource.spi.ManagedConnection</connectionfactory-interface>
+        <connectionfactory-impl-class>org.jboss.jca.test.deployers.spec.rars.ra16inoutjbossra.TestManagedConnection</connectionfactory-impl-class>
+        <connection-interface>org.jboss.jca.test.deployers.spec.rars.TestConnectionInterface</connection-interface>
+        <connection-impl-class>org.jboss.jca.test.deployers.spec.rars.TestConnection</connection-impl-class>
+      </connection-definition>
+      <transaction-support>LocalTransaction</transaction-support>
+      <reauthentication-support>false</reauthentication-support>
+    </outbound-resourceadapter>
+    <inbound-resourceadapter>
+      <messageadapter>
+        <messagelistener>
+          <messagelistener-type>org.jboss.jca.test.deployers.spec.rars.MessageListener</messagelistener-type>
+          <activationspec>
+            <activationspec-class>org.jboss.jca.test.deployers.spec.rars.ra16inoutjbossra.TestActivationSpec</activationspec-class>
+          </activationspec>
+        </messagelistener>
+      </messageadapter>
+    </inbound-resourceadapter>
+    <adminobject>
+      <adminobject-interface>TestAdminInterface</adminobject-interface>
+      <adminobject-class>TestAdminObj</adminobject-class>
+      <config-property>
+        <config-property-name>StringAdmin</config-property-name>
+        <config-property-type>java.lang.String</config-property-type>
+        <config-property-value>default</config-property-value>
+      </config-property>
+      <config-property>
+         <config-property-name>StringAdmin2</config-property-name>
+         <config-property-type>java.lang.String</config-property-type>
+         <config-property-value>default</config-property-value>
+      </config-property>
+    </adminobject>
+  </resourceadapter>
+</connector>
\ No newline at end of file

Added: projects/jboss-jca/trunk/common/src/test/resources/merger/connector-merging-with-ironjacamar-adminObj.xml
===================================================================
--- projects/jboss-jca/trunk/common/src/test/resources/merger/connector-merging-with-ironjacamar-adminObj.xml	                        (rev 0)
+++ projects/jboss-jca/trunk/common/src/test/resources/merger/connector-merging-with-ironjacamar-adminObj.xml	2010-09-16 13:32:37 UTC (rev 108172)
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!-- $Id $ -->
+
+<connector xmlns="http://java.sun.com/xml/ns/javaee"
+           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+           xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
+           http://java.sun.com/xml/ns/j2ee/connector_1_6.xsd"
+           version="1.6" metadata-complete="true">
+
+   <vendor-name>Red Hat Middleware LLC</vendor-name>
+   <eis-type>Test RA</eis-type>
+   <resourceadapter-version>0.1</resourceadapter-version>
+
+   <resourceadapter>
+      <resourceadapter-class>org.jboss.jca.test.deployers.spec.rars.ra16inoutjbossra.TestResourceAdapter</resourceadapter-class>
+      <config-property>
+         <config-property-name>StringRAR</config-property-name>
+         <config-property-type>java.lang.String</config-property-type>
+         <config-property-value>StringFromRARProperties</config-property-value>
+      </config-property>
+      <outbound-resourceadapter>
+         <connection-definition>
+            <managedconnectionfactory-class>org.jboss.jca.test.deployers.spec.rars.ra16inoutjbossra.TestManagedConnectionFactory</managedconnectionfactory-class>
+
+            <connectionfactory-interface>javax.resource.spi.ManagedConnection</connectionfactory-interface>
+            <connectionfactory-impl-class>org.jboss.jca.test.deployers.spec.rars.ra16inoutjbossra.TestManagedConnection</connectionfactory-impl-class>
+            <connection-interface>org.jboss.jca.test.deployers.spec.rars.TestConnectionInterface</connection-interface>
+            <connection-impl-class>org.jboss.jca.test.deployers.spec.rars.TestConnection</connection-impl-class>
+         </connection-definition>
+         <transaction-support>LocalTransaction</transaction-support>
+         <reauthentication-support>false</reauthentication-support>
+      </outbound-resourceadapter>
+      <inbound-resourceadapter>
+         <messageadapter>        
+            <messagelistener>
+               <messagelistener-type>org.jboss.jca.test.deployers.spec.rars.MessageListener</messagelistener-type>
+               <activationspec>
+                  <activationspec-class>org.jboss.jca.test.deployers.spec.rars.ra16inoutjbossra.TestActivationSpec</activationspec-class>
+               </activationspec>
+            </messagelistener>
+         </messageadapter>
+      </inbound-resourceadapter>
+      <adminobject>
+         <adminobject-interface>TestAdminInterface</adminobject-interface>
+         <adminobject-class>TestAdminObj</adminobject-class>
+         <config-property>
+         <config-property-name>StringAdmin</config-property-name>
+         <config-property-type>java.lang.String</config-property-type>
+         <config-property-value>default</config-property-value>
+      </config-property>
+      </adminobject>
+   </resourceadapter>
+</connector>
\ No newline at end of file

Added: projects/jboss-jca/trunk/common/src/test/resources/merger/connector-merging-with-ironjacamar-distributivity.xml
===================================================================
--- projects/jboss-jca/trunk/common/src/test/resources/merger/connector-merging-with-ironjacamar-distributivity.xml	                        (rev 0)
+++ projects/jboss-jca/trunk/common/src/test/resources/merger/connector-merging-with-ironjacamar-distributivity.xml	2010-09-16 13:32:37 UTC (rev 108172)
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!-- $Id $ -->
+
+<connector xmlns="http://java.sun.com/xml/ns/javaee"
+           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+           xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
+           http://java.sun.com/xml/ns/j2ee/connector_1_6.xsd"
+           version="1.6" metadata-complete="true">
+
+   <vendor-name>Red Hat Middleware LLC</vendor-name>
+   <eis-type>Test RA</eis-type>
+   <resourceadapter-version>0.1</resourceadapter-version>
+
+   <resourceadapter>
+      <resourceadapter-class>org.jboss.jca.test.deployers.spec.rars.ra16inoutjbossra.TestResourceAdapter</resourceadapter-class>
+      <config-property>
+         <config-property-name>StringRAR</config-property-name>
+         <config-property-type>java.lang.String</config-property-type>
+         <config-property-value>StringFromRARProperties</config-property-value>
+      </config-property>
+      <config-property>
+         <config-property-name>StringRAR2</config-property-name>
+         <config-property-type>java.lang.String</config-property-type>
+         <config-property-value>StringFromRARProperties</config-property-value>
+      </config-property>
+      <outbound-resourceadapter>
+         <connection-definition>
+            <managedconnectionfactory-class>org.jboss.jca.test.deployers.spec.rars.ra16inoutjbossra.TestManagedConnectionFactory</managedconnectionfactory-class>
+
+            <connectionfactory-interface>javax.resource.spi.ManagedConnection</connectionfactory-interface>
+            <connectionfactory-impl-class>org.jboss.jca.test.deployers.spec.rars.ra16inoutjbossra.TestManagedConnection</connectionfactory-impl-class>
+            <connection-interface>org.jboss.jca.test.deployers.spec.rars.TestConnectionInterface</connection-interface>
+            <connection-impl-class>org.jboss.jca.test.deployers.spec.rars.TestConnection</connection-impl-class>
+         </connection-definition>
+         <transaction-support>LocalTransaction</transaction-support>
+         <reauthentication-support>false</reauthentication-support>
+      </outbound-resourceadapter>
+      <inbound-resourceadapter>
+         <messageadapter>        
+            <messagelistener>
+               <messagelistener-type>org.jboss.jca.test.deployers.spec.rars.MessageListener</messagelistener-type>
+               <activationspec>
+                  <activationspec-class>org.jboss.jca.test.deployers.spec.rars.ra16inoutjbossra.TestActivationSpec</activationspec-class>
+               </activationspec>
+            </messagelistener>
+         </messageadapter>
+      </inbound-resourceadapter>
+   </resourceadapter>
+</connector>
\ No newline at end of file

Added: projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-ignoring-not-enabled-connectiondefinition.xml
===================================================================
--- projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-ignoring-not-enabled-connectiondefinition.xml	                        (rev 0)
+++ projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-ignoring-not-enabled-connectiondefinition.xml	2010-09-16 13:32:37 UTC (rev 108172)
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ironjacamar xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../main/resources/schema/ironjacamar_1_0.xsd">
+  <transaction-support>NoTransaction</transaction-support>
+  <connection-definitions>
+    <connection-definition class-name="org.jboss.jca.test.deployers.spec.rars.ra16inoutjbossra.TestManagedConnectionFactory"
+      enabled="false" jndi-name="aSAPXcess" pool-name="aSAPXcess">
+      <config-property name="LogConfigFile">ASAP_SAP_1_0.xml</config-property>
+      <config-property name="RootLogContext">ASAP_SAP_1_0</config-property>
+      <config-property name="LogLevel">WARN</config-property>
+      <config-property name="MessageBundleBase">ASAP_SAP_1_0</config-property>
+      <config-property name="LanguageCode">en</config-property>
+      <config-property name="CountryCode">US</config-property>
+      <config-property name="UserName"></config-property>
+      <config-property name="Password"></config-property>
+      <config-property name="ClientNumber"></config-property>
+      <config-property name="ServerName"></config-property>
+      <config-property name="SystemNumber"></config-property>
+      <config-property name="GatewayServerName"></config-property>
+      <config-property name="GatewayServiceNumber"></config-property>
+      <config-property name="SystemName"></config-property>
+      <config-property name="MessageServerName"></config-property>
+      <config-property name="GroupName"></config-property>
+      <config-property name="ConnectionURL"></config-property>
+      <pool>
+        <min-pool-size>0</min-pool-size>
+        <max-pool-size>64</max-pool-size>
+      </pool>
+      <security>
+        <user-name>aaa</user-name>
+        <password>bbb</password>
+      </security>
+      <timeout>
+        <blocking-timeout-millis>5000</blocking-timeout-millis>
+        <idle-timeout-minutes>15</idle-timeout-minutes>
+      </timeout>
+    </connection-definition>
+  </connection-definitions>
+</ironjacamar>
\ No newline at end of file

Added: projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-ignoring-not-matching-connectiondefinition.xml
===================================================================
--- projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-ignoring-not-matching-connectiondefinition.xml	                        (rev 0)
+++ projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-ignoring-not-matching-connectiondefinition.xml	2010-09-16 13:32:37 UTC (rev 108172)
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ironjacamar xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../main/resources/schema/ironjacamar_1_0.xsd">
+  <transaction-support>NoTransaction</transaction-support>
+  <connection-definitions>
+    <connection-definition class-name="nonMatchingName"
+      enabled="true" jndi-name="aSAPXcess" pool-name="aSAPXcess">
+      <config-property name="LogConfigFile">ASAP_SAP_1_0.xml</config-property>
+      <config-property name="RootLogContext">ASAP_SAP_1_0</config-property>
+      <config-property name="LogLevel">WARN</config-property>
+      <config-property name="MessageBundleBase">ASAP_SAP_1_0</config-property>
+      <config-property name="LanguageCode">en</config-property>
+      <config-property name="CountryCode">US</config-property>
+      <config-property name="UserName"></config-property>
+      <config-property name="Password"></config-property>
+      <config-property name="ClientNumber"></config-property>
+      <config-property name="ServerName"></config-property>
+      <config-property name="SystemNumber"></config-property>
+      <config-property name="GatewayServerName"></config-property>
+      <config-property name="GatewayServiceNumber"></config-property>
+      <config-property name="SystemName"></config-property>
+      <config-property name="MessageServerName"></config-property>
+      <config-property name="GroupName"></config-property>
+      <config-property name="ConnectionURL"></config-property>
+      <pool>
+        <min-pool-size>0</min-pool-size>
+        <max-pool-size>64</max-pool-size>
+      </pool>
+      <security>
+        <user-name>aaa</user-name>
+        <password>bbb</password>
+      </security>
+      <timeout>
+        <blocking-timeout-millis>5000</blocking-timeout-millis>
+        <idle-timeout-minutes>15</idle-timeout-minutes>
+      </timeout>
+    </connection-definition>
+  </connection-definitions>
+</ironjacamar>
\ No newline at end of file

Added: projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-admi-obj-multiple.xml
===================================================================
--- projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-admi-obj-multiple.xml	                        (rev 0)
+++ projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-admi-obj-multiple.xml	2010-09-16 13:32:37 UTC (rev 108172)
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<ironjacamar xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:noNamespaceSchemaLocation="../../../main/resources/schema/ironjacamar_1_0.xsd">
+    <transaction-support>NoTransaction</transaction-support>
+    <connection-definitions>
+      <connection-definition class-name="token" enabled="true" jndi-name="aSAPXcess" pool-name="aSAPXcess">
+        <config-property name="LogConfigFile">ASAP_SAP_1_0.xml</config-property>
+        <config-property name="RootLogContext">ASAP_SAP_1_0</config-property>
+        <config-property name="LogLevel">WARN</config-property>
+        <config-property name="MessageBundleBase">ASAP_SAP_1_0</config-property>
+        <config-property name="LanguageCode">en</config-property>
+        <config-property name="CountryCode">US</config-property>
+        <config-property name="UserName"></config-property>
+        <config-property name="Password"></config-property>
+        <config-property name="ClientNumber"></config-property>
+        <config-property name="ServerName"></config-property>
+        <config-property name="SystemNumber"></config-property>
+        <config-property name="GatewayServerName"></config-property>
+        <config-property name="GatewayServiceNumber"></config-property>
+        <config-property name="SystemName"></config-property>
+        <config-property name="MessageServerName"></config-property>
+        <config-property name="GroupName"></config-property>
+        <config-property name="ConnectionURL"></config-property>
+        <pool>
+          <min-pool-size>0</min-pool-size>
+          <max-pool-size>64</max-pool-size>
+        </pool>
+        <security>
+          <user-name>aaa</user-name>
+          <password>bbb</password>
+        </security>
+        <timeout>
+          <blocking-timeout-millis>5000</blocking-timeout-millis>
+          <idle-timeout-minutes>15</idle-timeout-minutes>
+        </timeout>
+      </connection-definition>
+    </connection-definitions>
+    <admin-objects>
+      <admin-object class-name="TestAdminObj" enabled="true" jndi-name="token" use-java-context="false">
+        <config-property name="StringAdmin">OVERRIDEXML</config-property>
+      </admin-object>
+      <admin-object class-name="TestAdminObj" enabled="true" jndi-name="token" use-java-context="false">
+        <config-property name="StringAdmin2">OVERRIDEXML</config-property>
+      </admin-object>
+    </admin-objects>
+</ironjacamar>
\ No newline at end of file

Added: projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-admi-obj-notenabled.xml
===================================================================
--- projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-admi-obj-notenabled.xml	                        (rev 0)
+++ projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-admi-obj-notenabled.xml	2010-09-16 13:32:37 UTC (rev 108172)
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<ironjacamar xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:noNamespaceSchemaLocation="../../../main/resources/schema/ironjacamar_1_0.xsd">
+    <transaction-support>NoTransaction</transaction-support>
+    <connection-definitions>
+      <connection-definition class-name="token" enabled="true" jndi-name="aSAPXcess" pool-name="aSAPXcess">
+        <config-property name="LogConfigFile">ASAP_SAP_1_0.xml</config-property>
+        <config-property name="RootLogContext">ASAP_SAP_1_0</config-property>
+        <config-property name="LogLevel">WARN</config-property>
+        <config-property name="MessageBundleBase">ASAP_SAP_1_0</config-property>
+        <config-property name="LanguageCode">en</config-property>
+        <config-property name="CountryCode">US</config-property>
+        <config-property name="UserName"></config-property>
+        <config-property name="Password"></config-property>
+        <config-property name="ClientNumber"></config-property>
+        <config-property name="ServerName"></config-property>
+        <config-property name="SystemNumber"></config-property>
+        <config-property name="GatewayServerName"></config-property>
+        <config-property name="GatewayServiceNumber"></config-property>
+        <config-property name="SystemName"></config-property>
+        <config-property name="MessageServerName"></config-property>
+        <config-property name="GroupName"></config-property>
+        <config-property name="ConnectionURL"></config-property>
+        <pool>
+          <min-pool-size>0</min-pool-size>
+          <max-pool-size>64</max-pool-size>
+        </pool>
+        <security>
+          <user-name>aaa</user-name>
+          <password>bbb</password>
+        </security>
+        <timeout>
+          <blocking-timeout-millis>5000</blocking-timeout-millis>
+          <idle-timeout-minutes>15</idle-timeout-minutes>
+        </timeout>
+      </connection-definition>
+    </connection-definitions>
+    <admin-objects>
+      <admin-object class-name="TestAdminObj" enabled="false" jndi-name="token" use-java-context="false">
+        <config-property name="StringAdmin">OVERRIDEXML</config-property>
+      </admin-object>
+    </admin-objects>
+</ironjacamar>
\ No newline at end of file

Added: projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-admi-obj-notmatching.xml
===================================================================
--- projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-admi-obj-notmatching.xml	                        (rev 0)
+++ projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-admi-obj-notmatching.xml	2010-09-16 13:32:37 UTC (rev 108172)
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<ironjacamar xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:noNamespaceSchemaLocation="../../../main/resources/schema/ironjacamar_1_0.xsd">
+    <transaction-support>NoTransaction</transaction-support>
+    <connection-definitions>
+      <connection-definition class-name="token" enabled="true" jndi-name="aSAPXcess" pool-name="aSAPXcess">
+        <config-property name="LogConfigFile">ASAP_SAP_1_0.xml</config-property>
+        <config-property name="RootLogContext">ASAP_SAP_1_0</config-property>
+        <config-property name="LogLevel">WARN</config-property>
+        <config-property name="MessageBundleBase">ASAP_SAP_1_0</config-property>
+        <config-property name="LanguageCode">en</config-property>
+        <config-property name="CountryCode">US</config-property>
+        <config-property name="UserName"></config-property>
+        <config-property name="Password"></config-property>
+        <config-property name="ClientNumber"></config-property>
+        <config-property name="ServerName"></config-property>
+        <config-property name="SystemNumber"></config-property>
+        <config-property name="GatewayServerName"></config-property>
+        <config-property name="GatewayServiceNumber"></config-property>
+        <config-property name="SystemName"></config-property>
+        <config-property name="MessageServerName"></config-property>
+        <config-property name="GroupName"></config-property>
+        <config-property name="ConnectionURL"></config-property>
+        <pool>
+          <min-pool-size>0</min-pool-size>
+          <max-pool-size>64</max-pool-size>
+        </pool>
+        <security>
+          <user-name>aaa</user-name>
+          <password>bbb</password>
+        </security>
+        <timeout>
+          <blocking-timeout-millis>5000</blocking-timeout-millis>
+          <idle-timeout-minutes>15</idle-timeout-minutes>
+        </timeout>
+      </connection-definition>
+    </connection-definitions>
+    <admin-objects>
+      <admin-object class-name="NonMatching" enabled="true" jndi-name="token" use-java-context="false">
+        <config-property name="StringAdmin">OVERRIDEXML</config-property>
+      </admin-object>
+    </admin-objects>
+</ironjacamar>
\ No newline at end of file

Added: projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-admi-obj.xml
===================================================================
--- projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-admi-obj.xml	                        (rev 0)
+++ projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-admi-obj.xml	2010-09-16 13:32:37 UTC (rev 108172)
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<ironjacamar xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:noNamespaceSchemaLocation="../../../main/resources/schema/ironjacamar_1_0.xsd">
+    <transaction-support>NoTransaction</transaction-support>
+    <connection-definitions>
+      <connection-definition class-name="token" enabled="true" jndi-name="aSAPXcess" pool-name="aSAPXcess">
+        <config-property name="LogConfigFile">ASAP_SAP_1_0.xml</config-property>
+        <config-property name="RootLogContext">ASAP_SAP_1_0</config-property>
+        <config-property name="LogLevel">WARN</config-property>
+        <config-property name="MessageBundleBase">ASAP_SAP_1_0</config-property>
+        <config-property name="LanguageCode">en</config-property>
+        <config-property name="CountryCode">US</config-property>
+        <config-property name="UserName"></config-property>
+        <config-property name="Password"></config-property>
+        <config-property name="ClientNumber"></config-property>
+        <config-property name="ServerName"></config-property>
+        <config-property name="SystemNumber"></config-property>
+        <config-property name="GatewayServerName"></config-property>
+        <config-property name="GatewayServiceNumber"></config-property>
+        <config-property name="SystemName"></config-property>
+        <config-property name="MessageServerName"></config-property>
+        <config-property name="GroupName"></config-property>
+        <config-property name="ConnectionURL"></config-property>
+        <pool>
+          <min-pool-size>0</min-pool-size>
+          <max-pool-size>64</max-pool-size>
+        </pool>
+        <security>
+          <user-name>aaa</user-name>
+          <password>bbb</password>
+        </security>
+        <timeout>
+          <blocking-timeout-millis>5000</blocking-timeout-millis>
+          <idle-timeout-minutes>15</idle-timeout-minutes>
+        </timeout>
+      </connection-definition>
+    </connection-definitions>
+    <admin-objects>
+      <admin-object class-name="TestAdminObj" enabled="true" jndi-name="token" use-java-context="false">
+        <config-property name="StringAdmin">OVERRIDEXML</config-property>
+      </admin-object>
+    </admin-objects>
+</ironjacamar>
\ No newline at end of file

Added: projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-connectiondefinition.xml
===================================================================
--- projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-connectiondefinition.xml	                        (rev 0)
+++ projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-connectiondefinition.xml	2010-09-16 13:32:37 UTC (rev 108172)
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ironjacamar xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../main/resources/schema/ironjacamar_1_0.xsd">
+  <transaction-support>NoTransaction</transaction-support>
+  <connection-definitions>
+    <connection-definition class-name="org.jboss.jca.test.deployers.spec.rars.ra16inoutjbossra.TestManagedConnectionFactory"
+      enabled="true" jndi-name="aSAPXcess" pool-name="aSAPXcess">
+      <config-property name="LogConfigFile">ASAP_SAP_1_0.xml</config-property>
+      <config-property name="RootLogContext">ASAP_SAP_1_0</config-property>
+      <config-property name="LogLevel">WARN</config-property>
+      <config-property name="MessageBundleBase">ASAP_SAP_1_0</config-property>
+      <config-property name="LanguageCode">en</config-property>
+      <config-property name="CountryCode">US</config-property>
+      <config-property name="UserName"></config-property>
+      <config-property name="Password"></config-property>
+      <config-property name="ClientNumber"></config-property>
+      <config-property name="ServerName"></config-property>
+      <config-property name="SystemNumber"></config-property>
+      <config-property name="GatewayServerName"></config-property>
+      <config-property name="GatewayServiceNumber"></config-property>
+      <config-property name="SystemName"></config-property>
+      <config-property name="MessageServerName"></config-property>
+      <config-property name="GroupName"></config-property>
+      <config-property name="ConnectionURL"></config-property>
+      <pool>
+        <min-pool-size>0</min-pool-size>
+        <max-pool-size>64</max-pool-size>
+      </pool>
+      <security>
+        <user-name>aaa</user-name>
+        <password>bbb</password>
+      </security>
+      <timeout>
+        <blocking-timeout-millis>5000</blocking-timeout-millis>
+        <idle-timeout-minutes>15</idle-timeout-minutes>
+      </timeout>
+    </connection-definition>
+  </connection-definitions>
+</ironjacamar>
\ No newline at end of file

Added: projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-multiple-connectiondefinition.xml
===================================================================
--- projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-multiple-connectiondefinition.xml	                        (rev 0)
+++ projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-multiple-connectiondefinition.xml	2010-09-16 13:32:37 UTC (rev 108172)
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ironjacamar xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../main/resources/schema/ironjacamar_1_0.xsd">
+  <transaction-support>NoTransaction</transaction-support>
+  <connection-definitions>
+    <connection-definition class-name="org.jboss.jca.test.deployers.spec.rars.ra16inoutjbossra.TestManagedConnectionFactory"
+      enabled="true" jndi-name="aSAPXcess" pool-name="aSAPXcess">
+     <config-property name="LogLevel">WARN</config-property>
+      <config-property name="MessageBundleBase">ASAP_SAP_1_0</config-property>
+      <config-property name="LanguageCode">en</config-property>
+      <config-property name="CountryCode">US</config-property>
+      <config-property name="UserName"></config-property>
+      <config-property name="Password"></config-property>
+      <config-property name="ClientNumber"></config-property>
+      <config-property name="ServerName"></config-property>
+      <config-property name="SystemNumber"></config-property>
+      <config-property name="GatewayServerName"></config-property>
+      <config-property name="GatewayServiceNumber"></config-property>
+      <config-property name="SystemName"></config-property>
+      <config-property name="MessageServerName"></config-property>
+      <config-property name="GroupName"></config-property>
+      <config-property name="ConnectionURL"></config-property>
+      <pool>
+        <min-pool-size>0</min-pool-size>
+        <max-pool-size>64</max-pool-size>
+      </pool>
+      <security>
+        <password>bbb</password>
+      </security>
+      <timeout>
+        <blocking-timeout-millis>5000</blocking-timeout-millis>
+        <idle-timeout-minutes>15</idle-timeout-minutes>
+      </timeout>
+    </connection-definition>
+    <connection-definition class-name="org.jboss.jca.test.deployers.spec.rars.ra16inoutjbossra.TestManagedConnectionFactory"
+      enabled="true" jndi-name="aSAPXcess" pool-name="aSAPXcess">
+      <config-property name="LogConfigFile">ASAP_SAP_1_0.xml</config-property>
+      <config-property name="RootLogContext">ASAP_SAP_1_0</config-property>
+      <security>
+        <user-name>aaa</user-name>
+        </security>
+      <timeout>
+        <blocking-timeout-millis>5000</blocking-timeout-millis>
+        <idle-timeout-minutes>15</idle-timeout-minutes>
+      </timeout>
+    </connection-definition>
+  </connection-definitions>
+</ironjacamar>
\ No newline at end of file

Added: projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-with-connector-distributivity1.xml
===================================================================
--- projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-with-connector-distributivity1.xml	                        (rev 0)
+++ projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-with-connector-distributivity1.xml	2010-09-16 13:32:37 UTC (rev 108172)
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!-- $Id $ -->
+
+<ironjacamar xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:noNamespaceSchemaLocation="../../../../../../common/src/main/resources/schema/ironjacamar_1_0.xsd">
+  
+   <config-property name="StringRAR">XMLOVERRIDE</config-property>
+   
+</ironjacamar>
\ No newline at end of file

Added: projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-with-connector-distributivity2.xml
===================================================================
--- projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-with-connector-distributivity2.xml	                        (rev 0)
+++ projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-with-connector-distributivity2.xml	2010-09-16 13:32:37 UTC (rev 108172)
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!-- $Id $ -->
+
+<ironjacamar xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:noNamespaceSchemaLocation="../../../../../../common/src/main/resources/schema/ironjacamar_1_0.xsd">
+  
+   <config-property name="StringRAR2">XMLOVERRIDE</config-property>
+   
+</ironjacamar>
\ No newline at end of file

Added: projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-with-connector-withNewProperty.xml
===================================================================
--- projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-with-connector-withNewProperty.xml	                        (rev 0)
+++ projects/jboss-jca/trunk/common/src/test/resources/merger/ironjacamar-merging-with-connector-withNewProperty.xml	2010-09-16 13:32:37 UTC (rev 108172)
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!-- $Id $ -->
+
+<ironjacamar xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:noNamespaceSchemaLocation="../../../../../../common/src/main/resources/schema/ironjacamar_1_0.xsd">
+  
+   <config-property name="StringRAR">XMLOVERRIDE</config-property> 
+   <config-property name="IgnoreMe">XMLOVERRIDE</config-property>   
+</ironjacamar>
\ No newline at end of file



More information about the jboss-cvs-commits mailing list