[jboss-cvs] JBossAS SVN: r111243 - in projects/jboss-jca/tags: IRONJACAMAR_1_0_0_BETA6 and 6 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Mon Apr 25 10:41:11 EDT 2011


Author: jesper.pedersen
Date: 2011-04-25 10:41:10 -0400 (Mon, 25 Apr 2011)
New Revision: 111243

Added:
   projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/
   projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/adapters/src/main/java/org/jboss/jca/adapters/jdbc/statistics/JdbcStatisticsPlugin.java
   projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/build.xml
   projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/build.xml
   projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/AbstractPool.java
   projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/SubPoolStatistics.java
   projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/mcp/ManagedConnectionPoolStatisticsImpl.java
   projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/mcp/Semaphore.java
   projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/spi/statistics/StatisticsPlugin.java
   projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/doc/userguide/en-US/modules/download.xml
   projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/ivy.xml
Removed:
   projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/adapters/src/main/java/org/jboss/jca/adapters/jdbc/statistics/JdbcStatisticsPlugin.java
   projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/build.xml
   projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/build.xml
   projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/AbstractPool.java
   projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/SubPoolStatistics.java
   projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/mcp/ManagedConnectionPoolStatisticsImpl.java
   projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/mcp/Semaphore.java
   projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/spi/statistics/StatisticsPlugin.java
   projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/doc/userguide/en-US/modules/download.xml
   projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/ivy.xml
Log:
IronJacamar 1.0.0.Beta6

Deleted: projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/adapters/src/main/java/org/jboss/jca/adapters/jdbc/statistics/JdbcStatisticsPlugin.java
===================================================================
--- projects/jboss-jca/trunk/adapters/src/main/java/org/jboss/jca/adapters/jdbc/statistics/JdbcStatisticsPlugin.java	2011-04-25 08:15:56 UTC (rev 111240)
+++ projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/adapters/src/main/java/org/jboss/jca/adapters/jdbc/statistics/JdbcStatisticsPlugin.java	2011-04-25 14:41:10 UTC (rev 111243)
@@ -1,368 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2011, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file 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.jca.adapters.jdbc.statistics;
-
-import org.jboss.jca.adapters.jdbc.PreparedStatementCache;
-import org.jboss.jca.core.spi.statistics.StatisticsPlugin;
-
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Locale;
-import java.util.Map;
-import java.util.ResourceBundle;
-import java.util.Set;
-import java.util.concurrent.atomic.AtomicBoolean;
-import java.util.concurrent.atomic.AtomicInteger;
-import java.util.concurrent.atomic.AtomicLong;
-
-/**
- * JDBC statistics.
- *
- * @author <a href="jesper.pedersen at jboss.org">Jesper Pedersen</a>
- */
-public class JdbcStatisticsPlugin implements StatisticsPlugin
-{
-   private static final String PREPARED_STATEMENT_CACHE_ACCESS_COUNT = "PreparedStatementCacheAccessCount";
-   private static final String PREPARED_STATEMENT_CACHE_ADD_COUNT = "PreparedStatementCacheAddCount";
-   private static final String PREPARED_STATEMENT_CACHE_CURRENT_SIZE = "PreparedStatementCacheCurrentSize";
-   private static final String PREPARED_STATEMENT_CACHE_DELETE_COUNT = "PreparedStatementCacheDeleteCount";
-   private static final String PREPARED_STATEMENT_CACHE_HIT_COUNT = "PreparedStatementCacheHitCount";
-   private static final String PREPARED_STATEMENT_CACHE_MISS_COUNT = "PreparedStatementCacheMissCount";
-
-   private AtomicLong preparedStatementCacheAccessCount;
-   private AtomicLong preparedStatementCacheAddCount;
-   private AtomicLong preparedStatementCacheDeleteCount;
-   private AtomicInteger preparedStatementCacheHitCount;
-   private AtomicInteger preparedStatementCacheMissCount;
-
-   private Set<String> names;
-   private Map<String, Class> types;
-   private AtomicBoolean enabled;
-   private Map<Locale, ResourceBundle> rbs;
-
-   private Set<PreparedStatementCache> psCaches;
-
-   /**
-    * Constructor
-    */
-   public JdbcStatisticsPlugin()
-   {
-      Set<String> n = new HashSet<String>();
-      Map<String, Class> t = new HashMap<String, Class>();
-
-      n.add(PREPARED_STATEMENT_CACHE_ACCESS_COUNT);
-      t.put(PREPARED_STATEMENT_CACHE_ACCESS_COUNT, long.class);
-
-      n.add(PREPARED_STATEMENT_CACHE_ADD_COUNT);
-      t.put(PREPARED_STATEMENT_CACHE_ADD_COUNT, long.class);
-
-      n.add(PREPARED_STATEMENT_CACHE_CURRENT_SIZE);
-      t.put(PREPARED_STATEMENT_CACHE_CURRENT_SIZE, int.class);
-
-      n.add(PREPARED_STATEMENT_CACHE_DELETE_COUNT);
-      t.put(PREPARED_STATEMENT_CACHE_DELETE_COUNT, long.class);
-
-      n.add(PREPARED_STATEMENT_CACHE_HIT_COUNT);
-      t.put(PREPARED_STATEMENT_CACHE_HIT_COUNT, int.class);
-
-      n.add(PREPARED_STATEMENT_CACHE_MISS_COUNT);
-      t.put(PREPARED_STATEMENT_CACHE_MISS_COUNT, int.class);
-
-      this.names = Collections.unmodifiableSet(n);
-      this.types = Collections.unmodifiableMap(t);
-      this.enabled = new AtomicBoolean(true);
-      
-      ResourceBundle defaultResourceBundle = 
-         ResourceBundle.getBundle("jdbc", Locale.US, JdbcStatisticsPlugin.class.getClassLoader());
-      this.rbs = new HashMap<Locale, ResourceBundle>(1);
-      this.rbs.put(Locale.US, defaultResourceBundle);
-
-      this.preparedStatementCacheAccessCount = new AtomicLong(0);
-      this.preparedStatementCacheAddCount = new AtomicLong(0);
-      this.preparedStatementCacheDeleteCount = new AtomicLong(0);
-      this.preparedStatementCacheHitCount = new AtomicInteger(0);
-      this.preparedStatementCacheMissCount = new AtomicInteger(0);
-
-      this.psCaches = Collections.synchronizedSet(new HashSet<PreparedStatementCache>());
-
-      clear();
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public Set<String> getNames()
-   {
-      return names;
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public Class getType(String name)
-   {
-      return types.get(name);
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public String getDescription(String name)
-   {
-      return getDescription(name, Locale.US);
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public String getDescription(String name, Locale locale)
-   {
-      ResourceBundle rb = rbs.get(locale);
-
-      if (rb == null)
-      {
-         ResourceBundle newResourceBundle =
-            ResourceBundle.getBundle("jdbc", locale, JdbcStatisticsPlugin.class.getClassLoader());
-
-         if (newResourceBundle != null)
-            rbs.put(locale, newResourceBundle);
-      }
-
-      if (rb == null)
-         rb = rbs.get(Locale.US);
-
-      if (rb != null)
-         return rb.getString(name);
-
-      return "";
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public Object getValue(String name)
-   {
-      if (PREPARED_STATEMENT_CACHE_ACCESS_COUNT.equals(name))
-      {
-         return getPreparedStatementCacheAccessCount();
-      }
-      else if (PREPARED_STATEMENT_CACHE_ADD_COUNT.equals(name))
-      {
-         return getPreparedStatementCacheAddCount();
-      }
-      else if (PREPARED_STATEMENT_CACHE_CURRENT_SIZE.equals(name))
-      {
-         return getPreparedStatementCacheCurrentSize();
-      }
-      else if (PREPARED_STATEMENT_CACHE_DELETE_COUNT.equals(name))
-      {
-         return getPreparedStatementCacheDeleteCount();
-      }
-      else if (PREPARED_STATEMENT_CACHE_HIT_COUNT.equals(name))
-      {
-         return getPreparedStatementCacheHitCount();
-      }
-      else if (PREPARED_STATEMENT_CACHE_MISS_COUNT.equals(name))
-      {
-         return getPreparedStatementCacheMissCount();
-      }
-
-      return null;
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public boolean isEnabled()
-   {
-      return enabled.get();
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public void setEnabled(boolean v)
-   {
-      enabled.set(v);
-   }
-
-   /**
-    * Register prepared statement cache
-    * @param v The cache
-    */
-   public void registerPreparedStatementCache(PreparedStatementCache v)
-   {
-      psCaches.add(v);
-   }
-
-   /**
-    * Deregister prepared statement cache
-    * @param v The cache
-    */
-   public void deregisterPreparedStatementCache(PreparedStatementCache v)
-   {
-      psCaches.remove(v);
-   }
-
-   /**
-    * Get the access count for the prepated statement cache
-    * @return The value
-    */
-   public long getPreparedStatementCacheAccessCount()
-   {
-      if (isEnabled())
-         return preparedStatementCacheAccessCount.get();
-
-      return 0;
-   }
-
-   /**
-    * Delta the access count for the prepated statement cache
-    */
-   public void deltaPreparedStatementCacheAccessCount()
-   {
-      if (isEnabled())
-         preparedStatementCacheAccessCount.incrementAndGet();
-   }
-
-   /**
-    * Get the add count for the prepated statement cache
-    * @return The value
-    */
-   public long getPreparedStatementCacheAddCount()
-   {
-      if (isEnabled())
-         return preparedStatementCacheAddCount.get();
-
-      return 0;
-   }
-
-   /**
-    * Delta the add count for the prepated statement cache
-    */
-   public void deltaPreparedStatementCacheAddCount()
-   {
-      if (isEnabled())
-         preparedStatementCacheAddCount.incrementAndGet();
-   }
-
-   /**
-    * Get the current size for the prepated statement cache
-    * @return The value
-    */
-   public int getPreparedStatementCacheCurrentSize()
-   {
-      if (isEnabled())
-      {
-         Set<PreparedStatementCache> copy = new HashSet<PreparedStatementCache>(psCaches);
-         int size = 0;
-
-         for (PreparedStatementCache psc : copy)
-         {
-            size += psc.size();
-         }
-
-         return size;
-      }
-
-      return 0;
-   }
-
-   /**
-    * Get the delete count for the prepated statement cache
-    * @return The value
-    */
-   public long getPreparedStatementCacheDeleteCount()
-   {
-      if (isEnabled())
-         return preparedStatementCacheDeleteCount.get();
-
-      return 0;
-   }
-
-   /**
-    * Delta the delete count for the prepated statement cache
-    */
-   public void deltaPreparedStatementCacheDeleteCount()
-   {
-      if (isEnabled())
-         preparedStatementCacheDeleteCount.incrementAndGet();
-   }
-
-   /**
-    * Get the hit count for the prepated statement cache
-    * @return The value
-    */
-   public int getPreparedStatementCacheHitCount()
-   {
-      if (isEnabled())
-         return preparedStatementCacheHitCount.get();
-
-      return 0;
-   }
-
-   /**
-    * Delta the hit count for the prepated statement cache
-    */
-   public void deltaPreparedStatementCacheHitCount()
-   {
-      if (isEnabled())
-         preparedStatementCacheHitCount.incrementAndGet();
-   }
-
-   /**
-    * Get the miss count for the prepated statement cache
-    * @return The value
-    */
-   public int getPreparedStatementCacheMissCount()
-   {
-      if (isEnabled())
-         return preparedStatementCacheMissCount.get();
-
-      return 0;
-   }
-
-   /**
-    * Delta the miss count for the prepated statement cache
-    */
-   public void deltaPreparedStatementCacheMissCount()
-   {
-      if (isEnabled())
-         preparedStatementCacheMissCount.incrementAndGet();
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public synchronized void clear()
-   {
-      if (isEnabled())
-      {
-         preparedStatementCacheAccessCount.set(0);
-         preparedStatementCacheAddCount.set(0);
-         preparedStatementCacheDeleteCount.set(0);
-         preparedStatementCacheHitCount.set(0);
-         preparedStatementCacheMissCount.set(0);
-      }
-   }
-}

Copied: projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/adapters/src/main/java/org/jboss/jca/adapters/jdbc/statistics/JdbcStatisticsPlugin.java (from rev 111241, projects/jboss-jca/trunk/adapters/src/main/java/org/jboss/jca/adapters/jdbc/statistics/JdbcStatisticsPlugin.java)
===================================================================
--- projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/adapters/src/main/java/org/jboss/jca/adapters/jdbc/statistics/JdbcStatisticsPlugin.java	                        (rev 0)
+++ projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/adapters/src/main/java/org/jboss/jca/adapters/jdbc/statistics/JdbcStatisticsPlugin.java	2011-04-25 14:41:10 UTC (rev 111243)
@@ -0,0 +1,371 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2011, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file 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.jca.adapters.jdbc.statistics;
+
+import org.jboss.jca.adapters.jdbc.PreparedStatementCache;
+import org.jboss.jca.core.spi.statistics.StatisticsPlugin;
+
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Locale;
+import java.util.Map;
+import java.util.ResourceBundle;
+import java.util.Set;
+import java.util.concurrent.atomic.AtomicBoolean;
+import java.util.concurrent.atomic.AtomicInteger;
+import java.util.concurrent.atomic.AtomicLong;
+
+/**
+ * JDBC statistics.
+ *
+ * @author <a href="jesper.pedersen at jboss.org">Jesper Pedersen</a>
+ */
+public class JdbcStatisticsPlugin implements StatisticsPlugin
+{
+   /** Serial version uid */
+   private static final long serialVersionUID = 1L;
+
+   private static final String PREPARED_STATEMENT_CACHE_ACCESS_COUNT = "PreparedStatementCacheAccessCount";
+   private static final String PREPARED_STATEMENT_CACHE_ADD_COUNT = "PreparedStatementCacheAddCount";
+   private static final String PREPARED_STATEMENT_CACHE_CURRENT_SIZE = "PreparedStatementCacheCurrentSize";
+   private static final String PREPARED_STATEMENT_CACHE_DELETE_COUNT = "PreparedStatementCacheDeleteCount";
+   private static final String PREPARED_STATEMENT_CACHE_HIT_COUNT = "PreparedStatementCacheHitCount";
+   private static final String PREPARED_STATEMENT_CACHE_MISS_COUNT = "PreparedStatementCacheMissCount";
+
+   private AtomicLong preparedStatementCacheAccessCount;
+   private AtomicLong preparedStatementCacheAddCount;
+   private AtomicLong preparedStatementCacheDeleteCount;
+   private AtomicInteger preparedStatementCacheHitCount;
+   private AtomicInteger preparedStatementCacheMissCount;
+
+   private Set<String> names;
+   private Map<String, Class> types;
+   private AtomicBoolean enabled;
+   private Map<Locale, ResourceBundle> rbs;
+
+   private Set<PreparedStatementCache> psCaches;
+
+   /**
+    * Constructor
+    */
+   public JdbcStatisticsPlugin()
+   {
+      Set<String> n = new HashSet<String>();
+      Map<String, Class> t = new HashMap<String, Class>();
+
+      n.add(PREPARED_STATEMENT_CACHE_ACCESS_COUNT);
+      t.put(PREPARED_STATEMENT_CACHE_ACCESS_COUNT, long.class);
+
+      n.add(PREPARED_STATEMENT_CACHE_ADD_COUNT);
+      t.put(PREPARED_STATEMENT_CACHE_ADD_COUNT, long.class);
+
+      n.add(PREPARED_STATEMENT_CACHE_CURRENT_SIZE);
+      t.put(PREPARED_STATEMENT_CACHE_CURRENT_SIZE, int.class);
+
+      n.add(PREPARED_STATEMENT_CACHE_DELETE_COUNT);
+      t.put(PREPARED_STATEMENT_CACHE_DELETE_COUNT, long.class);
+
+      n.add(PREPARED_STATEMENT_CACHE_HIT_COUNT);
+      t.put(PREPARED_STATEMENT_CACHE_HIT_COUNT, int.class);
+
+      n.add(PREPARED_STATEMENT_CACHE_MISS_COUNT);
+      t.put(PREPARED_STATEMENT_CACHE_MISS_COUNT, int.class);
+
+      this.names = Collections.unmodifiableSet(n);
+      this.types = Collections.unmodifiableMap(t);
+      this.enabled = new AtomicBoolean(true);
+      
+      ResourceBundle defaultResourceBundle = 
+         ResourceBundle.getBundle("jdbc", Locale.US, JdbcStatisticsPlugin.class.getClassLoader());
+      this.rbs = new HashMap<Locale, ResourceBundle>(1);
+      this.rbs.put(Locale.US, defaultResourceBundle);
+
+      this.preparedStatementCacheAccessCount = new AtomicLong(0);
+      this.preparedStatementCacheAddCount = new AtomicLong(0);
+      this.preparedStatementCacheDeleteCount = new AtomicLong(0);
+      this.preparedStatementCacheHitCount = new AtomicInteger(0);
+      this.preparedStatementCacheMissCount = new AtomicInteger(0);
+
+      this.psCaches = Collections.synchronizedSet(new HashSet<PreparedStatementCache>());
+
+      clear();
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public Set<String> getNames()
+   {
+      return names;
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public Class getType(String name)
+   {
+      return types.get(name);
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public String getDescription(String name)
+   {
+      return getDescription(name, Locale.US);
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public String getDescription(String name, Locale locale)
+   {
+      ResourceBundle rb = rbs.get(locale);
+
+      if (rb == null)
+      {
+         ResourceBundle newResourceBundle =
+            ResourceBundle.getBundle("jdbc", locale, JdbcStatisticsPlugin.class.getClassLoader());
+
+         if (newResourceBundle != null)
+            rbs.put(locale, newResourceBundle);
+      }
+
+      if (rb == null)
+         rb = rbs.get(Locale.US);
+
+      if (rb != null)
+         return rb.getString(name);
+
+      return "";
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public Object getValue(String name)
+   {
+      if (PREPARED_STATEMENT_CACHE_ACCESS_COUNT.equals(name))
+      {
+         return getPreparedStatementCacheAccessCount();
+      }
+      else if (PREPARED_STATEMENT_CACHE_ADD_COUNT.equals(name))
+      {
+         return getPreparedStatementCacheAddCount();
+      }
+      else if (PREPARED_STATEMENT_CACHE_CURRENT_SIZE.equals(name))
+      {
+         return getPreparedStatementCacheCurrentSize();
+      }
+      else if (PREPARED_STATEMENT_CACHE_DELETE_COUNT.equals(name))
+      {
+         return getPreparedStatementCacheDeleteCount();
+      }
+      else if (PREPARED_STATEMENT_CACHE_HIT_COUNT.equals(name))
+      {
+         return getPreparedStatementCacheHitCount();
+      }
+      else if (PREPARED_STATEMENT_CACHE_MISS_COUNT.equals(name))
+      {
+         return getPreparedStatementCacheMissCount();
+      }
+
+      return null;
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public boolean isEnabled()
+   {
+      return enabled.get();
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public void setEnabled(boolean v)
+   {
+      enabled.set(v);
+   }
+
+   /**
+    * Register prepared statement cache
+    * @param v The cache
+    */
+   public void registerPreparedStatementCache(PreparedStatementCache v)
+   {
+      psCaches.add(v);
+   }
+
+   /**
+    * Deregister prepared statement cache
+    * @param v The cache
+    */
+   public void deregisterPreparedStatementCache(PreparedStatementCache v)
+   {
+      psCaches.remove(v);
+   }
+
+   /**
+    * Get the access count for the prepated statement cache
+    * @return The value
+    */
+   public long getPreparedStatementCacheAccessCount()
+   {
+      if (isEnabled())
+         return preparedStatementCacheAccessCount.get();
+
+      return 0;
+   }
+
+   /**
+    * Delta the access count for the prepated statement cache
+    */
+   public void deltaPreparedStatementCacheAccessCount()
+   {
+      if (isEnabled())
+         preparedStatementCacheAccessCount.incrementAndGet();
+   }
+
+   /**
+    * Get the add count for the prepated statement cache
+    * @return The value
+    */
+   public long getPreparedStatementCacheAddCount()
+   {
+      if (isEnabled())
+         return preparedStatementCacheAddCount.get();
+
+      return 0;
+   }
+
+   /**
+    * Delta the add count for the prepated statement cache
+    */
+   public void deltaPreparedStatementCacheAddCount()
+   {
+      if (isEnabled())
+         preparedStatementCacheAddCount.incrementAndGet();
+   }
+
+   /**
+    * Get the current size for the prepated statement cache
+    * @return The value
+    */
+   public int getPreparedStatementCacheCurrentSize()
+   {
+      if (isEnabled())
+      {
+         Set<PreparedStatementCache> copy = new HashSet<PreparedStatementCache>(psCaches);
+         int size = 0;
+
+         for (PreparedStatementCache psc : copy)
+         {
+            size += psc.size();
+         }
+
+         return size;
+      }
+
+      return 0;
+   }
+
+   /**
+    * Get the delete count for the prepated statement cache
+    * @return The value
+    */
+   public long getPreparedStatementCacheDeleteCount()
+   {
+      if (isEnabled())
+         return preparedStatementCacheDeleteCount.get();
+
+      return 0;
+   }
+
+   /**
+    * Delta the delete count for the prepated statement cache
+    */
+   public void deltaPreparedStatementCacheDeleteCount()
+   {
+      if (isEnabled())
+         preparedStatementCacheDeleteCount.incrementAndGet();
+   }
+
+   /**
+    * Get the hit count for the prepated statement cache
+    * @return The value
+    */
+   public int getPreparedStatementCacheHitCount()
+   {
+      if (isEnabled())
+         return preparedStatementCacheHitCount.get();
+
+      return 0;
+   }
+
+   /**
+    * Delta the hit count for the prepated statement cache
+    */
+   public void deltaPreparedStatementCacheHitCount()
+   {
+      if (isEnabled())
+         preparedStatementCacheHitCount.incrementAndGet();
+   }
+
+   /**
+    * Get the miss count for the prepated statement cache
+    * @return The value
+    */
+   public int getPreparedStatementCacheMissCount()
+   {
+      if (isEnabled())
+         return preparedStatementCacheMissCount.get();
+
+      return 0;
+   }
+
+   /**
+    * Delta the miss count for the prepated statement cache
+    */
+   public void deltaPreparedStatementCacheMissCount()
+   {
+      if (isEnabled())
+         preparedStatementCacheMissCount.incrementAndGet();
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public synchronized void clear()
+   {
+      if (isEnabled())
+      {
+         preparedStatementCacheAccessCount.set(0);
+         preparedStatementCacheAddCount.set(0);
+         preparedStatementCacheDeleteCount.set(0);
+         preparedStatementCacheHitCount.set(0);
+         preparedStatementCacheMissCount.set(0);
+      }
+   }
+}

Deleted: projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/build.xml
===================================================================
--- projects/jboss-jca/trunk/build.xml	2011-04-25 08:15:56 UTC (rev 111240)
+++ projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/build.xml	2011-04-25 14:41:10 UTC (rev 111243)
@@ -1,1575 +0,0 @@
-<!--
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file 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.
--->
-<project name="ironjacamar" 
-         default="jars" 
-         basedir="." 
-         xmlns:ivy="antlib:org.apache.ivy.ant">
-
-  <available classname="java.lang.Enum" property="HAVE_JDK_1.5"/>
-  <available classname="java.lang.management.LockInfo" property="HAVE_JDK_1.6"/>
-  <available classname="java.util.concurrent.ForkJoinPool" property="HAVE_JDK_1.7"/>
-
-  <!-- ================================= 
-       Project              
-       ================================= -->
-  <property name="name" value="ironjacamar"/>
-  <property name="major" value="1"/>
-  <property name="minor" value="0"/>
-  <property name="patch" value="0"/>
-  <property name="type" value="Beta6"/>
-
-  <condition property="version" value="${major}.${minor}.${patch}-SNAPSHOT">
-    <isset property="snapshot"/>
-  </condition>
-  <property name="version" value="${major}.${minor}.${patch}.${type}"/>
-
-  <!-- ================================= 
-       Ivy              
-       ================================= -->
-  <property name="ivy.version" value="2.2.0"/>
-  <property name="ivy.dir" value="${user.home}/.ivy2/cache/org.apache.ivy/jars"/>
-  <property name="ivy.jar.name" value="ivy-${ivy.version}.jar"/>
-
-  <!-- ================================= 
-       Repositories              
-       ================================= -->
-  <property name="central.repo" value="http://repo1.maven.org/maven2"/>
-  <property name="jboss.repo" value="http://repository.jboss.org/nexus/content/groups/public/"/>
-  <property name="snapshots.repo" value="http://repository.jboss.org/nexus/content/repositories/snapshots/"/>
-  <property name="fungal.repo" value="http://jesperpedersen.github.com/fungal/maven2"/>
-  
-  <!-- ================================= 
-       Properties              
-       ================================= -->
-  <property name="lib.dir" value="${basedir}/lib" />
-  <property name="build.dir" value="${basedir}/build" />
-  <property name="api.dir" value="${basedir}/api" />
-  <property name="doc.dir" value="${basedir}/doc" />
-  <property name="target.dir" value="${basedir}/target" />
-  <property name="tools.dir" value="${basedir}/tools" />
-  <property name="reports.dir" value="${basedir}/reports" />
-  <property name="test.dir" value="${reports.dir}" />
-
-  <property name="javac.debug" value="on" />
-  <property name="javac.deprecation" value="on" />
-  <property name="javac.optimize" value="off" />
-
-  <property name="junit.printsummary" value="yes" />
-  <property name="junit.haltonerror" value="no" />
-  <property name="junit.haltonfailure" value="no" />
-  <property name="junit.fork" value="yes" />
-  <property name="junit.timeout" value="60000" />
-  <property name="junit.jvm" value="" />
-  <property name="junit.jvm.options" value="-Xms128m -Xmx512m -XX:MaxPermSize=256m" />
-  <property name="junit.batchtest.haltonerror" value="no" />
-  <property name="junit.batchtest.haltonfailure" value="no" />
-  <property name="junit.batchtest.fork" value="yes" />
-
-  <!-- ================================= 
-       Versions              
-       ================================= -->
-  <property name="version.ant" value="1.8.1"/>
-  <property name="version.activation" value="1.1"/>
-  <property name="version.apache-log4j" value="1.2.16"/>
-  <property name="version.apache-logging" value="1.1.0.jboss"/>
-  <property name="version.apiviz" value="1.3.1.GA"/>
-  <property name="version.arquillian" value="1.0.0.Alpha4"/>
-  <property name="version.dom4j" value="1.6.1"/>
-  <property name="version.mockito" value="1.8.5"/>
-  <property name="version.eclipse.ecj" value="3.5.1"/>
-  <property name="version.fungal" value="0.9.0.Final"/>
-  <property name="version.h2" value="1.3.154"/>
-  <property name="version.hibernate-annotations" value="3.5.1-Final"/>
-  <property name="version.hibernate-validator" value="4.1.0.Final"/>
-  <property name="version.hornetq" value="2.2.2.Final"/>
-  <property name="version.javassist" value="3.14.0-GA"/>
-  <property name="version.jboss.common" value="2.2.17.GA"/>
-  <property name="version.jboss.integration" value="5.1.0.CR1"/>
-  <property name="version.jboss.jaspi.api" value="1.0.0.GA"/>
-  <property name="version.jboss.jms.api" value="1.0.0.Beta1"/>
-  <property name="version.jboss.logging" value="3.0.0.Beta3"/>
-  <property name="version.jboss.logmanager" value="1.2.0.CR8"/>
-  <property name="version.jboss.naming" value="5.0.3.GA"/>
-  <property name="version.jboss.netty" value="3.2.1.Final"/>
-  <property name="version.jboss.papaki" value="1.0.0.Beta3"/>
-  <property name="version.jboss.picketbox" value="4.0.0.Alpha8"/>
-  <property name="version.jboss.security" value="2.1.0.20090318"/>
-  <property name="version.jboss.shrinkwrap" value="1.0.0-alpha-11"/>
-  <property name="version.jboss.slf4j" value="1.0.2.GA"/>
-  <property name="version.jboss.slf4j.logmanager" value="1.0.0.CR3"/>
-  <property name="version.jboss.stdio" value="1.0.0.CR3"/>
-  <property name="version.jboss.threads" value="2.0.0.CR7"/>
-  <property name="version.jboss.ts" value="4.14.0.Final"/>
-  <property name="version.jdepend" value="2.9.1"/>
-  <property name="version.jetty" value="7.4.0.v20110414"/>
-  <property name="version.jetty.servlet" value="6.1.14"/>
-  <property name="version.jetty.glassfish" value="2.1.v20100127"/>
-  <property name="version.jasper" value="glassfish_2.1.0.v201004190952"/>
-  <property name="version.jpa" value="1.0"/>
-  <property name="version.junit" value="4.8.2"/>
-  <property name="version.jaxb.api" value="2.0"/>
-  <property name="version.jaxb.impl" value="2.1"/>
-  <property name="version.mail-api" value="1.4.4"/>
-  <property name="version.maven" value="2.2.1"/>
-  <property name="version.rhq" value="4.0.0.Beta1"/>
-  <property name="version.slf4j" value="1.5.8"/>
-  <property name="version.transaction.api" value="1.0.1.GA"/>
-  <property name="version.validation-api" value="1.0.0.GA"/>
-
-  <!-- ================================= 
-       Paths              
-       ================================= -->
-  <path id="sjc.lib.path.id">
-    <fileset dir="${lib.dir}/common">
-      <include name="**/*.jar"/>
-    </fileset>
-    <fileset dir="${lib.dir}/embedded">
-      <include name="**/*.jar"/>
-    </fileset>
-    <fileset dir="${lib.dir}/arquillian">
-      <include name="**/*.jar"/>
-    </fileset>
-    <fileset dir="${lib.dir}/jetty">
-      <include name="**/*.jar"/>
-    </fileset>
-    <fileset dir="${lib.dir}/hornetq">
-      <include name="**/*.jar"/>
-    </fileset>
-    <fileset dir="${lib.dir}/sjc">
-      <include name="**/*.jar"/>
-    </fileset>
-    <fileset dir="${lib.dir}/mail">
-      <include name="**/*.jar"/>
-    </fileset>
-    <fileset dir="${lib.dir}/tools">
-      <include name="**/*.jar"/>
-    </fileset>
-    <fileset dir="${target.dir}">
-      <include name="**/*.jar"/>
-    </fileset>
-  </path>
-
-  <path id="rhq.lib.path.id">
-    <path refid="sjc.lib.path.id"/>
-    <fileset dir="${lib.dir}/rhq">
-      <include name="**/*.jar"/>
-    </fileset>
-  </path>
-
-  <path id="test.lib.path.id">
-    <fileset dir="${lib.dir}/common">
-      <include name="**/*.jar"/>
-    </fileset>
-    <fileset dir="${lib.dir}/sjc">
-      <include name="**/*.jar"/>
-    </fileset>
-    <fileset dir="${lib.dir}/embedded">
-      <include name="**/*.jar"/>
-    </fileset>
-    <fileset dir="${lib.dir}/arquillian">
-      <include name="**/*.jar"/>
-    </fileset>
-    <fileset dir="${lib.dir}/mail">
-      <include name="**/*.jar"/>
-    </fileset>
-    <fileset dir="${lib.dir}/hornetq">
-      <include name="**/*.jar"/>
-    </fileset>
-    <fileset dir="${lib.dir}/test">
-      <include name="**/*.jar"/>
-    </fileset>
-    <fileset dir="${lib.dir}/tools">
-      <include name="**/*.jar"/>
-    </fileset>
-    <fileset dir="${lib.dir}/rhq">
-      <include name="**/*.jar"/>
-    </fileset>
-    <fileset dir="${target.dir}">
-       <include name="**/*.jar"/>
-    </fileset>
-  </path>
-
-  <path id="checkstyle.lib.path.id">
-    <fileset dir="${tools.dir}/checkstyle/lib"/>
-    <fileset dir="${lib.dir}/common">
-      <include name="**/*.jar"/>
-    </fileset>
-    <fileset dir="${lib.dir}/embedded">
-      <include name="**/*.jar"/>
-    </fileset>
-    <fileset dir="${lib.dir}/arquillian">
-      <include name="**/*.jar"/>
-    </fileset>
-    <fileset dir="${lib.dir}/jetty">
-      <include name="**/*.jar"/>
-    </fileset>
-    <fileset dir="${lib.dir}/hornetq">
-      <include name="**/*.jar"/>
-    </fileset>
-    <fileset dir="${lib.dir}/sjc">
-      <include name="**/*.jar"/>
-    </fileset>
-    <fileset dir="${lib.dir}/mail">
-      <include name="**/*.jar"/>
-    </fileset>
-    <fileset dir="${lib.dir}/test">
-      <include name="**/*.jar"/>
-    </fileset>
-    <fileset dir="${lib.dir}/tools">
-      <include name="**/*.jar"/>
-    </fileset>
-    <fileset dir="${lib.dir}/rhq">
-      <include name="**/*.jar"/>
-    </fileset>
-    <fileset dir="${target.dir}">
-      <include name="**/*.jar"/>
-    </fileset>
-  </path>
-
-  <path id="findbugs.lib.path.id">
-    <fileset dir="${tools.dir}/findbugs/lib"/>
-  </path>
-
-  <path id="cobertura.lib.path.id">
-    <fileset dir="${tools.dir}/cobertura/lib"/>
-  </path>
-
-  <path id="tattletale.lib.path.id">
-    <fileset dir="${tools.dir}/tattletale/lib"/>
-  </path>
-
-  <!-- ================================= 
-       Bootstrap Ivy
-       ================================= -->
-  <mkdir dir="${ivy.dir}"/>
-  <get usetimestamp="true" src="https://repository.apache.org/content/repositories/releases/org/apache/ivy/ivy/${ivy.version}/${ivy.jar.name}" 
-       skipexisting="true"
-       dest="${ivy.dir}/${ivy.jar.name}"/>
-  <taskdef resource="org/apache/ivy/ant/antlib.xml" uri="antlib:org.apache.ivy.ant" classpath="${ivy.dir}/${ivy.jar.name}"/>
-
-  <!-- ================================= 
-       Target: init              
-       ================================= -->
-  <target name="init">
-    <fail message="IronJacamar requires JDK6+" unless="HAVE_JDK_1.6"/>
-  
-    <ivy:settings file="${basedir}/ivy.settings.xml"/>
-
-    <mkdir dir="${build.dir}" />
-    <mkdir dir="${target.dir}" />
-  </target>
-
-  <!-- ================================= 
-       Target: resolve              
-       ================================= -->
-  <target name="resolve" depends="init">
-    <ivy:retrieve pattern="${lib.dir}/[conf]/[artifact].[ext]" 
-                  conf="common,sjc,embedded,arquillian,jetty,hornetq,mail,rhq,test,tools"
-                  sync="true"/>
-  </target>
-  
-  <!-- ================================= 
-       Target: report              
-       ================================= -->
-  <target name="report" depends="resolve">
-    <ivy:report todir="${target.dir}"/>
-  </target>
-  
-  <!-- ================================= 
-       Target: jars
-       ================================= -->
-  <target name="jars" depends="resolve">
-    <ant dir="api" inheritRefs="true" target="jars"/>
-    <ant dir="common" inheritRefs="true" target="jars"/>
-    <ant dir="core" inheritRefs="true" target="jars"/>
-    <ant dir="validator" inheritRefs="true" target="jars"/>
-    <ant dir="deployers" inheritRefs="true" target="jars"/>
-    <ant dir="embedded" inheritRefs="true" target="jars"/>
-    <ant dir="web" inheritRefs="true" target="jars"/>
-    <ant dir="sjc" inheritRefs="true" target="jars"/>
-    <ant dir="codegenerator" inheritRefs="true" target="jars"/>
-    <ant dir="adapters" inheritRefs="true" target="jars"/>
-    <ant dir="rhq" inheritRefs="true" target="jars"/>
-  </target>
-  
-  <!-- ================================= 
-       Target: docs
-       ================================= -->
-  <target name="docs" depends="jars">
-    <ant dir="api" inheritRefs="true" target="docs"/>
-    <ant dir="common" inheritRefs="true" target="docs"/>
-    <ant dir="core" inheritRefs="true" target="docs"/>
-    <ant dir="validator" inheritRefs="true" target="docs"/>
-    <ant dir="deployers" inheritRefs="true" target="docs"/>
-    <ant dir="embedded" inheritRefs="true" target="docs"/>
-    <ant dir="web" inheritRefs="true" target="docs"/>
-    <ant dir="sjc" inheritRefs="true" target="docs"/>
-    <ant dir="codegenerator" inheritRefs="true" target="docs"/>
-    <ant dir="adapters" inheritRefs="true" target="docs"/>
-    <ant dir="rhq" inheritRefs="true" target="docs"/>
-  </target>
-  
-  <!-- ================================= 
-       Target: manual
-       ================================= -->
-  <target name="manual">
-    <ant dir="${doc.dir}/developerguide" inheritRefs="false" inheritAll="false"/>
-    <ant dir="${doc.dir}/userguide" inheritRefs="false" inheritAll="false"/>
-  </target>
-
-  <!-- ================================= 
-       Target: prepare test
-       ================================= -->
-  <target name="prepare-test" depends="jars">
-    <ant dir="common" inheritRefs="true" target="prepare-test"/>
-    <ant dir="core" inheritRefs="true" target="prepare-test"/>
-    <ant dir="embedded" inheritRefs="true" target="prepare-test"/>
-    <ant dir="deployers" inheritRefs="true" target="prepare-test"/>
-    <ant dir="validator" inheritRefs="true" target="prepare-test"/>
-    <ant dir="codegenerator" inheritRefs="true" target="prepare-test"/>
-    <ant dir="adapters" inheritRefs="true" target="prepare-test"/>
-    <ant dir="rhq" inheritRefs="true" target="prepare-test"/>
-  </target>
-  
-  <!-- ================================= 
-       Target: test
-       ================================= -->
-  <target name="test" depends="prepare-test">
-    <ant dir="common" inheritRefs="true" target="test"/>
-    <ant dir="core" inheritRefs="true" target="test"/>
-    <ant dir="embedded" inheritRefs="true" target="test"/>
-    <ant dir="deployers" inheritRefs="true" target="test"/>
-    <ant dir="validator" inheritRefs="true" target="test"/>
-    <ant dir="adapters" inheritRefs="true" target="test"/>
-    <ant dir="rhq" inheritRefs="true" target="test"/>
-  </target>
-  
-  <!-- ================================= 
-       Target: one-test
-       ================================= -->
-  <target name="one-test" depends="jars">
-    <condition property="module" else="core">
-      <equals arg1="${module}" arg2="" trim="true"/> 
-    </condition>
-
-    <ant dir="${module}" inheritRefs="true" target="one-test"/>
-  </target>
-
-  <!-- ================================= 
-       Target: module-test
-       ================================= -->
-  <target name="module-test" depends="jars">
-    <condition property="module" else="core">
-      <equals arg1="${module}" arg2="" trim="true"/> 
-    </condition>
-  	
-    <ant dir="${module}" inheritRefs="true" target="test"/>
-  </target>
-
-  <!-- ================================= 
-       Target: artifacts
-       ================================= -->
-  <target name="artifacts" depends="resolve">
-    <ant dir="api" inheritRefs="true" target="artifacts"/>
-    <ant dir="common" inheritRefs="true" target="artifacts"/>
-    <ant dir="core" inheritRefs="true" target="artifacts"/>
-    <ant dir="validator" inheritRefs="true" target="artifacts"/>
-    <ant dir="deployers" inheritRefs="true" target="artifacts"/>
-    <ant dir="embedded" inheritRefs="true" target="artifacts"/>
-    <ant dir="codegenerator" inheritRefs="true" target="artifacts"/>
-    <ant dir="adapters" inheritRefs="true" target="artifacts"/>
-  </target>
-  
-  <!-- ================================= 
-       Target: sjc
-       ================================= -->
-  <target name="sjc" depends="jars">
-    <ant dir="sjc" inheritRefs="true" target="sjc"/>
-  </target>
-
-  <!-- ================================= 
-       Target: release
-       ================================= -->
-  <target name="release" depends="clean,sjc">
-    <delete dir="${build.dir}"/>
-
-    <mkdir dir="${build.dir}" />
-    <mkdir dir="${build.dir}/${name}-${major}.${minor}.${patch}.${type}" />
-    <mkdir dir="${build.dir}/${name}-${major}.${minor}.${patch}.${type}/doc" />
-    <mkdir dir="${build.dir}/${name}-${major}.${minor}.${patch}.${type}/doc/spec" />
-
-    <ant dir="${doc.dir}/samples/helloworld" target="dist-clean" inheritRefs="false" inheritAll="false"/>
-
-    <ant dir="${doc.dir}/developerguide" target="pdf" inheritRefs="false" inheritAll="false"/>
-    <ant dir="${doc.dir}/userguide" target="pdf" inheritRefs="false" inheritAll="false"/>
-
-    <copy flatten="true" todir="${build.dir}/${name}-${major}.${minor}.${patch}.${type}/doc">
-      <fileset dir="${target.dir}/docs">
-        <include name="**/*.pdf"/>
-      </fileset>
-    </copy>
-
-    <ant dir="sjc" inheritRefs="true" target="war"/>
-    <delete dir="${build.dir}/sjc"/>
-
-    <ant dir="api" inheritRefs="true" target="docs"/>
-    <move todir="${build.dir}/${name}-${major}.${minor}.${patch}.${type}/doc/spec">
-      <fileset dir="${target.dir}/docs/spec">
-        <include name="**/*"/>
-      </fileset>
-    </move>
-    <delete dir="${build.dir}/api"/>
-
-    <copy todir="${build.dir}/${name}-${major}.${minor}.${patch}.${type}">
-      <fileset dir="${target.dir}/sjc"/>
-    </copy>
-    <chmod perm="755" type="file">
-      <fileset dir="${build.dir}/${name}-${major}.${minor}.${patch}.${type}">
-        <include name="**/*.sh"/>
-      </fileset>
-    </chmod>
-
-    <delete dir="${build.dir}/docbook"/>
-
-    <zip destfile="${name}-${major}.${minor}.${patch}.${type}.zip"
-         basedir="${build.dir}"/>
-    
-    <tar destfile="${name}-${major}.${minor}.${patch}.${type}.tar"
-         basedir="${build.dir}"/>
-    
-    <gzip zipfile="${name}-${major}.${minor}.${patch}.${type}.tar.gz" 
-          src="${name}-${major}.${minor}.${patch}.${type}.tar"/>
-    
-    <delete file="${name}-${major}.${minor}.${patch}.${type}.tar"/>
-    
-  </target>
-
-  <!-- ================================= 
-       Target: checkstyle
-       ================================= -->
-  <target name="checkstyle" depends="jars">
-    <taskdef name="checkstyle"
-             classname="com.puppycrawl.tools.checkstyle.CheckStyleTask"
-             classpathref="checkstyle.lib.path.id"/>
-
-    <mkdir dir="${reports.dir}/checkstyle" />
-
-    <checkstyle config="${tools.dir}/checkstyle/checkstyle.xml"
-                failOnViolation="false"
-                classpathref="checkstyle.lib.path.id">
-      <fileset dir="${basedir}"
-               includes="**/*.java"
-	       excludes="${build.dir}/**/*.java"/>
-      <formatter type="plain"/>
-      <formatter type="xml" toFile="${reports.dir}/checkstyle/checkstyle-result.xml"/>
-    </checkstyle>
-  </target>
-
-  <!-- ================================= 
-       Target: findbugs
-       ================================= -->
-  <target name="findbugs" depends="jars">
-    <taskdef name="findbugs"
-             classname="edu.umd.cs.findbugs.anttask.FindBugsTask"
-             classpathref="findbugs.lib.path.id"/>
-
-    <mkdir dir="${reports.dir}/findbugs" />
-
-    <findbugs home="${basedir}/tools/findbugs/lib/"
-              output="html"
-              outputFile="${reports.dir}/findbugs/findbugs.html" 
-              excludeFilter="${basedir}/tools/findbugs/filter.xml"
-              reportLevel="low">
-      <auxClasspath>
-        <fileset dir="${lib.dir}/common">
-          <include name="*.jar"/>
-        </fileset>
-        <fileset dir="${lib.dir}/embedded">
-          <include name="*.jar"/>
-        </fileset>
-        <fileset dir="${lib.dir}/arquillian">
-          <include name="*.jar"/>
-        </fileset>
-        <fileset dir="${lib.dir}/jetty">
-          <include name="*.jar"/>
-        </fileset>
-        <fileset dir="${lib.dir}/hornetq">
-          <include name="*.jar"/>
-        </fileset>
-        <fileset dir="${lib.dir}/sjc">
-          <include name="*.jar"/>
-        </fileset>
-        <fileset dir="${lib.dir}/mail">
-          <include name="*.jar"/>
-        </fileset>
-        <fileset dir="${lib.dir}/rhq">
-          <include name="*.jar"/>
-        </fileset>
-        <fileset dir="${lib.dir}/test">
-          <include name="*.jar"/>
-        </fileset>
-        <fileset dir="${lib.dir}/tools">
-          <include name="*.jar"/>
-        </fileset>
-      </auxClasspath>
-      <class location="${target.dir}/${name}-codegenerator.jar" />
-      <class location="${target.dir}/${name}-common-api.jar" />
-      <class location="${target.dir}/${name}-common-impl.jar" />
-      <class location="${target.dir}/${name}-common-impl-papaki.jar" />
-      <class location="${target.dir}/${name}-common-spi.jar" />
-      <class location="${target.dir}/${name}-core-api.jar" />
-      <class location="${target.dir}/${name}-core-impl.jar" />
-      <class location="${target.dir}/${name}-core-spi.jar" />
-      <class location="${target.dir}/${name}-deployers-common.jar" />
-      <class location="${target.dir}/${name}-deployers-fungal.jar" />
-      <class location="${target.dir}/${name}-embedded.jar" />
-      <class location="${target.dir}/${name}-embedded-arquillian.jar" />
-      <class location="${target.dir}/${name}-rhq.jar" />
-      <class location="${target.dir}/${name}-sjc.jar" />
-      <class location="${target.dir}/${name}-spec-api.jar" />
-      <class location="${target.dir}/${name}-validator.jar" />
-      <class location="${target.dir}/${name}-validator-ant.jar" />
-      <class location="${target.dir}/${name}-validator-cli.jar" />
-      <class location="${target.dir}/${name}-validator-maven.jar" />
-      <class location="${target.dir}/${name}-web.jar" />
-      <class location="${target.dir}/${name}-web-console.jar" />
-    </findbugs>
-
-    <findbugs home="${basedir}/tools/findbugs/lib/"
-              output="xml:withMessages"
-              outputFile="${reports.dir}/findbugs/findbugs.xml" 
-              excludeFilter="${basedir}/tools/findbugs/filter.xml"
-              reportLevel="low">
-      <auxClasspath>
-        <fileset dir="${lib.dir}/common">
-          <include name="*.jar"/>
-        </fileset>
-        <fileset dir="${lib.dir}/embedded">
-          <include name="*.jar"/>
-        </fileset>
-        <fileset dir="${lib.dir}/arquillian">
-          <include name="*.jar"/>
-        </fileset>
-        <fileset dir="${lib.dir}/jetty">
-          <include name="*.jar"/>
-        </fileset>
-        <fileset dir="${lib.dir}/hornetq">
-          <include name="*.jar"/>
-        </fileset>
-        <fileset dir="${lib.dir}/sjc">
-          <include name="*.jar"/>
-        </fileset>
-        <fileset dir="${lib.dir}/mail">
-          <include name="*.jar"/>
-        </fileset>
-        <fileset dir="${lib.dir}/rhq">
-          <include name="*.jar"/>
-        </fileset>
-        <fileset dir="${lib.dir}/test">
-          <include name="*.jar"/>
-        </fileset>
-        <fileset dir="${lib.dir}/tools">
-          <include name="*.jar"/>
-        </fileset>
-      </auxClasspath>
-      <class location="${target.dir}/${name}-codegenerator.jar" />
-      <class location="${target.dir}/${name}-common-api.jar" />
-      <class location="${target.dir}/${name}-common-impl.jar" />
-      <class location="${target.dir}/${name}-common-impl-papaki.jar" />
-      <class location="${target.dir}/${name}-common-spi.jar" />
-      <class location="${target.dir}/${name}-core-api.jar" />
-      <class location="${target.dir}/${name}-core-impl.jar" />
-      <class location="${target.dir}/${name}-core-spi.jar" />
-      <class location="${target.dir}/${name}-deployers-common.jar" />
-      <class location="${target.dir}/${name}-deployers-fungal.jar" />
-      <class location="${target.dir}/${name}-embedded.jar" />
-      <class location="${target.dir}/${name}-embedded-arquillian.jar" />
-      <class location="${target.dir}/${name}-rhq.jar" />
-      <class location="${target.dir}/${name}-sjc.jar" />
-      <class location="${target.dir}/${name}-spec-api.jar" />
-      <class location="${target.dir}/${name}-validator.jar" />
-      <class location="${target.dir}/${name}-validator-ant.jar" />
-      <class location="${target.dir}/${name}-validator-cli.jar" />
-      <class location="${target.dir}/${name}-validator-maven.jar" />
-      <class location="${target.dir}/${name}-web.jar" />
-      <class location="${target.dir}/${name}-web-console.jar" />
-    </findbugs>
-  </target>
-
-  <!-- ================================= 
-       Target: cobertura
-       ================================= -->
-  <target name="cobertura" depends="prepare-test">
-    <taskdef resource="tasks.properties"
-             classpathref="cobertura.lib.path.id"/>
-
-    <mkdir dir="${reports.dir}/cobertura" />
-    <mkdir dir="${reports.dir}/cobertura/tests" />
-
-    <delete file="${reports.dir}/cobertura/cobertura.ser"/>
-    <delete dir="${build.dir}/instrumented"/>
-    
-    <mkdir dir="${build.dir}/instrumented" />
-    <copy todir="${build.dir}/instrumented">
-      <fileset dir="${target.dir}">
-        <include name="*.jar"/>
-      </fileset>
-    </copy>
-
-    <copy todir="${build.dir}/instrumented">
-      <fileset dir="${build.dir}/adapters">
-        <include name="*.jar"/>
-      </fileset>
-    </copy>
-
-    <cobertura-instrument todir="${build.dir}/instrumented"
-                          datafile="${reports.dir}/cobertura/cobertura.ser">
-      <fileset dir="${target.dir}">
-        <include name="ironjacamar*.jar" />
-      </fileset>
-    </cobertura-instrument>
-
-    <copy todir="${build.dir}/instrumented">
-      <fileset dir="${target.dir}">
-        <include name="${name}-core-api.jar"/>
-        <include name="${name}-core-spi.jar"/>
-      </fileset>
-    </copy>
-
-    <junit dir="common/src/test"
-           printsummary="${junit.printsummary}"
-           haltonerror="${junit.haltonerror}"
-           haltonfailure="${junit.haltonfailure}"
-           fork="yes"
-           timeout="${junit.timeout}">
-      
-      <jvmarg line="${junit.jvm.options}"/>
-      <sysproperty key="test.dir" value="${test.dir}"/>
-      <sysproperty key="net.sourceforge.cobertura.datafile" file="${reports.dir}/cobertura/cobertura.ser" />
-      <sysproperty key="xb.builder.useUnorderedSequence" value="true"/>
-      <sysproperty key="javax.xml.stream.XMLInputFactory" value="com.sun.xml.internal.stream.XMLInputFactoryImpl"/>
-      <sysproperty key="java.util.logging.manager" value="org.jboss.logmanager.LogManager"/>
-      <sysproperty key="org.jboss.logging.Logger.pluginClass" value="org.jboss.logging.logmanager.LoggerPluginImpl"/>
-      <sysproperty key="log4j.defaultInitOverride" value="true"/>
-
-      <classpath>
-        <fileset dir="${build.dir}/instrumented" includes="*.jar" />
-        <pathelement location="${build.dir}/common/test"/>
-        <fileset dir="${lib.dir}/common" includes="*.jar" />
-        <fileset dir="${lib.dir}/embedded" includes="*.jar" />
-        <fileset dir="${lib.dir}/arquillian" includes="*.jar" />
-        <fileset dir="${lib.dir}/jetty" includes="*.jar" />
-        <fileset dir="${lib.dir}/hornetq" includes="*.jar" />
-        <fileset dir="${lib.dir}/sjc" includes="*.jar" />
-        <fileset dir="${lib.dir}/mail" includes="*.jar" />
-        <fileset dir="${lib.dir}/test" includes="*.jar" />
-        <fileset dir="${lib.dir}/tools" includes="*.jar" />
-        <fileset dir="${lib.dir}/rhq" includes="*.jar" />
-      </classpath>
-      <classpath refid="cobertura.lib.path.id" />
-      
-      <formatter type="xml"/>
-      
-      <batchtest todir="${reports.dir}/cobertura/tests">
-        <fileset dir="${build.dir}/common/test">
-          <include name="**/*TestCase.class"/>
-        </fileset>
-      </batchtest>
-    </junit>
-
-    <junit dir="core/src/test"
-           printsummary="${junit.printsummary}"
-           haltonerror="${junit.haltonerror}"
-           haltonfailure="${junit.haltonfailure}"
-           fork="yes"
-           timeout="${junit.timeout}">
-      
-      <jvmarg line="${junit.jvm.options}"/>
-      <sysproperty key="test.dir" value="${test.dir}"/>
-      <sysproperty key="net.sourceforge.cobertura.datafile" file="${reports.dir}/cobertura/cobertura.ser" />
-      <sysproperty key="xb.builder.useUnorderedSequence" value="true"/>
-      <sysproperty key="javax.xml.stream.XMLInputFactory" value="com.sun.xml.internal.stream.XMLInputFactoryImpl"/>
-      <sysproperty key="java.util.logging.manager" value="org.jboss.logmanager.LogManager"/>
-      <sysproperty key="org.jboss.logging.Logger.pluginClass" value="org.jboss.logging.logmanager.LoggerPluginImpl"/>
-      <sysproperty key="log4j.defaultInitOverride" value="true"/>
-
-      <classpath>
-        <fileset dir="${build.dir}/instrumented" includes="*.jar" />
-        <pathelement location="${build.dir}/core/test"/>
-        <fileset dir="${lib.dir}/common" includes="*.jar" />
-        <fileset dir="${lib.dir}/embedded" includes="*.jar" />
-        <fileset dir="${lib.dir}/arquillian" includes="*.jar" />
-        <fileset dir="${lib.dir}/jetty" includes="*.jar" />
-        <fileset dir="${lib.dir}/hornetq" includes="*.jar" />
-        <fileset dir="${lib.dir}/sjc" includes="*.jar" />
-        <fileset dir="${lib.dir}/mail" includes="*.jar" />
-        <fileset dir="${lib.dir}/test" includes="*.jar" />
-        <fileset dir="${lib.dir}/tools" includes="*.jar" />
-        <fileset dir="${lib.dir}/rhq" includes="*.jar" />
-      </classpath>
-      <classpath refid="cobertura.lib.path.id" />
-      
-      <formatter type="xml"/>
-      
-      <batchtest todir="${reports.dir}/cobertura/tests">
-        <fileset dir="${build.dir}/core/test">
-          <include name="**/*TestCase.class"/>
-        </fileset>
-      </batchtest>
-    </junit>
-
-    <junit dir="deployers/src/test"
-           printsummary="${junit.printsummary}"
-           haltonerror="${junit.haltonerror}"
-           haltonfailure="${junit.haltonfailure}"
-           fork="yes"
-           timeout="${junit.timeout}">
-      
-      <jvmarg line="${junit.jvm.options}"/>
-      <sysproperty key="archives.dir" value="${build.dir}/deployers"/>
-      <sysproperty key="test.dir" value="${test.dir}"/>
-      <sysproperty key="net.sourceforge.cobertura.datafile" file="${reports.dir}/cobertura/cobertura.ser" />
-      <sysproperty key="javax.xml.stream.XMLInputFactory" value="com.sun.xml.internal.stream.XMLInputFactoryImpl"/>
-      <sysproperty key="java.util.logging.manager" value="org.jboss.logmanager.LogManager"/>
-      <sysproperty key="org.jboss.logging.Logger.pluginClass" value="org.jboss.logging.logmanager.LoggerPluginImpl"/>
-      <sysproperty key="log4j.defaultInitOverride" value="true"/>
-
-      <classpath>
-        <fileset dir="${build.dir}/instrumented" includes="*.jar" />
-        <pathelement location="${build.dir}/deployers/test"/>
-        <fileset dir="${lib.dir}/common" includes="*.jar" />
-        <fileset dir="${lib.dir}/embedded" includes="*.jar" />
-        <fileset dir="${lib.dir}/arquillian" includes="*.jar" />
-        <fileset dir="${lib.dir}/jetty" includes="*.jar" />
-        <fileset dir="${lib.dir}/hornetq" includes="*.jar" />
-        <fileset dir="${lib.dir}/sjc" includes="*.jar" />
-        <fileset dir="${lib.dir}/mail" includes="*.jar" />
-        <fileset dir="${lib.dir}/test" includes="*.jar" />
-        <fileset dir="${lib.dir}/tools" includes="*.jar" />
-        <fileset dir="${lib.dir}/rhq" includes="*.jar" />
-      </classpath>
-      <classpath refid="cobertura.lib.path.id" />
-      
-      <formatter type="xml"/>
-      
-      <batchtest todir="${reports.dir}/cobertura/tests">
-        <fileset dir="${build.dir}/deployers/test">
-          <include name="**/*TestCase.class"/>
-        </fileset>
-      </batchtest>
-    </junit>
-
-    <junit dir="embedded/src/test"
-           printsummary="${junit.printsummary}"
-           haltonerror="${junit.haltonerror}"
-           haltonfailure="${junit.haltonfailure}"
-           fork="yes"
-           timeout="${junit.timeout}">
-      
-      <jvmarg line="${junit.jvm.options}"/>
-      <sysproperty key="test.dir" value="${test.dir}"/>
-      <sysproperty key="net.sourceforge.cobertura.datafile" file="${reports.dir}/cobertura/cobertura.ser" />
-      <sysproperty key="xb.builder.useUnorderedSequence" value="true"/>
-      <sysproperty key="javax.xml.stream.XMLInputFactory" value="com.sun.xml.internal.stream.XMLInputFactoryImpl"/>
-      <sysproperty key="java.util.logging.manager" value="org.jboss.logmanager.LogManager"/>
-      <sysproperty key="org.jboss.logging.Logger.pluginClass" value="org.jboss.logging.logmanager.LoggerPluginImpl"/>
-      <sysproperty key="log4j.defaultInitOverride" value="true"/>
-
-      <classpath>
-        <fileset dir="${build.dir}/instrumented" includes="*.jar" />
-        <pathelement location="${build.dir}/embedded/test"/>
-        <fileset dir="${lib.dir}/common" includes="*.jar" />
-        <fileset dir="${lib.dir}/embedded" includes="*.jar" />
-        <fileset dir="${lib.dir}/arquillian" includes="*.jar" />
-        <fileset dir="${lib.dir}/jetty" includes="*.jar" />
-        <fileset dir="${lib.dir}/hornetq" includes="*.jar" />
-        <fileset dir="${lib.dir}/sjc" includes="*.jar" />
-        <fileset dir="${lib.dir}/mail" includes="*.jar" />
-        <fileset dir="${lib.dir}/test" includes="*.jar" />
-        <fileset dir="${lib.dir}/tools" includes="*.jar" />
-        <fileset dir="${lib.dir}/rhq" includes="*.jar" />
-      </classpath>
-      <classpath refid="cobertura.lib.path.id" />
-      
-      <formatter type="xml"/>
-      
-      <batchtest todir="${reports.dir}/cobertura/tests">
-        <fileset dir="${build.dir}/embedded/test">
-          <include name="**/*TestCase.class"/>
-        </fileset>
-      </batchtest>
-    </junit>
-
-    <junit dir="validator/src/test"
-           printsummary="${junit.printsummary}"
-           haltonerror="${junit.haltonerror}"
-           haltonfailure="${junit.haltonfailure}"
-           fork="yes"
-           timeout="${junit.timeout}">
-      
-      <jvmarg line="${junit.jvm.options}"/>
-      <sysproperty key="test.dir" value="${test.dir}"/>
-      <sysproperty key="net.sourceforge.cobertura.datafile" file="${reports.dir}/cobertura/cobertura.ser" />
-      <sysproperty key="xb.builder.useUnorderedSequence" value="true"/>
-      <sysproperty key="javax.xml.stream.XMLInputFactory" value="com.sun.xml.internal.stream.XMLInputFactoryImpl"/>
-      <sysproperty key="java.util.logging.manager" value="org.jboss.logmanager.LogManager"/>
-      <sysproperty key="org.jboss.logging.Logger.pluginClass" value="org.jboss.logging.logmanager.LoggerPluginImpl"/>
-      <sysproperty key="log4j.defaultInitOverride" value="true"/>
-
-      <classpath>
-        <fileset dir="${build.dir}/instrumented" includes="*.jar" />
-        <pathelement location="${build.dir}/validator/test"/>
-        <fileset dir="${lib.dir}/common" includes="*.jar" />
-        <fileset dir="${lib.dir}/embedded" includes="*.jar" />
-        <fileset dir="${lib.dir}/arquillian" includes="*.jar" />
-        <fileset dir="${lib.dir}/jetty" includes="*.jar" />
-        <fileset dir="${lib.dir}/hornetq" includes="*.jar" />
-        <fileset dir="${lib.dir}/sjc" includes="*.jar" />
-        <fileset dir="${lib.dir}/mail" includes="*.jar" />
-        <fileset dir="${lib.dir}/test" includes="*.jar" />
-        <fileset dir="${lib.dir}/tools" includes="*.jar" />
-        <fileset dir="${lib.dir}/rhq" includes="*.jar" />
-      </classpath>
-      <classpath refid="cobertura.lib.path.id" />
-      
-      <formatter type="xml"/>
-      
-      <batchtest todir="${reports.dir}/cobertura/tests">
-        <fileset dir="${build.dir}/validator/test">
-          <include name="**/*TestCase.class"/>
-        </fileset>
-      </batchtest>
-    </junit>
-
-    <junit dir="codegenerator/src/test"
-           printsummary="${junit.printsummary}"
-           haltonerror="${junit.haltonerror}"
-           haltonfailure="${junit.haltonfailure}"
-           fork="yes"
-           timeout="${junit.timeout}">
-      
-      <jvmarg line="${junit.jvm.options}"/>
-      <sysproperty key="test.dir" value="${test.dir}"/>
-      <sysproperty key="net.sourceforge.cobertura.datafile" file="${reports.dir}/cobertura/cobertura.ser" />
-      <sysproperty key="xb.builder.useUnorderedSequence" value="true"/>
-      <sysproperty key="javax.xml.stream.XMLInputFactory" value="com.sun.xml.internal.stream.XMLInputFactoryImpl"/>
-      <sysproperty key="java.util.logging.manager" value="org.jboss.logmanager.LogManager"/>
-      <sysproperty key="org.jboss.logging.Logger.pluginClass" value="org.jboss.logging.logmanager.LoggerPluginImpl"/>
-      <sysproperty key="log4j.defaultInitOverride" value="true"/>
-
-      <classpath>
-        <fileset dir="${build.dir}/instrumented" includes="*.jar" />
-        <pathelement location="${build.dir}/codegenerator/test"/>
-        <fileset dir="${lib.dir}/common" includes="*.jar" />
-        <fileset dir="${lib.dir}/embedded" includes="*.jar" />
-        <fileset dir="${lib.dir}/arquillian" includes="*.jar" />
-        <fileset dir="${lib.dir}/jetty" includes="*.jar" />
-        <fileset dir="${lib.dir}/hornetq" includes="*.jar" />
-        <fileset dir="${lib.dir}/sjc" includes="*.jar" />
-        <fileset dir="${lib.dir}/mail" includes="*.jar" />
-        <fileset dir="${lib.dir}/test" includes="*.jar" />
-        <fileset dir="${lib.dir}/tools" includes="*.jar" />
-        <fileset dir="${lib.dir}/rhq" includes="*.jar" />
-      </classpath>
-      <classpath refid="cobertura.lib.path.id" />
-      
-      <formatter type="xml"/>
-      
-      <batchtest todir="${reports.dir}/cobertura/tests">
-        <fileset dir="${build.dir}/codegenerator/test">
-          <include name="**/*TestCase.class"/>
-        </fileset>
-      </batchtest>
-    </junit>
-
-    <junit dir="adapters/src/test"
-           printsummary="${junit.printsummary}"
-           haltonerror="${junit.haltonerror}"
-           haltonfailure="${junit.haltonfailure}"
-           fork="yes"
-           timeout="${junit.timeout}">
-      
-      <jvmarg line="${junit.jvm.options}"/>
-      <sysproperty key="test.dir" value="${test.dir}"/>
-      <sysproperty key="archives.dir" value="${build.dir}/adapters"/>
-      <sysproperty key="net.sourceforge.cobertura.datafile" file="${reports.dir}/cobertura/cobertura.ser" />
-      <sysproperty key="xb.builder.useUnorderedSequence" value="true"/>
-      <sysproperty key="javax.xml.stream.XMLInputFactory" value="com.sun.xml.internal.stream.XMLInputFactoryImpl"/>
-      <sysproperty key="java.util.logging.manager" value="org.jboss.logmanager.LogManager"/>
-      <sysproperty key="org.jboss.logging.Logger.pluginClass" value="org.jboss.logging.logmanager.LoggerPluginImpl"/>
-      <sysproperty key="log4j.defaultInitOverride" value="true"/>
-
-      <classpath>
-        <fileset dir="${build.dir}/instrumented" includes="*.jar" />
-        <pathelement location="${build.dir}/adapters/"/>
-        <pathelement location="${build.dir}/adapters/test"/>
-        <fileset dir="${lib.dir}/common" includes="*.jar" />
-        <fileset dir="${lib.dir}/embedded" includes="*.jar" />
-        <fileset dir="${lib.dir}/arquillian" includes="*.jar" />
-        <fileset dir="${lib.dir}/jetty" includes="*.jar" />
-        <fileset dir="${lib.dir}/hornetq" includes="*.jar" />
-        <fileset dir="${lib.dir}/sjc" includes="*.jar" />
-        <fileset dir="${lib.dir}/mail" includes="*.jar" />
-        <fileset dir="${lib.dir}/test" includes="*.jar" />
-        <fileset dir="${lib.dir}/tools" includes="*.jar" />
-        <fileset dir="${lib.dir}/rhq" includes="*.jar" />
-      </classpath>
-      <classpath refid="cobertura.lib.path.id" />
-      
-      <formatter type="xml"/>
-      
-      <batchtest todir="${reports.dir}/cobertura/tests">
-        <fileset dir="${build.dir}/adapters/test">
-          <include name="**/*TestCase.class"/>
-        </fileset>
-      </batchtest>
-    </junit>
-
-    <junit dir="rhq/src/test"
-           printsummary="${junit.printsummary}"
-           haltonerror="${junit.haltonerror}"
-           haltonfailure="${junit.haltonfailure}"
-           fork="yes"
-           timeout="${junit.timeout}">
-      
-      <jvmarg line="${junit.jvm.options}"/>
-      <sysproperty key="test.dir" value="${test.dir}"/>
-      <sysproperty key="archives.dir" value="${build.dir}/rhq"/>
-      <sysproperty key="net.sourceforge.cobertura.datafile" file="${reports.dir}/cobertura/cobertura.ser" />
-      <sysproperty key="xb.builder.useUnorderedSequence" value="true"/>
-      <sysproperty key="javax.xml.stream.XMLInputFactory" value="com.sun.xml.internal.stream.XMLInputFactoryImpl"/>
-      <sysproperty key="java.util.logging.manager" value="org.jboss.logmanager.LogManager"/>
-      <sysproperty key="org.jboss.logging.Logger.pluginClass" value="org.jboss.logging.logmanager.LoggerPluginImpl"/>
-      <sysproperty key="log4j.defaultInitOverride" value="true"/>
-
-      <classpath>
-        <fileset dir="${build.dir}/instrumented" includes="*.jar" />
-        <pathelement location="${build.dir}/rhq/"/>
-        <pathelement location="${build.dir}/rhq/test"/>
-        <fileset dir="${lib.dir}/common" includes="*.jar" />
-        <fileset dir="${lib.dir}/embedded" includes="*.jar" />
-        <fileset dir="${lib.dir}/arquillian" includes="*.jar" />
-        <fileset dir="${lib.dir}/jetty" includes="*.jar" />
-        <fileset dir="${lib.dir}/hornetq" includes="*.jar" />
-        <fileset dir="${lib.dir}/sjc" includes="*.jar" />
-        <fileset dir="${lib.dir}/mail" includes="*.jar" />
-        <fileset dir="${lib.dir}/test" includes="*.jar" />
-        <fileset dir="${lib.dir}/tools" includes="*.jar" />
-        <fileset dir="${lib.dir}/rhq" includes="*.jar" />
-      </classpath>
-      <classpath refid="cobertura.lib.path.id" />
-      
-      <formatter type="xml"/>
-      
-      <batchtest todir="${reports.dir}/cobertura/tests">
-        <fileset dir="${build.dir}/rhq/test">
-          <include name="**/*TestCase.class"/>
-        </fileset>
-      </batchtest>
-    </junit>
-
-    <cobertura-report format="html" 
-                      destdir="${reports.dir}/cobertura/html" 
-                      datafile="${reports.dir}/cobertura/cobertura.ser">
-      <fileset dir="api/src/main/java">
-        <include name="**/*.java" />
-      </fileset>
-      <fileset dir="adapters/src/main/java">
-        <include name="**/*.java" />
-      </fileset>
-      <fileset dir="codegenerator/src/main/java">
-        <include name="**/*.java" />
-      </fileset>
-      <fileset dir="common/src/main/java">
-        <include name="**/*.java" />
-      </fileset>
-      <fileset dir="core/src/main/java">
-        <include name="**/*.java" />
-      </fileset>
-      <fileset dir="deployers/src/main/java">
-        <include name="**/*.java" />
-      </fileset>
-      <fileset dir="embedded/src/main/java">
-        <include name="**/*.java" />
-      </fileset>
-      <fileset dir="sjc/src/main/java">
-        <include name="**/*.java" />
-      </fileset>
-      <fileset dir="validator/src/main/java">
-        <include name="**/*.java" />
-      </fileset>
-      <fileset dir="web/src/main/java">
-        <include name="**/*.java" />
-      </fileset>
-      <fileset dir="rhq/src/main/java">
-        <include name="**/*.java" />
-      </fileset>
-    </cobertura-report>
-
-    <cobertura-report format="xml" 
-                      destdir="${reports.dir}/cobertura/xml" 
-                      datafile="${reports.dir}/cobertura/cobertura.ser">
-      <fileset dir="api/src/main/java">
-        <include name="**/*.java" />
-      </fileset>
-      <fileset dir="adapters/src/main/java">
-        <include name="**/*.java" />
-      </fileset>
-      <fileset dir="codegenerator/src/main/java">
-        <include name="**/*.java" />
-      </fileset>
-      <fileset dir="common/src/main/java">
-        <include name="**/*.java" />
-      </fileset>
-      <fileset dir="core/src/main/java">
-        <include name="**/*.java" />
-      </fileset>
-      <fileset dir="deployers/src/main/java">
-        <include name="**/*.java" />
-      </fileset>
-      <fileset dir="embedded/src/main/java">
-        <include name="**/*.java" />
-      </fileset>
-      <fileset dir="sjc/src/main/java">
-        <include name="**/*.java" />
-      </fileset>
-      <fileset dir="validator/src/main/java">
-        <include name="**/*.java" />
-      </fileset>
-      <fileset dir="web/src/main/java">
-        <include name="**/*.java" />
-      </fileset>
-      <fileset dir="rhq/src/main/java">
-        <include name="**/*.java" />
-      </fileset>
-    </cobertura-report>
-  </target>
-
-  <!-- ================================= 
-       Target: tattletale
-       ================================= -->
-  <target name="tattletale" depends="sjc">
-    <taskdef name="report"
-             classname="org.jboss.tattletale.ant.ReportTask"
-             classpathref="tattletale.lib.path.id"/>
-
-    <mkdir dir="${reports.dir}/tattletale"/>
-
-    <report source="${target.dir}/sjc"
-            destination="${reports.dir}/tattletale"
-            configuration="${tools.dir}/tattletale/configuration.properties"
-            filter="${tools.dir}/tattletale/filter.properties"
-            profiles="java6"/>
-  </target>
-
-  <!-- ================================= 
-       Target: clean              
-       ================================= -->
-  <target name="clean">
-    <delete>
-      <fileset dir="${basedir}" defaultexcludes="no">
-        <include name="**/*~"/>
-        <include name="**/*.bak"/>
-      </fileset>
-    </delete>
-    <delete>
-      <fileset dir="${lib.dir}" includes="**/*.jar"/>
-    </delete>
-    <delete dir="${build.dir}"/>
-    <delete dir="${target.dir}"/>
-    <delete dir="${reports.dir}"/>
-    <delete file="${name}-${major}.${minor}.${patch}.${type}.zip" />
-    <delete file="${name}-${major}.${minor}.${patch}.${type}.tar.gz" />
-
-    <ant antfile="tools/docant/build.xml" target="clean" inheritrefs="false" inheritAll="false"/>
-    <delete dir="${doc.dir}/target"/>
-  </target>
-  
-  <!-- ================================= 
-       Target: clean-cache              
-       ================================= -->
-  <target name="clean-cache">
-    <ivy:cleancache />
-  </target>
-
-  <!-- ================================= 
-       Target: nexus
-       ================================= -->
-  <macrodef name="deploy-file">
-    <attribute name="file"/>
-    <attribute name="artifact"/>
-    <attribute name="extension"/>
-    <sequential>
-      <concat destfile="${target.dir}/@{file}" append="true" force="true" eol="unix">
-mvn deploy:deploy-file -Dfile=$PWD/@{artifact}.@{extension} -DpomFile=@{artifact}.xml $REPOSITORY
-mvn deploy:deploy-file -Dfile=$PWD/@{artifact}-sources.jar -DgeneratePom=false -DgroupId=org.jboss.${name} -DartifactId=@{artifact} -Dversion=$VERSION -Dclassifier=sources -Dpackaging=jar $REPOSITORY
-mvn deploy:deploy-file -Dfile=$PWD/@{artifact}-javadoc.jar -DgeneratePom=false -DgroupId=org.jboss.${name} -DartifactId=@{artifact} -Dversion=$VERSION -Dclassifier=javadoc -Dpackaging=jar $REPOSITORY
-</concat>
-    </sequential>
-  </macrodef>
-
-  <macrodef name="snapshot-deploy-file">
-    <attribute name="file"/>
-    <attribute name="artifact"/>
-    <attribute name="extension"/>
-    <sequential>
-      <concat destfile="${target.dir}/@{file}" append="true" force="true" eol="unix">
-mvn deploy:deploy-file -Dfile=$PWD/@{artifact}.@{extension} -DpomFile=@{artifact}.xml -DuniqueVersion=false $REPOSITORY
-mvn deploy:deploy-file -Dfile=$PWD/@{artifact}-sources.jar -DgeneratePom=false -DgroupId=org.jboss.${name} -DartifactId=@{artifact} -Dversion=$VERSION -Dclassifier=sources -Dpackaging=jar -DuniqueVersion=false $REPOSITORY
-mvn deploy:deploy-file -Dfile=$PWD/@{artifact}-javadoc.jar -DgeneratePom=false -DgroupId=org.jboss.${name} -DartifactId=@{artifact} -Dversion=$VERSION -Dclassifier=javadoc -Dpackaging=jar -DuniqueVersion=false $REPOSITORY
-</concat>
-    </sequential>
-  </macrodef>
-
-  <macrodef name="snapshot-install-file">
-    <attribute name="file"/>
-    <attribute name="artifact"/>
-    <attribute name="extension"/>
-    <sequential>
-      <concat destfile="${target.dir}/@{file}" append="true" force="true" eol="unix">
-mvn install:install-file -Dfile=$PWD/@{artifact}.@{extension} -DpomFile=@{artifact}.xml -DuniqueVersion=false $REPOSITORY
-mvn install:install-file -Dfile=$PWD/@{artifact}-sources.jar -DgeneratePom=false -DgroupId=org.jboss.${name} -DartifactId=@{artifact} -Dversion=$VERSION -Dclassifier=sources -Dpackaging=jar -DuniqueVersion=false $REPOSITORY
-mvn install:install-file -Dfile=$PWD/@{artifact}-javadoc.jar -DgeneratePom=false -DgroupId=org.jboss.${name} -DartifactId=@{artifact} -Dversion=$VERSION -Dclassifier=javadoc -Dpackaging=jar -DuniqueVersion=false $REPOSITORY
-</concat>
-    </sequential>
-  </macrodef>
-
-  <target name="nexus" depends="clean,artifacts">
-    <fail message="IronJacamar doesn't support JDK 7+ artifacts" if="HAVE_JDK_1.7"/>
-  
-    <ivy:retrieve pattern="${lib.dir}/[conf]/[artifact].[ext]" 
-                  conf="${name}-codegenerator,${name}-common-api,${name}-common-impl,${name}-common-impl-papaki,${name}-common-spi,${name}-core-api,${name}-core-impl,${name}-core-spi,${name}-deployers-common,${name}-deployers-fungal,${name}-embedded,${name}-embedded-arquillian,${name}-spec-api,${name}-validator,${name}-validator-ant,${name}-validator-cli,jdbc-local,jdbc-xa,mail"
-                  sync="true"/>
-
-    <delete file="${target.dir}/release.sh"/>
-    <delete file="${target.dir}/snapshot.sh"/>
-    <delete file="${target.dir}/install-snapshot.sh"/>
-
-    <concat destfile="${target.dir}/release.sh" append="true" force="true" eol="unix">#!/bin/sh
-PWD=`pwd`
-VERSION=${major}.${minor}.${patch}.${type}
-REPOSITORY='-Durl=https://repository.jboss.org/nexus/service/local/staging/deploy/maven2/ -DrepositoryId=jboss-releases'
-</concat>
-
-    <concat destfile="${target.dir}/snapshot.sh" append="true" force="true" eol="unix">#!/bin/sh
-PWD=`pwd`
-VERSION=${major}.${minor}.${patch}-SNAPSHOT
-REPOSITORY='-Durl=https://repository.jboss.org/nexus/content/repositories/snapshots/ -DrepositoryId=jboss-snapshots'
-</concat>
-
-    <concat destfile="${target.dir}/install-snapshot.sh" append="true" force="true" eol="unix">#!/bin/sh
-PWD=`pwd`
-VERSION=${major}.${minor}.${patch}-SNAPSHOT
-REPOSITORY='-Durl=https://repository.jboss.org/nexus/content/repositories/snapshots/ -DrepositoryId=jboss-snapshots'
-</concat>
-
-
-    <!-- ironjacamar-codegenerator -->
-    <delete file="${target.dir}/${name}-codegenerator.xml"/>
-    <ivy:makepom artifactName="${name}-codegenerator" 
-                 conf="${name}-codegenerator"
-                 ivyfile="${basedir}/ivy.xml" 
-                 pomfile="${target.dir}/${name}-codegenerator.xml"
-                 headerFile="${tools.dir}/mvn/HEADER"
-                 templatefile="${tools.dir}/mvn/pom.template"
-                 printIvyInfo="false">
-      <mapping conf="${name}-codegenerator" scope="runtime"/>
-    </ivy:makepom>
-
-    <deploy-file file="release.sh" artifact="${name}-codegenerator" extension="jar"/>
-    <snapshot-deploy-file file="snapshot.sh" artifact="${name}-codegenerator" extension="jar"/>
-    <snapshot-install-file file="install-snapshot.sh" artifact="${name}-codegenerator" extension="jar"/>
-
-    <!-- ironjacamar-common-api -->
-    <delete file="${target.dir}/${name}-common-api.xml"/>
-    <ivy:makepom artifactName="${name}-common-api" 
-                 conf="${name}-common-api"
-                 ivyfile="${basedir}/ivy.xml" 
-                 pomfile="${target.dir}/${name}-common-api.xml"
-                 headerFile="${tools.dir}/mvn/HEADER"
-                 templatefile="${tools.dir}/mvn/pom.template"
-                 printIvyInfo="false">
-      <mapping conf="${name}-common-api" scope="runtime"/>
-    </ivy:makepom>
-
-    <deploy-file file="release.sh" artifact="${name}-common-api" extension="jar"/>
-    <snapshot-deploy-file file="snapshot.sh" artifact="${name}-common-api" extension="jar"/>
-  	<snapshot-install-file file="install-snapshot.sh" artifact="${name}-common-api" extension="jar"/>
-
-    <!-- ironjacamar-common-impl -->
-    <delete file="${target.dir}/${name}-common-impl.xml"/>
-    <ivy:makepom artifactName="${name}-common-impl" 
-                 conf="${name}-common-impl"
-                 ivyfile="${basedir}/ivy.xml" 
-                 pomfile="${target.dir}/${name}-common-impl.xml"
-                 headerFile="${tools.dir}/mvn/HEADER"
-                 templatefile="${tools.dir}/mvn/pom.template"
-                 printIvyInfo="false">
-      <mapping conf="${name}-common-impl" scope="runtime"/>
-      <dependency artifact="${name}-common-api" scope="runtime"/>
-      <dependency artifact="${name}-common-spi" scope="runtime"/>
-      <dependency artifact="${name}-spec-api" scope="runtime"/>
-    </ivy:makepom>
-
-    <deploy-file file="release.sh" artifact="${name}-common-impl" extension="jar"/>
-    <snapshot-deploy-file file="snapshot.sh" artifact="${name}-common-impl" extension="jar"/>
-  	<snapshot-install-file file="install-snapshot.sh" artifact="${name}-common-impl" extension="jar"/>
-
-    <!-- ironjacamar-common-impl-papaki -->
-    <delete file="${target.dir}/${name}-common-impl-papaki.xml"/>
-    <ivy:makepom artifactName="${name}-common-impl-papaki" 
-                 conf="${name}-common-impl-papaki"
-                 ivyfile="${basedir}/ivy.xml" 
-                 pomfile="${target.dir}/${name}-common-impl-papaki.xml"
-                 headerFile="${tools.dir}/mvn/HEADER"
-                 templatefile="${tools.dir}/mvn/pom.template"
-                 printIvyInfo="false">
-      <mapping conf="${name}-common-impl-papaki" scope="runtime"/>
-      <dependency artifact="${name}-common-spi" scope="runtime"/>
-    </ivy:makepom>
-
-    <deploy-file file="release.sh" artifact="${name}-common-impl-papaki" extension="jar"/>
-    <snapshot-deploy-file file="snapshot.sh" artifact="${name}-common-impl-papaki" extension="jar"/>
-  	<snapshot-install-file file="install-snapshot.sh" artifact="${name}-common-impl-papaki" extension="jar"/>
-
-    <!-- ironjacamar-common-spi -->
-    <delete file="${target.dir}/${name}-common-spi.xml"/>
-    <ivy:makepom artifactName="${name}-common-spi" 
-                 conf="${name}-common-spi"
-                 ivyfile="${basedir}/ivy.xml" 
-                 pomfile="${target.dir}/${name}-common-spi.xml"
-                 headerFile="${tools.dir}/mvn/HEADER"
-                 templatefile="${tools.dir}/mvn/pom.template"
-                 printIvyInfo="false">
-      <mapping conf="${name}-common-spi" scope="runtime"/>
-    </ivy:makepom>
-
-    <deploy-file file="release.sh" artifact="${name}-common-spi" extension="jar"/>
-    <snapshot-deploy-file file="snapshot.sh" artifact="${name}-common-spi" extension="jar"/>
-    <snapshot-install-file file="install-snapshot.sh" artifact="${name}-common-spi" extension="jar"/>
-
-    <!-- ironjacamar-core-api -->
-    <delete file="${target.dir}/${name}-core-api.xml"/>
-    <ivy:makepom artifactName="${name}-core-api" 
-                 conf="${name}-core-api"
-                 ivyfile="${basedir}/ivy.xml" 
-                 pomfile="${target.dir}/${name}-core-api.xml"
-                 headerFile="${tools.dir}/mvn/HEADER"
-                 templatefile="${tools.dir}/mvn/pom.template"
-                 printIvyInfo="false">
-      <mapping conf="${name}-core-api" scope="runtime"/>
-      <dependency artifact="${name}-core-spi" scope="runtime"/>
-      <dependency artifact="${name}-spec-api" scope="runtime"/>
-    </ivy:makepom>
-
-    <deploy-file file="release.sh" artifact="${name}-core-api" extension="jar"/>
-    <snapshot-deploy-file file="snapshot.sh" artifact="${name}-core-api" extension="jar"/>
-    <snapshot-install-file file="install-snapshot.sh" artifact="${name}-core-api" extension="jar"/>
-
-    <!-- ironjacamar-core-impl -->
-    <delete file="${target.dir}/${name}-core-impl.xml"/>
-    <ivy:makepom artifactName="${name}-core-impl" 
-                 conf="${name}-core-impl"
-                 ivyfile="${basedir}/ivy.xml" 
-                 pomfile="${target.dir}/${name}-core-impl.xml"
-                 headerFile="${tools.dir}/mvn/HEADER"
-                 templatefile="${tools.dir}/mvn/pom.template"
-                 printIvyInfo="false">
-      <mapping conf="${name}-core-impl" scope="runtime"/>
-      <dependency artifact="${name}-common-impl" scope="runtime"/>
-      <dependency artifact="${name}-core-api" scope="runtime"/>
-      <dependency artifact="${name}-core-spi" scope="runtime"/>
-      <dependency artifact="${name}-spec-api" scope="runtime"/>
-    </ivy:makepom>
-
-    <deploy-file file="release.sh" artifact="${name}-core-impl" extension="jar"/>
-    <snapshot-deploy-file file="snapshot.sh" artifact="${name}-core-impl" extension="jar"/>
-    <snapshot-install-file file="install-snapshot.sh" artifact="${name}-core-impl" extension="jar"/>
-
-    <!-- ironjacamar-core-spi -->
-    <delete file="${target.dir}/${name}-core-spi.xml"/>
-    <ivy:makepom artifactName="${name}-core-spi" 
-                 conf="${name}-core-spi"
-                 ivyfile="${basedir}/ivy.xml" 
-                 pomfile="${target.dir}/${name}-core-spi.xml"
-                 headerFile="${tools.dir}/mvn/HEADER"
-                 templatefile="${tools.dir}/mvn/pom.template"
-                 printIvyInfo="false">
-      <mapping conf="${name}-core-spi" scope="runtime"/>
-    </ivy:makepom>
-
-    <deploy-file file="release.sh" artifact="${name}-core-spi" extension="jar"/>
-    <snapshot-deploy-file file="snapshot.sh" artifact="${name}-core-spi" extension="jar"/>
-    <snapshot-install-file file="install-snapshot.sh" artifact="${name}-core-spi" extension="jar"/>
-
-    <!-- ironjacamar-depchain -->
-    <delete file="${target.dir}/${name}-depchain.xml"/>
-    <ivy:makepom artifactName="${name}-depchain" 
-                 conf="${name}-depchain"
-                 ivyfile="${basedir}/ivy.xml" 
-                 pomfile="${target.dir}/${name}-depchain.xml"
-                 headerFile="${tools.dir}/mvn/HEADER"
-                 templatefile="${tools.dir}/mvn/pom.template"
-                 printIvyInfo="false">
-      <mapping conf="${name}-depchain" scope="runtime"/>
-    </ivy:makepom>
-
-    <concat destfile="${target.dir}/release.sh" append="true" force="true" eol="unix">
-mvn deploy:deploy-file -Dfile=$PWD/${name}-depchain.xml -DpomFile=${name}-depchain.xml $REPOSITORY
-</concat>
-    <concat destfile="${target.dir}/snapshot.sh" append="true" force="true" eol="unix">
-mvn deploy:deploy-file -Dfile=$PWD/${name}-depchain.xml -DpomFile=${name}-depchain.xml -DuniqueVersion=false $REPOSITORY
-</concat>
-<concat destfile="${target.dir}/install-snapshot.sh" append="true" force="true" eol="unix">
-mvn install:install-file -Dfile=$PWD/${name}-depchain.xml -DpomFile=${name}-depchain.xml -DuniqueVersion=false $REPOSITORY
-</concat>
-
-    <!-- ironjacamar-deployers-common -->
-    <delete file="${target.dir}/${name}-deployers-common.xml"/>
-    <ivy:makepom artifactName="${name}-deployers-common" 
-                 conf="${name}-deployers-common"
-                 ivyfile="${basedir}/ivy.xml" 
-                 pomfile="${target.dir}/${name}-deployers-common.xml"
-                 headerFile="${tools.dir}/mvn/HEADER"
-                 templatefile="${tools.dir}/mvn/pom.template"
-                 printIvyInfo="false">
-      <mapping conf="${name}-deployers-common" scope="runtime"/>
-    </ivy:makepom>
-
-    <deploy-file file="release.sh" artifact="${name}-deployers-common" extension="jar"/>
-    <snapshot-deploy-file file="snapshot.sh" artifact="${name}-deployers-common" extension="jar"/>
-    <snapshot-install-file file="install-snapshot.sh" artifact="${name}-deployers-common" extension="jar"/>
-
-    <!-- ironjacamar-deployers-fungal -->
-    <delete file="${target.dir}/${name}-deployers-fungal.xml"/>
-    <ivy:makepom artifactName="${name}-deployers-fungal" 
-                 conf="${name}-deployers-fungal"
-                 ivyfile="${basedir}/ivy.xml" 
-                 pomfile="${target.dir}/${name}-deployers-fungal.xml"
-                 headerFile="${tools.dir}/mvn/HEADER"
-                 templatefile="${tools.dir}/mvn/pom.template"
-                 printIvyInfo="false">
-      <mapping conf="${name}-deployers-fungal" scope="runtime"/>
-      <dependency artifact="${name}-common-impl" scope="runtime"/>
-      <dependency artifact="${name}-core-api" scope="runtime"/>
-      <dependency artifact="${name}-core-impl" scope="runtime"/>
-      <dependency artifact="${name}-core-spi" scope="runtime"/>
-      <dependency artifact="${name}-spec-api" scope="runtime"/>
-      <dependency artifact="${name}-validator" scope="runtime"/>
-    </ivy:makepom>
-
-    <deploy-file file="release.sh" artifact="${name}-deployers-fungal" extension="jar"/>
-    <snapshot-deploy-file file="snapshot.sh" artifact="${name}-deployers-fungal" extension="jar"/>
-    <snapshot-install-file file="install-snapshot.sh" artifact="${name}-deployers-fungal" extension="jar"/>
-
-    <!-- ironjacamar-embedded -->
-    <delete file="${target.dir}/${name}-embedded.xml"/>
-    <ivy:makepom artifactName="${name}-embedded" 
-                 conf="${name}-embedded"
-                 ivyfile="${basedir}/ivy.xml" 
-                 pomfile="${target.dir}/${name}-embedded.xml"
-                 headerFile="${tools.dir}/mvn/HEADER"
-                 templatefile="${tools.dir}/mvn/pom.template"
-                 printIvyInfo="false">
-      <mapping conf="${name}-embedded" scope="runtime"/>
-    </ivy:makepom>
-
-    <deploy-file file="release.sh" artifact="${name}-embedded" extension="jar"/>
-    <snapshot-deploy-file file="snapshot.sh" artifact="${name}-embedded" extension="jar"/>
-    <snapshot-install-file file="install-snapshot.sh" artifact="${name}-embedded" extension="jar"/>
-
-    <!-- ironjacamar-embedded-arquillian -->
-    <delete file="${target.dir}/${name}-embedded-arquillian.xml"/>
-    <ivy:makepom artifactName="${name}-embedded-arquillian" 
-                 conf="${name}-embedded-arquillian"
-                 ivyfile="${basedir}/ivy.xml" 
-                 pomfile="${target.dir}/${name}-embedded-arquillian.xml"
-                 headerFile="${tools.dir}/mvn/HEADER"
-                 templatefile="${tools.dir}/mvn/pom.template"
-                 printIvyInfo="false">
-      <mapping conf="${name}-embedded-arquillian" scope="runtime"/>
-      <dependency artifact="${name}-embedded" scope="runtime"/>
-    </ivy:makepom>
-
-    <deploy-file file="release.sh" artifact="${name}-embedded-arquillian" extension="jar"/>
-    <snapshot-deploy-file file="snapshot.sh" artifact="${name}-embedded-arquillian" extension="jar"/>
-    <snapshot-install-file file="install-snapshot.sh" artifact="${name}-embedded-arquillian" extension="jar"/>
-
-    <!-- ironjacamar-spec-api -->
-    <delete file="${target.dir}/${name}-spec-api.xml"/>
-    <ivy:makepom artifactName="${name}-spec-api" 
-                 conf="${name}-spec-api"
-                 ivyfile="${basedir}/ivy.xml" 
-                 pomfile="${target.dir}/${name}-spec-api.xml"
-                 headerFile="${tools.dir}/mvn/HEADER"
-                 templatefile="${tools.dir}/mvn/pom.template"
-                 printIvyInfo="false">
-      <mapping conf="${name}-spec-api" scope="runtime"/>
-    </ivy:makepom>
-
-    <deploy-file file="release.sh" artifact="${name}-spec-api" extension="jar"/>
-    <snapshot-deploy-file file="snapshot.sh" artifact="${name}-spec-api" extension="jar"/>
-    <snapshot-install-file file="install-snapshot.sh" artifact="${name}-spec-api" extension="jar"/>
-
-    <!-- ironjacamar-validator -->
-    <delete file="${target.dir}/${name}-validator.xml"/>
-    <ivy:makepom artifactName="${name}-validator" 
-                 conf="${name}-validator"
-                 ivyfile="${basedir}/ivy.xml" 
-                 pomfile="${target.dir}/${name}-validator.xml"
-                 headerFile="${tools.dir}/mvn/HEADER"
-                 templatefile="${tools.dir}/mvn/pom.template"
-                 printIvyInfo="false">
-      <mapping conf="${name}-validator" scope="runtime"/>
-      <dependency artifact="${name}-common-api" scope="runtime"/>
-      <dependency artifact="${name}-common-impl" scope="runtime"/>
-      <dependency artifact="${name}-common-spi" scope="runtime"/>
-      <dependency artifact="${name}-spec-api" scope="runtime"/>
-    </ivy:makepom>
-
-    <deploy-file file="release.sh" artifact="${name}-validator" extension="jar"/>
-    <snapshot-deploy-file file="snapshot.sh" artifact="${name}-validator" extension="jar"/>
-    <snapshot-install-file file="install-snapshot.sh" artifact="${name}-validator" extension="jar"/>
-
-    <!-- ironjacamar-validator-ant -->
-    <delete file="${target.dir}/${name}-validator-ant.xml"/>
-    <ivy:makepom artifactName="${name}-validator-ant" 
-                 conf="${name}-validator-ant"
-                 ivyfile="${basedir}/ivy.xml" 
-                 pomfile="${target.dir}/${name}-validator-ant.xml"
-                 headerFile="${tools.dir}/mvn/HEADER"
-                 templatefile="${tools.dir}/mvn/pom.template"
-                 printIvyInfo="false">
-      <mapping conf="${name}-validator-ant" scope="runtime"/>
-      <dependency artifact="${name}-validator" scope="runtime"/>
-    </ivy:makepom>
-
-    <deploy-file file="release.sh" artifact="${name}-validator-ant" extension="jar"/>
-    <snapshot-deploy-file file="snapshot.sh" artifact="${name}-validator-ant" extension="jar"/>
-    <snapshot-install-file file="install-snapshot.sh" artifact="${name}-validator" extension="jar"/>
-
-    <!-- ironjacamar-validator-cli -->
-    <delete file="${target.dir}/${name}-validator-cli.xml"/>
-    <ivy:makepom artifactName="${name}-validator-cli" 
-                 conf="${name}-validator-cli"
-                 ivyfile="${basedir}/ivy.xml" 
-                 pomfile="${target.dir}/${name}-validator-cli.xml"
-                 headerFile="${tools.dir}/mvn/HEADER"
-                 templatefile="${tools.dir}/mvn/pom.template"
-                 printIvyInfo="false">
-      <mapping conf="${name}-validator-cli" scope="runtime"/>
-      <dependency artifact="${name}-validator" scope="runtime"/>
-    </ivy:makepom>
-
-    <deploy-file file="release.sh" artifact="${name}-validator-cli" extension="jar"/>
-    <snapshot-deploy-file file="snapshot.sh" artifact="${name}-validator-cli" extension="jar"/>
-    <snapshot-install-file file="install-snapshot.sh" artifact="${name}-validator-cli" extension="jar"/>
-
-    <!-- ironjacamar-validator-maven -->
-    <delete file="${target.dir}/${name}-validator-maven.xml"/>
-    <ivy:makepom artifactName="${name}-validator-maven" 
-                 conf="${name}-validator-maven"
-                 ivyfile="${basedir}/ivy.xml" 
-                 pomfile="${target.dir}/${name}-validator-maven.xml"
-                 headerFile="${tools.dir}/mvn/HEADER"
-                 templatefile="${tools.dir}/mvn/pom.template"
-                 printIvyInfo="false">
-      <mapping conf="${name}-validator-maven" scope="runtime"/>
-      <dependency artifact="${name}-validator" scope="runtime"/>
-    </ivy:makepom>
-
-    <deploy-file file="release.sh" artifact="${name}-validator-maven" extension="jar"/>
-    <snapshot-deploy-file file="snapshot.sh" artifact="${name}-validator-maven" extension="jar"/>
-    <snapshot-install-file file="install-snapshot.sh" artifact="${name}-validator-maven" extension="jar"/>
-
-    <!-- adapters-jdbc -->
-    <delete file="${target.dir}/${name}-jdbc.xml"/>
-    <ivy:makepom artifactName="${name}-jdbc" 
-                conf="${name}-jdbc"
-                ivyfile="${basedir}/ivy.xml" 
-                pomfile="${target.dir}/${name}-jdbc.xml"
-                headerFile="${tools.dir}/mvn/HEADER"
-                templatefile="${tools.dir}/mvn/pom.template"
-                printIvyInfo="false">
-      <mapping conf="${name}-jdbc" scope="runtime"/>
-    </ivy:makepom>
-
-     <deploy-file file="release.sh" artifact="${name}-jdbc" extension="jar"/>
-     <snapshot-deploy-file file="snapshot.sh" artifact="${name}-jdbc" extension="jar"/>
-     <snapshot-install-file file="install-snapshot.sh" artifact="${name}-jdbc" extension="jar"/>
-
-  	
-    <!-- jdbc-local -->
-    <delete file="${target.dir}/jdbc-local.xml"/>
-    <ivy:makepom artifactName="jdbc-local" 
-                 conf="jdbc-local"
-                 ivyfile="${basedir}/ivy.xml" 
-                 pomfile="${target.dir}/jdbc-local.xml"
-                 headerFile="${tools.dir}/mvn/HEADER"
-                 templatefile="${tools.dir}/mvn/pom.template"
-                 printIvyInfo="false">
-      <mapping conf="jdbc-local" scope="runtime"/>
-    </ivy:makepom>
-
-    <deploy-file file="release.sh" artifact="jdbc-local" extension="rar"/>
-    <snapshot-deploy-file file="snapshot.sh" artifact="jdbc-local" extension="rar"/>
-    <snapshot-install-file file="install-snapshot.sh" artifact="jdbc-local" extension="rar"/>
-
-    <!-- jdbc-xa -->
-    <delete file="${target.dir}/jdbc-xa.xml"/>
-    <ivy:makepom artifactName="jdbc-xa" 
-                 conf="jdbc-xa"
-                 ivyfile="${basedir}/ivy.xml" 
-                 pomfile="${target.dir}/jdbc-xa.xml"
-                 headerFile="${tools.dir}/mvn/HEADER"
-                 templatefile="${tools.dir}/mvn/pom.template"
-                 printIvyInfo="false">
-      <mapping conf="jdbc-xa" scope="runtime"/>
-    </ivy:makepom>
-
-    <deploy-file file="release.sh" artifact="jdbc-xa" extension="rar"/>
-    <snapshot-deploy-file file="snapshot.sh" artifact="jdbc-xa" extension="rar"/>
-    <snapshot-install-file file="install-snapshot.sh" artifact="jdbc-xa" extension="rar"/>
-
-    <!-- mail -->
-    <delete file="${target.dir}/mail.xml"/>
-    <ivy:makepom artifactName="mail" 
-                 conf="mail"
-                 ivyfile="${basedir}/ivy.xml" 
-                 pomfile="${target.dir}/mail.xml"
-                 headerFile="${tools.dir}/mvn/HEADER"
-                 templatefile="${tools.dir}/mvn/pom.template"
-                 printIvyInfo="false">
-      <mapping conf="mail" scope="runtime"/>
-    </ivy:makepom>
-
-    <deploy-file file="release.sh" artifact="mail" extension="rar"/>
-    <snapshot-deploy-file file="snapshot.sh" artifact="mail" extension="rar"/>
-    <snapshot-install-file file="install-snapshot.sh" artifact="mail" extension="rar"/>
-
-    <chmod file="${target.dir}/release.sh" perm="755"/>
-    <chmod file="${target.dir}/snapshot.sh" perm="755"/>
-    <chmod file="${target.dir}/install-snapshot.sh" perm="755"/>
-
-  </target>
-
-</project>

Copied: projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/build.xml (from rev 111242, projects/jboss-jca/trunk/build.xml)
===================================================================
--- projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/build.xml	                        (rev 0)
+++ projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/build.xml	2011-04-25 14:41:10 UTC (rev 111243)
@@ -0,0 +1,1553 @@
+<!--
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file 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.
+-->
+<project name="ironjacamar" 
+         default="jars" 
+         basedir="." 
+         xmlns:ivy="antlib:org.apache.ivy.ant">
+
+  <available classname="java.lang.Enum" property="HAVE_JDK_1.5"/>
+  <available classname="java.lang.management.LockInfo" property="HAVE_JDK_1.6"/>
+  <available classname="java.util.concurrent.ForkJoinPool" property="HAVE_JDK_1.7"/>
+
+  <!-- ================================= 
+       Project              
+       ================================= -->
+  <property name="name" value="ironjacamar"/>
+  <property name="major" value="1"/>
+  <property name="minor" value="0"/>
+  <property name="patch" value="0"/>
+  <property name="type" value="Beta6"/>
+
+  <condition property="version" value="${major}.${minor}.${patch}-SNAPSHOT">
+    <isset property="snapshot"/>
+  </condition>
+  <property name="version" value="${major}.${minor}.${patch}.${type}"/>
+
+  <!-- ================================= 
+       Ivy              
+       ================================= -->
+  <property name="ivy.version" value="2.2.0"/>
+  <property name="ivy.dir" value="${user.home}/.ivy2/cache/org.apache.ivy/jars"/>
+  <property name="ivy.jar.name" value="ivy-${ivy.version}.jar"/>
+
+  <!-- ================================= 
+       Repositories              
+       ================================= -->
+  <property name="central.repo" value="http://repo1.maven.org/maven2"/>
+  <property name="jboss.repo" value="http://repository.jboss.org/nexus/content/groups/public/"/>
+  <property name="snapshots.repo" value="http://repository.jboss.org/nexus/content/repositories/snapshots/"/>
+  <property name="fungal.repo" value="http://jesperpedersen.github.com/fungal/maven2"/>
+  
+  <!-- ================================= 
+       Properties              
+       ================================= -->
+  <property name="lib.dir" value="${basedir}/lib" />
+  <property name="build.dir" value="${basedir}/build" />
+  <property name="api.dir" value="${basedir}/api" />
+  <property name="doc.dir" value="${basedir}/doc" />
+  <property name="target.dir" value="${basedir}/target" />
+  <property name="tools.dir" value="${basedir}/tools" />
+  <property name="reports.dir" value="${basedir}/reports" />
+  <property name="test.dir" value="${reports.dir}" />
+
+  <property name="javac.debug" value="on" />
+  <property name="javac.deprecation" value="on" />
+  <property name="javac.optimize" value="off" />
+
+  <property name="junit.printsummary" value="yes" />
+  <property name="junit.haltonerror" value="no" />
+  <property name="junit.haltonfailure" value="no" />
+  <property name="junit.fork" value="yes" />
+  <property name="junit.timeout" value="60000" />
+  <property name="junit.jvm" value="" />
+  <property name="junit.jvm.options" value="-Xms128m -Xmx512m -XX:MaxPermSize=256m" />
+  <property name="junit.batchtest.haltonerror" value="no" />
+  <property name="junit.batchtest.haltonfailure" value="no" />
+  <property name="junit.batchtest.fork" value="yes" />
+
+  <!-- ================================= 
+       Versions              
+       ================================= -->
+  <property name="version.ant" value="1.8.1"/>
+  <property name="version.activation" value="1.1"/>
+  <property name="version.apache-log4j" value="1.2.16"/>
+  <property name="version.apache-logging" value="1.1.0.jboss"/>
+  <property name="version.apiviz" value="1.3.1.GA"/>
+  <property name="version.arquillian" value="1.0.0.Alpha4"/>
+  <property name="version.dom4j" value="1.6.1"/>
+  <property name="version.mockito" value="1.8.5"/>
+  <property name="version.eclipse.ecj" value="3.5.1"/>
+  <property name="version.fungal" value="0.9.0.Final"/>
+  <property name="version.h2" value="1.3.154"/>
+  <property name="version.hibernate-annotations" value="3.5.1-Final"/>
+  <property name="version.hibernate-validator" value="4.1.0.Final"/>
+  <property name="version.hornetq" value="2.2.2.Final"/>
+  <property name="version.javassist" value="3.14.0-GA"/>
+  <property name="version.jboss.common" value="2.2.17.GA"/>
+  <property name="version.jboss.integration" value="5.1.0.CR1"/>
+  <property name="version.jboss.jaspi.api" value="1.0.0.GA"/>
+  <property name="version.jboss.jms.api" value="1.0.0.Beta1"/>
+  <property name="version.jboss.logging" value="3.0.0.Beta3"/>
+  <property name="version.jboss.logmanager" value="1.2.0.CR8"/>
+  <property name="version.jboss.naming" value="5.0.3.GA"/>
+  <property name="version.jboss.netty" value="3.2.1.Final"/>
+  <property name="version.jboss.papaki" value="1.0.0.Beta3"/>
+  <property name="version.jboss.picketbox" value="4.0.0.Alpha8"/>
+  <property name="version.jboss.security" value="2.1.0.20090318"/>
+  <property name="version.jboss.shrinkwrap" value="1.0.0-alpha-11"/>
+  <property name="version.jboss.slf4j" value="1.0.2.GA"/>
+  <property name="version.jboss.slf4j.logmanager" value="1.0.0.CR3"/>
+  <property name="version.jboss.stdio" value="1.0.0.CR3"/>
+  <property name="version.jboss.threads" value="2.0.0.CR7"/>
+  <property name="version.jboss.ts" value="4.14.0.Final"/>
+  <property name="version.jdepend" value="2.9.1"/>
+  <property name="version.jetty" value="7.4.0.v20110414"/>
+  <property name="version.jetty.servlet" value="6.1.14"/>
+  <property name="version.jetty.glassfish" value="2.1.v20100127"/>
+  <property name="version.jasper" value="glassfish_2.1.0.v201004190952"/>
+  <property name="version.jpa" value="1.0"/>
+  <property name="version.junit" value="4.8.2"/>
+  <property name="version.jaxb.api" value="2.0"/>
+  <property name="version.jaxb.impl" value="2.1"/>
+  <property name="version.mail-api" value="1.4.4"/>
+  <property name="version.maven" value="2.2.1"/>
+  <property name="version.rhq" value="4.0.0.Beta1"/>
+  <property name="version.slf4j" value="1.5.8"/>
+  <property name="version.transaction.api" value="1.0.1.GA"/>
+  <property name="version.validation-api" value="1.0.0.GA"/>
+
+  <!-- ================================= 
+       Paths              
+       ================================= -->
+  <path id="sjc.lib.path.id">
+    <fileset dir="${lib.dir}/common">
+      <include name="**/*.jar"/>
+    </fileset>
+    <fileset dir="${lib.dir}/embedded">
+      <include name="**/*.jar"/>
+    </fileset>
+    <fileset dir="${lib.dir}/arquillian">
+      <include name="**/*.jar"/>
+    </fileset>
+    <fileset dir="${lib.dir}/jetty">
+      <include name="**/*.jar"/>
+    </fileset>
+    <fileset dir="${lib.dir}/hornetq">
+      <include name="**/*.jar"/>
+    </fileset>
+    <fileset dir="${lib.dir}/sjc">
+      <include name="**/*.jar"/>
+    </fileset>
+    <fileset dir="${lib.dir}/mail">
+      <include name="**/*.jar"/>
+    </fileset>
+    <fileset dir="${lib.dir}/tools">
+      <include name="**/*.jar"/>
+    </fileset>
+    <fileset dir="${target.dir}">
+      <include name="**/*.jar"/>
+    </fileset>
+  </path>
+
+  <path id="rhq.lib.path.id">
+    <path refid="sjc.lib.path.id"/>
+    <fileset dir="${lib.dir}/rhq">
+      <include name="**/*.jar"/>
+    </fileset>
+  </path>
+
+  <path id="test.lib.path.id">
+    <fileset dir="${lib.dir}/common">
+      <include name="**/*.jar"/>
+    </fileset>
+    <fileset dir="${lib.dir}/sjc">
+      <include name="**/*.jar"/>
+    </fileset>
+    <fileset dir="${lib.dir}/embedded">
+      <include name="**/*.jar"/>
+    </fileset>
+    <fileset dir="${lib.dir}/arquillian">
+      <include name="**/*.jar"/>
+    </fileset>
+    <fileset dir="${lib.dir}/mail">
+      <include name="**/*.jar"/>
+    </fileset>
+    <fileset dir="${lib.dir}/hornetq">
+      <include name="**/*.jar"/>
+    </fileset>
+    <fileset dir="${lib.dir}/test">
+      <include name="**/*.jar"/>
+    </fileset>
+    <fileset dir="${lib.dir}/tools">
+      <include name="**/*.jar"/>
+    </fileset>
+    <fileset dir="${lib.dir}/rhq">
+      <include name="**/*.jar"/>
+    </fileset>
+    <fileset dir="${target.dir}">
+       <include name="**/*.jar"/>
+    </fileset>
+  </path>
+
+  <path id="checkstyle.lib.path.id">
+    <fileset dir="${tools.dir}/checkstyle/lib"/>
+    <fileset dir="${lib.dir}/common">
+      <include name="**/*.jar"/>
+    </fileset>
+    <fileset dir="${lib.dir}/embedded">
+      <include name="**/*.jar"/>
+    </fileset>
+    <fileset dir="${lib.dir}/arquillian">
+      <include name="**/*.jar"/>
+    </fileset>
+    <fileset dir="${lib.dir}/jetty">
+      <include name="**/*.jar"/>
+    </fileset>
+    <fileset dir="${lib.dir}/hornetq">
+      <include name="**/*.jar"/>
+    </fileset>
+    <fileset dir="${lib.dir}/sjc">
+      <include name="**/*.jar"/>
+    </fileset>
+    <fileset dir="${lib.dir}/mail">
+      <include name="**/*.jar"/>
+    </fileset>
+    <fileset dir="${lib.dir}/test">
+      <include name="**/*.jar"/>
+    </fileset>
+    <fileset dir="${lib.dir}/tools">
+      <include name="**/*.jar"/>
+    </fileset>
+    <fileset dir="${lib.dir}/rhq">
+      <include name="**/*.jar"/>
+    </fileset>
+    <fileset dir="${target.dir}">
+      <include name="**/*.jar"/>
+    </fileset>
+  </path>
+
+  <path id="findbugs.lib.path.id">
+    <fileset dir="${tools.dir}/findbugs/lib"/>
+  </path>
+
+  <path id="cobertura.lib.path.id">
+    <fileset dir="${tools.dir}/cobertura/lib"/>
+  </path>
+
+  <path id="tattletale.lib.path.id">
+    <fileset dir="${tools.dir}/tattletale/lib"/>
+  </path>
+
+  <!-- ================================= 
+       Bootstrap Ivy
+       ================================= -->
+  <mkdir dir="${ivy.dir}"/>
+  <get usetimestamp="true" src="https://repository.apache.org/content/repositories/releases/org/apache/ivy/ivy/${ivy.version}/${ivy.jar.name}" 
+       skipexisting="true"
+       dest="${ivy.dir}/${ivy.jar.name}"/>
+  <taskdef resource="org/apache/ivy/ant/antlib.xml" uri="antlib:org.apache.ivy.ant" classpath="${ivy.dir}/${ivy.jar.name}"/>
+
+  <!-- ================================= 
+       Target: init              
+       ================================= -->
+  <target name="init">
+    <fail message="IronJacamar requires JDK6+" unless="HAVE_JDK_1.6"/>
+  
+    <ivy:settings file="${basedir}/ivy.settings.xml"/>
+
+    <mkdir dir="${build.dir}" />
+    <mkdir dir="${target.dir}" />
+  </target>
+
+  <!-- ================================= 
+       Target: resolve              
+       ================================= -->
+  <target name="resolve" depends="init">
+    <ivy:retrieve pattern="${lib.dir}/[conf]/[artifact].[ext]" 
+                  conf="common,sjc,embedded,arquillian,jetty,hornetq,mail,rhq,test,tools"
+                  sync="true"/>
+  </target>
+  
+  <!-- ================================= 
+       Target: report              
+       ================================= -->
+  <target name="report" depends="resolve">
+    <ivy:report todir="${target.dir}"/>
+  </target>
+  
+  <!-- ================================= 
+       Target: jars
+       ================================= -->
+  <target name="jars" depends="resolve">
+    <ant dir="api" inheritRefs="true" target="jars"/>
+    <ant dir="common" inheritRefs="true" target="jars"/>
+    <ant dir="core" inheritRefs="true" target="jars"/>
+    <ant dir="validator" inheritRefs="true" target="jars"/>
+    <ant dir="deployers" inheritRefs="true" target="jars"/>
+    <ant dir="embedded" inheritRefs="true" target="jars"/>
+    <ant dir="web" inheritRefs="true" target="jars"/>
+    <ant dir="sjc" inheritRefs="true" target="jars"/>
+    <ant dir="codegenerator" inheritRefs="true" target="jars"/>
+    <ant dir="adapters" inheritRefs="true" target="jars"/>
+    <ant dir="rhq" inheritRefs="true" target="jars"/>
+  </target>
+  
+  <!-- ================================= 
+       Target: docs
+       ================================= -->
+  <target name="docs" depends="jars">
+    <ant dir="api" inheritRefs="true" target="docs"/>
+    <ant dir="common" inheritRefs="true" target="docs"/>
+    <ant dir="core" inheritRefs="true" target="docs"/>
+    <ant dir="validator" inheritRefs="true" target="docs"/>
+    <ant dir="deployers" inheritRefs="true" target="docs"/>
+    <ant dir="embedded" inheritRefs="true" target="docs"/>
+    <ant dir="web" inheritRefs="true" target="docs"/>
+    <ant dir="sjc" inheritRefs="true" target="docs"/>
+    <ant dir="codegenerator" inheritRefs="true" target="docs"/>
+    <ant dir="adapters" inheritRefs="true" target="docs"/>
+    <ant dir="rhq" inheritRefs="true" target="docs"/>
+  </target>
+  
+  <!-- ================================= 
+       Target: manual
+       ================================= -->
+  <target name="manual">
+    <ant dir="${doc.dir}/developerguide" inheritRefs="false" inheritAll="false"/>
+    <ant dir="${doc.dir}/userguide" inheritRefs="false" inheritAll="false"/>
+  </target>
+
+  <!-- ================================= 
+       Target: prepare test
+       ================================= -->
+  <target name="prepare-test" depends="jars">
+    <ant dir="common" inheritRefs="true" target="prepare-test"/>
+    <ant dir="core" inheritRefs="true" target="prepare-test"/>
+    <ant dir="embedded" inheritRefs="true" target="prepare-test"/>
+    <ant dir="deployers" inheritRefs="true" target="prepare-test"/>
+    <ant dir="validator" inheritRefs="true" target="prepare-test"/>
+    <ant dir="codegenerator" inheritRefs="true" target="prepare-test"/>
+    <ant dir="adapters" inheritRefs="true" target="prepare-test"/>
+    <ant dir="rhq" inheritRefs="true" target="prepare-test"/>
+  </target>
+  
+  <!-- ================================= 
+       Target: test
+       ================================= -->
+  <target name="test" depends="prepare-test">
+    <ant dir="common" inheritRefs="true" target="test"/>
+    <ant dir="core" inheritRefs="true" target="test"/>
+    <ant dir="embedded" inheritRefs="true" target="test"/>
+    <ant dir="deployers" inheritRefs="true" target="test"/>
+    <ant dir="validator" inheritRefs="true" target="test"/>
+    <ant dir="adapters" inheritRefs="true" target="test"/>
+    <ant dir="rhq" inheritRefs="true" target="test"/>
+  </target>
+  
+  <!-- ================================= 
+       Target: one-test
+       ================================= -->
+  <target name="one-test" depends="jars">
+    <condition property="module" else="core">
+      <equals arg1="${module}" arg2="" trim="true"/> 
+    </condition>
+
+    <ant dir="${module}" inheritRefs="true" target="one-test"/>
+  </target>
+
+  <!-- ================================= 
+       Target: module-test
+       ================================= -->
+  <target name="module-test" depends="jars">
+    <condition property="module" else="core">
+      <equals arg1="${module}" arg2="" trim="true"/> 
+    </condition>
+  	
+    <ant dir="${module}" inheritRefs="true" target="test"/>
+  </target>
+
+  <!-- ================================= 
+       Target: artifacts
+       ================================= -->
+  <target name="artifacts" depends="resolve">
+    <ant dir="api" inheritRefs="true" target="artifacts"/>
+    <ant dir="common" inheritRefs="true" target="artifacts"/>
+    <ant dir="core" inheritRefs="true" target="artifacts"/>
+    <ant dir="validator" inheritRefs="true" target="artifacts"/>
+    <ant dir="deployers" inheritRefs="true" target="artifacts"/>
+    <ant dir="embedded" inheritRefs="true" target="artifacts"/>
+    <ant dir="codegenerator" inheritRefs="true" target="artifacts"/>
+    <ant dir="adapters" inheritRefs="true" target="artifacts"/>
+  </target>
+  
+  <!-- ================================= 
+       Target: sjc
+       ================================= -->
+  <target name="sjc" depends="jars">
+    <ant dir="sjc" inheritRefs="true" target="sjc"/>
+  </target>
+
+  <!-- ================================= 
+       Target: release
+       ================================= -->
+  <target name="release" depends="clean,sjc">
+    <delete dir="${build.dir}"/>
+
+    <mkdir dir="${build.dir}" />
+    <mkdir dir="${build.dir}/${name}-${major}.${minor}.${patch}.${type}" />
+    <mkdir dir="${build.dir}/${name}-${major}.${minor}.${patch}.${type}/doc" />
+    <mkdir dir="${build.dir}/${name}-${major}.${minor}.${patch}.${type}/doc/spec" />
+
+    <ant dir="${doc.dir}/samples/helloworld" target="dist-clean" inheritRefs="false" inheritAll="false"/>
+
+    <ant dir="${doc.dir}/developerguide" target="pdf" inheritRefs="false" inheritAll="false"/>
+    <ant dir="${doc.dir}/userguide" target="pdf" inheritRefs="false" inheritAll="false"/>
+
+    <copy flatten="true" todir="${build.dir}/${name}-${major}.${minor}.${patch}.${type}/doc">
+      <fileset dir="${target.dir}/docs">
+        <include name="**/*.pdf"/>
+      </fileset>
+    </copy>
+
+    <ant dir="sjc" inheritRefs="true" target="war"/>
+    <delete dir="${build.dir}/sjc"/>
+
+    <ant dir="api" inheritRefs="true" target="docs"/>
+    <move todir="${build.dir}/${name}-${major}.${minor}.${patch}.${type}/doc/spec">
+      <fileset dir="${target.dir}/docs/spec">
+        <include name="**/*"/>
+      </fileset>
+    </move>
+    <delete dir="${build.dir}/api"/>
+
+    <copy todir="${build.dir}/${name}-${major}.${minor}.${patch}.${type}">
+      <fileset dir="${target.dir}/sjc"/>
+    </copy>
+    <chmod perm="755" type="file">
+      <fileset dir="${build.dir}/${name}-${major}.${minor}.${patch}.${type}">
+        <include name="**/*.sh"/>
+      </fileset>
+    </chmod>
+
+    <delete dir="${build.dir}/docbook"/>
+
+    <zip destfile="${name}-${major}.${minor}.${patch}.${type}.zip"
+         basedir="${build.dir}"/>
+    
+    <tar destfile="${name}-${major}.${minor}.${patch}.${type}.tar"
+         basedir="${build.dir}"/>
+    
+    <gzip zipfile="${name}-${major}.${minor}.${patch}.${type}.tar.gz" 
+          src="${name}-${major}.${minor}.${patch}.${type}.tar"/>
+    
+    <delete file="${name}-${major}.${minor}.${patch}.${type}.tar"/>
+    
+  </target>
+
+  <!-- ================================= 
+       Target: checkstyle
+       ================================= -->
+  <target name="checkstyle" depends="jars">
+    <taskdef name="checkstyle"
+             classname="com.puppycrawl.tools.checkstyle.CheckStyleTask"
+             classpathref="checkstyle.lib.path.id"/>
+
+    <mkdir dir="${reports.dir}/checkstyle" />
+
+    <checkstyle config="${tools.dir}/checkstyle/checkstyle.xml"
+                failOnViolation="false"
+                classpathref="checkstyle.lib.path.id">
+      <fileset dir="${basedir}"
+               includes="**/*.java"
+	       excludes="${build.dir}/**/*.java"/>
+      <formatter type="plain"/>
+      <formatter type="xml" toFile="${reports.dir}/checkstyle/checkstyle-result.xml"/>
+    </checkstyle>
+  </target>
+
+  <!-- ================================= 
+       Target: findbugs
+       ================================= -->
+  <target name="findbugs" depends="jars">
+    <taskdef name="findbugs"
+             classname="edu.umd.cs.findbugs.anttask.FindBugsTask"
+             classpathref="findbugs.lib.path.id"/>
+
+    <mkdir dir="${reports.dir}/findbugs" />
+
+    <findbugs home="${basedir}/tools/findbugs/lib/"
+              output="html"
+              outputFile="${reports.dir}/findbugs/findbugs.html" 
+              excludeFilter="${basedir}/tools/findbugs/filter.xml"
+              reportLevel="low">
+      <auxClasspath>
+        <fileset dir="${lib.dir}/common">
+          <include name="*.jar"/>
+        </fileset>
+        <fileset dir="${lib.dir}/embedded">
+          <include name="*.jar"/>
+        </fileset>
+        <fileset dir="${lib.dir}/arquillian">
+          <include name="*.jar"/>
+        </fileset>
+        <fileset dir="${lib.dir}/jetty">
+          <include name="*.jar"/>
+        </fileset>
+        <fileset dir="${lib.dir}/hornetq">
+          <include name="*.jar"/>
+        </fileset>
+        <fileset dir="${lib.dir}/sjc">
+          <include name="*.jar"/>
+        </fileset>
+        <fileset dir="${lib.dir}/mail">
+          <include name="*.jar"/>
+        </fileset>
+        <fileset dir="${lib.dir}/rhq">
+          <include name="*.jar"/>
+        </fileset>
+        <fileset dir="${lib.dir}/test">
+          <include name="*.jar"/>
+        </fileset>
+        <fileset dir="${lib.dir}/tools">
+          <include name="*.jar"/>
+        </fileset>
+      </auxClasspath>
+      <class location="${target.dir}/${name}-codegenerator.jar" />
+      <class location="${target.dir}/${name}-common-api.jar" />
+      <class location="${target.dir}/${name}-common-impl.jar" />
+      <class location="${target.dir}/${name}-common-impl-papaki.jar" />
+      <class location="${target.dir}/${name}-common-spi.jar" />
+      <class location="${target.dir}/${name}-core-api.jar" />
+      <class location="${target.dir}/${name}-core-impl.jar" />
+      <class location="${target.dir}/${name}-deployers-common.jar" />
+      <class location="${target.dir}/${name}-deployers-fungal.jar" />
+      <class location="${target.dir}/${name}-embedded.jar" />
+      <class location="${target.dir}/${name}-embedded-arquillian.jar" />
+      <class location="${target.dir}/${name}-rhq.jar" />
+      <class location="${target.dir}/${name}-sjc.jar" />
+      <class location="${target.dir}/${name}-spec-api.jar" />
+      <class location="${target.dir}/${name}-validator.jar" />
+      <class location="${target.dir}/${name}-validator-ant.jar" />
+      <class location="${target.dir}/${name}-validator-cli.jar" />
+      <class location="${target.dir}/${name}-validator-maven.jar" />
+      <class location="${target.dir}/${name}-web.jar" />
+      <class location="${target.dir}/${name}-web-console.jar" />
+    </findbugs>
+
+    <findbugs home="${basedir}/tools/findbugs/lib/"
+              output="xml:withMessages"
+              outputFile="${reports.dir}/findbugs/findbugs.xml" 
+              excludeFilter="${basedir}/tools/findbugs/filter.xml"
+              reportLevel="low">
+      <auxClasspath>
+        <fileset dir="${lib.dir}/common">
+          <include name="*.jar"/>
+        </fileset>
+        <fileset dir="${lib.dir}/embedded">
+          <include name="*.jar"/>
+        </fileset>
+        <fileset dir="${lib.dir}/arquillian">
+          <include name="*.jar"/>
+        </fileset>
+        <fileset dir="${lib.dir}/jetty">
+          <include name="*.jar"/>
+        </fileset>
+        <fileset dir="${lib.dir}/hornetq">
+          <include name="*.jar"/>
+        </fileset>
+        <fileset dir="${lib.dir}/sjc">
+          <include name="*.jar"/>
+        </fileset>
+        <fileset dir="${lib.dir}/mail">
+          <include name="*.jar"/>
+        </fileset>
+        <fileset dir="${lib.dir}/rhq">
+          <include name="*.jar"/>
+        </fileset>
+        <fileset dir="${lib.dir}/test">
+          <include name="*.jar"/>
+        </fileset>
+        <fileset dir="${lib.dir}/tools">
+          <include name="*.jar"/>
+        </fileset>
+      </auxClasspath>
+      <class location="${target.dir}/${name}-codegenerator.jar" />
+      <class location="${target.dir}/${name}-common-api.jar" />
+      <class location="${target.dir}/${name}-common-impl.jar" />
+      <class location="${target.dir}/${name}-common-impl-papaki.jar" />
+      <class location="${target.dir}/${name}-common-spi.jar" />
+      <class location="${target.dir}/${name}-core-api.jar" />
+      <class location="${target.dir}/${name}-core-impl.jar" />
+      <class location="${target.dir}/${name}-deployers-common.jar" />
+      <class location="${target.dir}/${name}-deployers-fungal.jar" />
+      <class location="${target.dir}/${name}-embedded.jar" />
+      <class location="${target.dir}/${name}-embedded-arquillian.jar" />
+      <class location="${target.dir}/${name}-rhq.jar" />
+      <class location="${target.dir}/${name}-sjc.jar" />
+      <class location="${target.dir}/${name}-spec-api.jar" />
+      <class location="${target.dir}/${name}-validator.jar" />
+      <class location="${target.dir}/${name}-validator-ant.jar" />
+      <class location="${target.dir}/${name}-validator-cli.jar" />
+      <class location="${target.dir}/${name}-validator-maven.jar" />
+      <class location="${target.dir}/${name}-web.jar" />
+      <class location="${target.dir}/${name}-web-console.jar" />
+    </findbugs>
+  </target>
+
+  <!-- ================================= 
+       Target: cobertura
+       ================================= -->
+  <target name="cobertura" depends="prepare-test">
+    <taskdef resource="tasks.properties"
+             classpathref="cobertura.lib.path.id"/>
+
+    <mkdir dir="${reports.dir}/cobertura" />
+    <mkdir dir="${reports.dir}/cobertura/tests" />
+
+    <delete file="${reports.dir}/cobertura/cobertura.ser"/>
+    <delete dir="${build.dir}/instrumented"/>
+    
+    <mkdir dir="${build.dir}/instrumented" />
+    <copy todir="${build.dir}/instrumented">
+      <fileset dir="${target.dir}">
+        <include name="*.jar"/>
+      </fileset>
+    </copy>
+
+    <copy todir="${build.dir}/instrumented">
+      <fileset dir="${build.dir}/adapters">
+        <include name="*.jar"/>
+      </fileset>
+    </copy>
+
+    <cobertura-instrument todir="${build.dir}/instrumented"
+                          datafile="${reports.dir}/cobertura/cobertura.ser">
+      <fileset dir="${target.dir}">
+        <include name="ironjacamar*.jar" />
+      </fileset>
+    </cobertura-instrument>
+
+    <copy todir="${build.dir}/instrumented">
+      <fileset dir="${target.dir}">
+        <include name="${name}-core-api.jar"/>
+      </fileset>
+    </copy>
+
+    <junit dir="common/src/test"
+           printsummary="${junit.printsummary}"
+           haltonerror="${junit.haltonerror}"
+           haltonfailure="${junit.haltonfailure}"
+           fork="yes"
+           timeout="${junit.timeout}">
+      
+      <jvmarg line="${junit.jvm.options}"/>
+      <sysproperty key="test.dir" value="${test.dir}"/>
+      <sysproperty key="net.sourceforge.cobertura.datafile" file="${reports.dir}/cobertura/cobertura.ser" />
+      <sysproperty key="xb.builder.useUnorderedSequence" value="true"/>
+      <sysproperty key="javax.xml.stream.XMLInputFactory" value="com.sun.xml.internal.stream.XMLInputFactoryImpl"/>
+      <sysproperty key="java.util.logging.manager" value="org.jboss.logmanager.LogManager"/>
+      <sysproperty key="org.jboss.logging.Logger.pluginClass" value="org.jboss.logging.logmanager.LoggerPluginImpl"/>
+      <sysproperty key="log4j.defaultInitOverride" value="true"/>
+
+      <classpath>
+        <fileset dir="${build.dir}/instrumented" includes="*.jar" />
+        <pathelement location="${build.dir}/common/test"/>
+        <fileset dir="${lib.dir}/common" includes="*.jar" />
+        <fileset dir="${lib.dir}/embedded" includes="*.jar" />
+        <fileset dir="${lib.dir}/arquillian" includes="*.jar" />
+        <fileset dir="${lib.dir}/jetty" includes="*.jar" />
+        <fileset dir="${lib.dir}/hornetq" includes="*.jar" />
+        <fileset dir="${lib.dir}/sjc" includes="*.jar" />
+        <fileset dir="${lib.dir}/mail" includes="*.jar" />
+        <fileset dir="${lib.dir}/test" includes="*.jar" />
+        <fileset dir="${lib.dir}/tools" includes="*.jar" />
+        <fileset dir="${lib.dir}/rhq" includes="*.jar" />
+      </classpath>
+      <classpath refid="cobertura.lib.path.id" />
+      
+      <formatter type="xml"/>
+      
+      <batchtest todir="${reports.dir}/cobertura/tests">
+        <fileset dir="${build.dir}/common/test">
+          <include name="**/*TestCase.class"/>
+        </fileset>
+      </batchtest>
+    </junit>
+
+    <junit dir="core/src/test"
+           printsummary="${junit.printsummary}"
+           haltonerror="${junit.haltonerror}"
+           haltonfailure="${junit.haltonfailure}"
+           fork="yes"
+           timeout="${junit.timeout}">
+      
+      <jvmarg line="${junit.jvm.options}"/>
+      <sysproperty key="test.dir" value="${test.dir}"/>
+      <sysproperty key="net.sourceforge.cobertura.datafile" file="${reports.dir}/cobertura/cobertura.ser" />
+      <sysproperty key="xb.builder.useUnorderedSequence" value="true"/>
+      <sysproperty key="javax.xml.stream.XMLInputFactory" value="com.sun.xml.internal.stream.XMLInputFactoryImpl"/>
+      <sysproperty key="java.util.logging.manager" value="org.jboss.logmanager.LogManager"/>
+      <sysproperty key="org.jboss.logging.Logger.pluginClass" value="org.jboss.logging.logmanager.LoggerPluginImpl"/>
+      <sysproperty key="log4j.defaultInitOverride" value="true"/>
+
+      <classpath>
+        <fileset dir="${build.dir}/instrumented" includes="*.jar" />
+        <pathelement location="${build.dir}/core/test"/>
+        <fileset dir="${lib.dir}/common" includes="*.jar" />
+        <fileset dir="${lib.dir}/embedded" includes="*.jar" />
+        <fileset dir="${lib.dir}/arquillian" includes="*.jar" />
+        <fileset dir="${lib.dir}/jetty" includes="*.jar" />
+        <fileset dir="${lib.dir}/hornetq" includes="*.jar" />
+        <fileset dir="${lib.dir}/sjc" includes="*.jar" />
+        <fileset dir="${lib.dir}/mail" includes="*.jar" />
+        <fileset dir="${lib.dir}/test" includes="*.jar" />
+        <fileset dir="${lib.dir}/tools" includes="*.jar" />
+        <fileset dir="${lib.dir}/rhq" includes="*.jar" />
+      </classpath>
+      <classpath refid="cobertura.lib.path.id" />
+      
+      <formatter type="xml"/>
+      
+      <batchtest todir="${reports.dir}/cobertura/tests">
+        <fileset dir="${build.dir}/core/test">
+          <include name="**/*TestCase.class"/>
+        </fileset>
+      </batchtest>
+    </junit>
+
+    <junit dir="deployers/src/test"
+           printsummary="${junit.printsummary}"
+           haltonerror="${junit.haltonerror}"
+           haltonfailure="${junit.haltonfailure}"
+           fork="yes"
+           timeout="${junit.timeout}">
+      
+      <jvmarg line="${junit.jvm.options}"/>
+      <sysproperty key="archives.dir" value="${build.dir}/deployers"/>
+      <sysproperty key="test.dir" value="${test.dir}"/>
+      <sysproperty key="net.sourceforge.cobertura.datafile" file="${reports.dir}/cobertura/cobertura.ser" />
+      <sysproperty key="javax.xml.stream.XMLInputFactory" value="com.sun.xml.internal.stream.XMLInputFactoryImpl"/>
+      <sysproperty key="java.util.logging.manager" value="org.jboss.logmanager.LogManager"/>
+      <sysproperty key="org.jboss.logging.Logger.pluginClass" value="org.jboss.logging.logmanager.LoggerPluginImpl"/>
+      <sysproperty key="log4j.defaultInitOverride" value="true"/>
+
+      <classpath>
+        <fileset dir="${build.dir}/instrumented" includes="*.jar" />
+        <pathelement location="${build.dir}/deployers/test"/>
+        <fileset dir="${lib.dir}/common" includes="*.jar" />
+        <fileset dir="${lib.dir}/embedded" includes="*.jar" />
+        <fileset dir="${lib.dir}/arquillian" includes="*.jar" />
+        <fileset dir="${lib.dir}/jetty" includes="*.jar" />
+        <fileset dir="${lib.dir}/hornetq" includes="*.jar" />
+        <fileset dir="${lib.dir}/sjc" includes="*.jar" />
+        <fileset dir="${lib.dir}/mail" includes="*.jar" />
+        <fileset dir="${lib.dir}/test" includes="*.jar" />
+        <fileset dir="${lib.dir}/tools" includes="*.jar" />
+        <fileset dir="${lib.dir}/rhq" includes="*.jar" />
+      </classpath>
+      <classpath refid="cobertura.lib.path.id" />
+      
+      <formatter type="xml"/>
+      
+      <batchtest todir="${reports.dir}/cobertura/tests">
+        <fileset dir="${build.dir}/deployers/test">
+          <include name="**/*TestCase.class"/>
+        </fileset>
+      </batchtest>
+    </junit>
+
+    <junit dir="embedded/src/test"
+           printsummary="${junit.printsummary}"
+           haltonerror="${junit.haltonerror}"
+           haltonfailure="${junit.haltonfailure}"
+           fork="yes"
+           timeout="${junit.timeout}">
+      
+      <jvmarg line="${junit.jvm.options}"/>
+      <sysproperty key="test.dir" value="${test.dir}"/>
+      <sysproperty key="net.sourceforge.cobertura.datafile" file="${reports.dir}/cobertura/cobertura.ser" />
+      <sysproperty key="xb.builder.useUnorderedSequence" value="true"/>
+      <sysproperty key="javax.xml.stream.XMLInputFactory" value="com.sun.xml.internal.stream.XMLInputFactoryImpl"/>
+      <sysproperty key="java.util.logging.manager" value="org.jboss.logmanager.LogManager"/>
+      <sysproperty key="org.jboss.logging.Logger.pluginClass" value="org.jboss.logging.logmanager.LoggerPluginImpl"/>
+      <sysproperty key="log4j.defaultInitOverride" value="true"/>
+
+      <classpath>
+        <fileset dir="${build.dir}/instrumented" includes="*.jar" />
+        <pathelement location="${build.dir}/embedded/test"/>
+        <fileset dir="${lib.dir}/common" includes="*.jar" />
+        <fileset dir="${lib.dir}/embedded" includes="*.jar" />
+        <fileset dir="${lib.dir}/arquillian" includes="*.jar" />
+        <fileset dir="${lib.dir}/jetty" includes="*.jar" />
+        <fileset dir="${lib.dir}/hornetq" includes="*.jar" />
+        <fileset dir="${lib.dir}/sjc" includes="*.jar" />
+        <fileset dir="${lib.dir}/mail" includes="*.jar" />
+        <fileset dir="${lib.dir}/test" includes="*.jar" />
+        <fileset dir="${lib.dir}/tools" includes="*.jar" />
+        <fileset dir="${lib.dir}/rhq" includes="*.jar" />
+      </classpath>
+      <classpath refid="cobertura.lib.path.id" />
+      
+      <formatter type="xml"/>
+      
+      <batchtest todir="${reports.dir}/cobertura/tests">
+        <fileset dir="${build.dir}/embedded/test">
+          <include name="**/*TestCase.class"/>
+        </fileset>
+      </batchtest>
+    </junit>
+
+    <junit dir="validator/src/test"
+           printsummary="${junit.printsummary}"
+           haltonerror="${junit.haltonerror}"
+           haltonfailure="${junit.haltonfailure}"
+           fork="yes"
+           timeout="${junit.timeout}">
+      
+      <jvmarg line="${junit.jvm.options}"/>
+      <sysproperty key="test.dir" value="${test.dir}"/>
+      <sysproperty key="net.sourceforge.cobertura.datafile" file="${reports.dir}/cobertura/cobertura.ser" />
+      <sysproperty key="xb.builder.useUnorderedSequence" value="true"/>
+      <sysproperty key="javax.xml.stream.XMLInputFactory" value="com.sun.xml.internal.stream.XMLInputFactoryImpl"/>
+      <sysproperty key="java.util.logging.manager" value="org.jboss.logmanager.LogManager"/>
+      <sysproperty key="org.jboss.logging.Logger.pluginClass" value="org.jboss.logging.logmanager.LoggerPluginImpl"/>
+      <sysproperty key="log4j.defaultInitOverride" value="true"/>
+
+      <classpath>
+        <fileset dir="${build.dir}/instrumented" includes="*.jar" />
+        <pathelement location="${build.dir}/validator/test"/>
+        <fileset dir="${lib.dir}/common" includes="*.jar" />
+        <fileset dir="${lib.dir}/embedded" includes="*.jar" />
+        <fileset dir="${lib.dir}/arquillian" includes="*.jar" />
+        <fileset dir="${lib.dir}/jetty" includes="*.jar" />
+        <fileset dir="${lib.dir}/hornetq" includes="*.jar" />
+        <fileset dir="${lib.dir}/sjc" includes="*.jar" />
+        <fileset dir="${lib.dir}/mail" includes="*.jar" />
+        <fileset dir="${lib.dir}/test" includes="*.jar" />
+        <fileset dir="${lib.dir}/tools" includes="*.jar" />
+        <fileset dir="${lib.dir}/rhq" includes="*.jar" />
+      </classpath>
+      <classpath refid="cobertura.lib.path.id" />
+      
+      <formatter type="xml"/>
+      
+      <batchtest todir="${reports.dir}/cobertura/tests">
+        <fileset dir="${build.dir}/validator/test">
+          <include name="**/*TestCase.class"/>
+        </fileset>
+      </batchtest>
+    </junit>
+
+    <junit dir="codegenerator/src/test"
+           printsummary="${junit.printsummary}"
+           haltonerror="${junit.haltonerror}"
+           haltonfailure="${junit.haltonfailure}"
+           fork="yes"
+           timeout="${junit.timeout}">
+      
+      <jvmarg line="${junit.jvm.options}"/>
+      <sysproperty key="test.dir" value="${test.dir}"/>
+      <sysproperty key="net.sourceforge.cobertura.datafile" file="${reports.dir}/cobertura/cobertura.ser" />
+      <sysproperty key="xb.builder.useUnorderedSequence" value="true"/>
+      <sysproperty key="javax.xml.stream.XMLInputFactory" value="com.sun.xml.internal.stream.XMLInputFactoryImpl"/>
+      <sysproperty key="java.util.logging.manager" value="org.jboss.logmanager.LogManager"/>
+      <sysproperty key="org.jboss.logging.Logger.pluginClass" value="org.jboss.logging.logmanager.LoggerPluginImpl"/>
+      <sysproperty key="log4j.defaultInitOverride" value="true"/>
+
+      <classpath>
+        <fileset dir="${build.dir}/instrumented" includes="*.jar" />
+        <pathelement location="${build.dir}/codegenerator/test"/>
+        <fileset dir="${lib.dir}/common" includes="*.jar" />
+        <fileset dir="${lib.dir}/embedded" includes="*.jar" />
+        <fileset dir="${lib.dir}/arquillian" includes="*.jar" />
+        <fileset dir="${lib.dir}/jetty" includes="*.jar" />
+        <fileset dir="${lib.dir}/hornetq" includes="*.jar" />
+        <fileset dir="${lib.dir}/sjc" includes="*.jar" />
+        <fileset dir="${lib.dir}/mail" includes="*.jar" />
+        <fileset dir="${lib.dir}/test" includes="*.jar" />
+        <fileset dir="${lib.dir}/tools" includes="*.jar" />
+        <fileset dir="${lib.dir}/rhq" includes="*.jar" />
+      </classpath>
+      <classpath refid="cobertura.lib.path.id" />
+      
+      <formatter type="xml"/>
+      
+      <batchtest todir="${reports.dir}/cobertura/tests">
+        <fileset dir="${build.dir}/codegenerator/test">
+          <include name="**/*TestCase.class"/>
+        </fileset>
+      </batchtest>
+    </junit>
+
+    <junit dir="adapters/src/test"
+           printsummary="${junit.printsummary}"
+           haltonerror="${junit.haltonerror}"
+           haltonfailure="${junit.haltonfailure}"
+           fork="yes"
+           timeout="${junit.timeout}">
+      
+      <jvmarg line="${junit.jvm.options}"/>
+      <sysproperty key="test.dir" value="${test.dir}"/>
+      <sysproperty key="archives.dir" value="${build.dir}/adapters"/>
+      <sysproperty key="net.sourceforge.cobertura.datafile" file="${reports.dir}/cobertura/cobertura.ser" />
+      <sysproperty key="xb.builder.useUnorderedSequence" value="true"/>
+      <sysproperty key="javax.xml.stream.XMLInputFactory" value="com.sun.xml.internal.stream.XMLInputFactoryImpl"/>
+      <sysproperty key="java.util.logging.manager" value="org.jboss.logmanager.LogManager"/>
+      <sysproperty key="org.jboss.logging.Logger.pluginClass" value="org.jboss.logging.logmanager.LoggerPluginImpl"/>
+      <sysproperty key="log4j.defaultInitOverride" value="true"/>
+
+      <classpath>
+        <fileset dir="${build.dir}/instrumented" includes="*.jar" />
+        <pathelement location="${build.dir}/adapters/"/>
+        <pathelement location="${build.dir}/adapters/test"/>
+        <fileset dir="${lib.dir}/common" includes="*.jar" />
+        <fileset dir="${lib.dir}/embedded" includes="*.jar" />
+        <fileset dir="${lib.dir}/arquillian" includes="*.jar" />
+        <fileset dir="${lib.dir}/jetty" includes="*.jar" />
+        <fileset dir="${lib.dir}/hornetq" includes="*.jar" />
+        <fileset dir="${lib.dir}/sjc" includes="*.jar" />
+        <fileset dir="${lib.dir}/mail" includes="*.jar" />
+        <fileset dir="${lib.dir}/test" includes="*.jar" />
+        <fileset dir="${lib.dir}/tools" includes="*.jar" />
+        <fileset dir="${lib.dir}/rhq" includes="*.jar" />
+      </classpath>
+      <classpath refid="cobertura.lib.path.id" />
+      
+      <formatter type="xml"/>
+      
+      <batchtest todir="${reports.dir}/cobertura/tests">
+        <fileset dir="${build.dir}/adapters/test">
+          <include name="**/*TestCase.class"/>
+        </fileset>
+      </batchtest>
+    </junit>
+
+    <junit dir="rhq/src/test"
+           printsummary="${junit.printsummary}"
+           haltonerror="${junit.haltonerror}"
+           haltonfailure="${junit.haltonfailure}"
+           fork="yes"
+           timeout="${junit.timeout}">
+      
+      <jvmarg line="${junit.jvm.options}"/>
+      <sysproperty key="test.dir" value="${test.dir}"/>
+      <sysproperty key="archives.dir" value="${build.dir}/rhq"/>
+      <sysproperty key="net.sourceforge.cobertura.datafile" file="${reports.dir}/cobertura/cobertura.ser" />
+      <sysproperty key="xb.builder.useUnorderedSequence" value="true"/>
+      <sysproperty key="javax.xml.stream.XMLInputFactory" value="com.sun.xml.internal.stream.XMLInputFactoryImpl"/>
+      <sysproperty key="java.util.logging.manager" value="org.jboss.logmanager.LogManager"/>
+      <sysproperty key="org.jboss.logging.Logger.pluginClass" value="org.jboss.logging.logmanager.LoggerPluginImpl"/>
+      <sysproperty key="log4j.defaultInitOverride" value="true"/>
+
+      <classpath>
+        <fileset dir="${build.dir}/instrumented" includes="*.jar" />
+        <pathelement location="${build.dir}/rhq/"/>
+        <pathelement location="${build.dir}/rhq/test"/>
+        <fileset dir="${lib.dir}/common" includes="*.jar" />
+        <fileset dir="${lib.dir}/embedded" includes="*.jar" />
+        <fileset dir="${lib.dir}/arquillian" includes="*.jar" />
+        <fileset dir="${lib.dir}/jetty" includes="*.jar" />
+        <fileset dir="${lib.dir}/hornetq" includes="*.jar" />
+        <fileset dir="${lib.dir}/sjc" includes="*.jar" />
+        <fileset dir="${lib.dir}/mail" includes="*.jar" />
+        <fileset dir="${lib.dir}/test" includes="*.jar" />
+        <fileset dir="${lib.dir}/tools" includes="*.jar" />
+        <fileset dir="${lib.dir}/rhq" includes="*.jar" />
+      </classpath>
+      <classpath refid="cobertura.lib.path.id" />
+      
+      <formatter type="xml"/>
+      
+      <batchtest todir="${reports.dir}/cobertura/tests">
+        <fileset dir="${build.dir}/rhq/test">
+          <include name="**/*TestCase.class"/>
+        </fileset>
+      </batchtest>
+    </junit>
+
+    <cobertura-report format="html" 
+                      destdir="${reports.dir}/cobertura/html" 
+                      datafile="${reports.dir}/cobertura/cobertura.ser">
+      <fileset dir="api/src/main/java">
+        <include name="**/*.java" />
+      </fileset>
+      <fileset dir="adapters/src/main/java">
+        <include name="**/*.java" />
+      </fileset>
+      <fileset dir="codegenerator/src/main/java">
+        <include name="**/*.java" />
+      </fileset>
+      <fileset dir="common/src/main/java">
+        <include name="**/*.java" />
+      </fileset>
+      <fileset dir="core/src/main/java">
+        <include name="**/*.java" />
+      </fileset>
+      <fileset dir="deployers/src/main/java">
+        <include name="**/*.java" />
+      </fileset>
+      <fileset dir="embedded/src/main/java">
+        <include name="**/*.java" />
+      </fileset>
+      <fileset dir="sjc/src/main/java">
+        <include name="**/*.java" />
+      </fileset>
+      <fileset dir="validator/src/main/java">
+        <include name="**/*.java" />
+      </fileset>
+      <fileset dir="web/src/main/java">
+        <include name="**/*.java" />
+      </fileset>
+      <fileset dir="rhq/src/main/java">
+        <include name="**/*.java" />
+      </fileset>
+    </cobertura-report>
+
+    <cobertura-report format="xml" 
+                      destdir="${reports.dir}/cobertura/xml" 
+                      datafile="${reports.dir}/cobertura/cobertura.ser">
+      <fileset dir="api/src/main/java">
+        <include name="**/*.java" />
+      </fileset>
+      <fileset dir="adapters/src/main/java">
+        <include name="**/*.java" />
+      </fileset>
+      <fileset dir="codegenerator/src/main/java">
+        <include name="**/*.java" />
+      </fileset>
+      <fileset dir="common/src/main/java">
+        <include name="**/*.java" />
+      </fileset>
+      <fileset dir="core/src/main/java">
+        <include name="**/*.java" />
+      </fileset>
+      <fileset dir="deployers/src/main/java">
+        <include name="**/*.java" />
+      </fileset>
+      <fileset dir="embedded/src/main/java">
+        <include name="**/*.java" />
+      </fileset>
+      <fileset dir="sjc/src/main/java">
+        <include name="**/*.java" />
+      </fileset>
+      <fileset dir="validator/src/main/java">
+        <include name="**/*.java" />
+      </fileset>
+      <fileset dir="web/src/main/java">
+        <include name="**/*.java" />
+      </fileset>
+      <fileset dir="rhq/src/main/java">
+        <include name="**/*.java" />
+      </fileset>
+    </cobertura-report>
+  </target>
+
+  <!-- ================================= 
+       Target: tattletale
+       ================================= -->
+  <target name="tattletale" depends="sjc">
+    <taskdef name="report"
+             classname="org.jboss.tattletale.ant.ReportTask"
+             classpathref="tattletale.lib.path.id"/>
+
+    <mkdir dir="${reports.dir}/tattletale"/>
+
+    <report source="${target.dir}/sjc"
+            destination="${reports.dir}/tattletale"
+            configuration="${tools.dir}/tattletale/configuration.properties"
+            filter="${tools.dir}/tattletale/filter.properties"
+            profiles="java6"/>
+  </target>
+
+  <!-- ================================= 
+       Target: clean              
+       ================================= -->
+  <target name="clean">
+    <delete>
+      <fileset dir="${basedir}" defaultexcludes="no">
+        <include name="**/*~"/>
+        <include name="**/*.bak"/>
+      </fileset>
+    </delete>
+    <delete>
+      <fileset dir="${lib.dir}" includes="**/*.jar"/>
+    </delete>
+    <delete dir="${build.dir}"/>
+    <delete dir="${target.dir}"/>
+    <delete dir="${reports.dir}"/>
+    <delete file="${name}-${major}.${minor}.${patch}.${type}.zip" />
+    <delete file="${name}-${major}.${minor}.${patch}.${type}.tar.gz" />
+
+    <ant antfile="tools/docant/build.xml" target="clean" inheritrefs="false" inheritAll="false"/>
+    <delete dir="${doc.dir}/target"/>
+  </target>
+  
+  <!-- ================================= 
+       Target: clean-cache              
+       ================================= -->
+  <target name="clean-cache">
+    <ivy:cleancache />
+  </target>
+
+  <!-- ================================= 
+       Target: nexus
+       ================================= -->
+  <macrodef name="deploy-file">
+    <attribute name="file"/>
+    <attribute name="artifact"/>
+    <attribute name="extension"/>
+    <sequential>
+      <concat destfile="${target.dir}/@{file}" append="true" force="true" eol="unix">
+mvn deploy:deploy-file -Dfile=$PWD/@{artifact}.@{extension} -DpomFile=@{artifact}.xml $REPOSITORY
+mvn deploy:deploy-file -Dfile=$PWD/@{artifact}-sources.jar -DgeneratePom=false -DgroupId=org.jboss.${name} -DartifactId=@{artifact} -Dversion=$VERSION -Dclassifier=sources -Dpackaging=jar $REPOSITORY
+mvn deploy:deploy-file -Dfile=$PWD/@{artifact}-javadoc.jar -DgeneratePom=false -DgroupId=org.jboss.${name} -DartifactId=@{artifact} -Dversion=$VERSION -Dclassifier=javadoc -Dpackaging=jar $REPOSITORY
+</concat>
+    </sequential>
+  </macrodef>
+
+  <macrodef name="snapshot-deploy-file">
+    <attribute name="file"/>
+    <attribute name="artifact"/>
+    <attribute name="extension"/>
+    <sequential>
+      <concat destfile="${target.dir}/@{file}" append="true" force="true" eol="unix">
+mvn deploy:deploy-file -Dfile=$PWD/@{artifact}.@{extension} -DpomFile=@{artifact}.xml -DuniqueVersion=false $REPOSITORY
+mvn deploy:deploy-file -Dfile=$PWD/@{artifact}-sources.jar -DgeneratePom=false -DgroupId=org.jboss.${name} -DartifactId=@{artifact} -Dversion=$VERSION -Dclassifier=sources -Dpackaging=jar -DuniqueVersion=false $REPOSITORY
+mvn deploy:deploy-file -Dfile=$PWD/@{artifact}-javadoc.jar -DgeneratePom=false -DgroupId=org.jboss.${name} -DartifactId=@{artifact} -Dversion=$VERSION -Dclassifier=javadoc -Dpackaging=jar -DuniqueVersion=false $REPOSITORY
+</concat>
+    </sequential>
+  </macrodef>
+
+  <macrodef name="snapshot-install-file">
+    <attribute name="file"/>
+    <attribute name="artifact"/>
+    <attribute name="extension"/>
+    <sequential>
+      <concat destfile="${target.dir}/@{file}" append="true" force="true" eol="unix">
+mvn install:install-file -Dfile=$PWD/@{artifact}.@{extension} -DpomFile=@{artifact}.xml -DuniqueVersion=false $REPOSITORY
+mvn install:install-file -Dfile=$PWD/@{artifact}-sources.jar -DgeneratePom=false -DgroupId=org.jboss.${name} -DartifactId=@{artifact} -Dversion=$VERSION -Dclassifier=sources -Dpackaging=jar -DuniqueVersion=false $REPOSITORY
+mvn install:install-file -Dfile=$PWD/@{artifact}-javadoc.jar -DgeneratePom=false -DgroupId=org.jboss.${name} -DartifactId=@{artifact} -Dversion=$VERSION -Dclassifier=javadoc -Dpackaging=jar -DuniqueVersion=false $REPOSITORY
+</concat>
+    </sequential>
+  </macrodef>
+
+  <target name="nexus" depends="clean,artifacts">
+    <fail message="IronJacamar doesn't support JDK 7+ artifacts" if="HAVE_JDK_1.7"/>
+  
+    <ivy:retrieve pattern="${lib.dir}/[conf]/[artifact].[ext]" 
+                  conf="${name}-codegenerator,${name}-common-api,${name}-common-impl,${name}-common-impl-papaki,${name}-common-spi,${name}-core-api,${name}-core-impl,${name}-deployers-common,${name}-deployers-fungal,${name}-embedded,${name}-embedded-arquillian,${name}-spec-api,${name}-validator,${name}-validator-ant,${name}-validator-cli,jdbc-local,jdbc-xa,mail"
+                  sync="true"/>
+
+    <delete file="${target.dir}/release.sh"/>
+    <delete file="${target.dir}/snapshot.sh"/>
+    <delete file="${target.dir}/install-snapshot.sh"/>
+
+    <concat destfile="${target.dir}/release.sh" append="true" force="true" eol="unix">#!/bin/sh
+PWD=`pwd`
+VERSION=${major}.${minor}.${patch}.${type}
+REPOSITORY='-Durl=https://repository.jboss.org/nexus/service/local/staging/deploy/maven2/ -DrepositoryId=jboss-releases'
+</concat>
+
+    <concat destfile="${target.dir}/snapshot.sh" append="true" force="true" eol="unix">#!/bin/sh
+PWD=`pwd`
+VERSION=${major}.${minor}.${patch}-SNAPSHOT
+REPOSITORY='-Durl=https://repository.jboss.org/nexus/content/repositories/snapshots/ -DrepositoryId=jboss-snapshots'
+</concat>
+
+    <concat destfile="${target.dir}/install-snapshot.sh" append="true" force="true" eol="unix">#!/bin/sh
+PWD=`pwd`
+VERSION=${major}.${minor}.${patch}-SNAPSHOT
+REPOSITORY='-Durl=https://repository.jboss.org/nexus/content/repositories/snapshots/ -DrepositoryId=jboss-snapshots'
+</concat>
+
+
+    <!-- ironjacamar-codegenerator -->
+    <delete file="${target.dir}/${name}-codegenerator.xml"/>
+    <ivy:makepom artifactName="${name}-codegenerator" 
+                 conf="${name}-codegenerator"
+                 ivyfile="${basedir}/ivy.xml" 
+                 pomfile="${target.dir}/${name}-codegenerator.xml"
+                 headerFile="${tools.dir}/mvn/HEADER"
+                 templatefile="${tools.dir}/mvn/pom.template"
+                 printIvyInfo="false">
+      <mapping conf="${name}-codegenerator" scope="runtime"/>
+    </ivy:makepom>
+
+    <deploy-file file="release.sh" artifact="${name}-codegenerator" extension="jar"/>
+    <snapshot-deploy-file file="snapshot.sh" artifact="${name}-codegenerator" extension="jar"/>
+    <snapshot-install-file file="install-snapshot.sh" artifact="${name}-codegenerator" extension="jar"/>
+
+    <!-- ironjacamar-common-api -->
+    <delete file="${target.dir}/${name}-common-api.xml"/>
+    <ivy:makepom artifactName="${name}-common-api" 
+                 conf="${name}-common-api"
+                 ivyfile="${basedir}/ivy.xml" 
+                 pomfile="${target.dir}/${name}-common-api.xml"
+                 headerFile="${tools.dir}/mvn/HEADER"
+                 templatefile="${tools.dir}/mvn/pom.template"
+                 printIvyInfo="false">
+      <mapping conf="${name}-common-api" scope="runtime"/>
+    </ivy:makepom>
+
+    <deploy-file file="release.sh" artifact="${name}-common-api" extension="jar"/>
+    <snapshot-deploy-file file="snapshot.sh" artifact="${name}-common-api" extension="jar"/>
+  	<snapshot-install-file file="install-snapshot.sh" artifact="${name}-common-api" extension="jar"/>
+
+    <!-- ironjacamar-common-impl -->
+    <delete file="${target.dir}/${name}-common-impl.xml"/>
+    <ivy:makepom artifactName="${name}-common-impl" 
+                 conf="${name}-common-impl"
+                 ivyfile="${basedir}/ivy.xml" 
+                 pomfile="${target.dir}/${name}-common-impl.xml"
+                 headerFile="${tools.dir}/mvn/HEADER"
+                 templatefile="${tools.dir}/mvn/pom.template"
+                 printIvyInfo="false">
+      <mapping conf="${name}-common-impl" scope="runtime"/>
+      <dependency artifact="${name}-common-api" scope="runtime"/>
+      <dependency artifact="${name}-common-spi" scope="runtime"/>
+      <dependency artifact="${name}-spec-api" scope="runtime"/>
+    </ivy:makepom>
+
+    <deploy-file file="release.sh" artifact="${name}-common-impl" extension="jar"/>
+    <snapshot-deploy-file file="snapshot.sh" artifact="${name}-common-impl" extension="jar"/>
+  	<snapshot-install-file file="install-snapshot.sh" artifact="${name}-common-impl" extension="jar"/>
+
+    <!-- ironjacamar-common-impl-papaki -->
+    <delete file="${target.dir}/${name}-common-impl-papaki.xml"/>
+    <ivy:makepom artifactName="${name}-common-impl-papaki" 
+                 conf="${name}-common-impl-papaki"
+                 ivyfile="${basedir}/ivy.xml" 
+                 pomfile="${target.dir}/${name}-common-impl-papaki.xml"
+                 headerFile="${tools.dir}/mvn/HEADER"
+                 templatefile="${tools.dir}/mvn/pom.template"
+                 printIvyInfo="false">
+      <mapping conf="${name}-common-impl-papaki" scope="runtime"/>
+      <dependency artifact="${name}-common-spi" scope="runtime"/>
+    </ivy:makepom>
+
+    <deploy-file file="release.sh" artifact="${name}-common-impl-papaki" extension="jar"/>
+    <snapshot-deploy-file file="snapshot.sh" artifact="${name}-common-impl-papaki" extension="jar"/>
+  	<snapshot-install-file file="install-snapshot.sh" artifact="${name}-common-impl-papaki" extension="jar"/>
+
+    <!-- ironjacamar-common-spi -->
+    <delete file="${target.dir}/${name}-common-spi.xml"/>
+    <ivy:makepom artifactName="${name}-common-spi" 
+                 conf="${name}-common-spi"
+                 ivyfile="${basedir}/ivy.xml" 
+                 pomfile="${target.dir}/${name}-common-spi.xml"
+                 headerFile="${tools.dir}/mvn/HEADER"
+                 templatefile="${tools.dir}/mvn/pom.template"
+                 printIvyInfo="false">
+      <mapping conf="${name}-common-spi" scope="runtime"/>
+    </ivy:makepom>
+
+    <deploy-file file="release.sh" artifact="${name}-common-spi" extension="jar"/>
+    <snapshot-deploy-file file="snapshot.sh" artifact="${name}-common-spi" extension="jar"/>
+    <snapshot-install-file file="install-snapshot.sh" artifact="${name}-common-spi" extension="jar"/>
+
+    <!-- ironjacamar-core-api -->
+    <delete file="${target.dir}/${name}-core-api.xml"/>
+    <ivy:makepom artifactName="${name}-core-api" 
+                 conf="${name}-core-api"
+                 ivyfile="${basedir}/ivy.xml" 
+                 pomfile="${target.dir}/${name}-core-api.xml"
+                 headerFile="${tools.dir}/mvn/HEADER"
+                 templatefile="${tools.dir}/mvn/pom.template"
+                 printIvyInfo="false">
+      <mapping conf="${name}-core-api" scope="runtime"/>
+      <dependency artifact="${name}-spec-api" scope="runtime"/>
+    </ivy:makepom>
+
+    <deploy-file file="release.sh" artifact="${name}-core-api" extension="jar"/>
+    <snapshot-deploy-file file="snapshot.sh" artifact="${name}-core-api" extension="jar"/>
+    <snapshot-install-file file="install-snapshot.sh" artifact="${name}-core-api" extension="jar"/>
+
+    <!-- ironjacamar-core-impl -->
+    <delete file="${target.dir}/${name}-core-impl.xml"/>
+    <ivy:makepom artifactName="${name}-core-impl" 
+                 conf="${name}-core-impl"
+                 ivyfile="${basedir}/ivy.xml" 
+                 pomfile="${target.dir}/${name}-core-impl.xml"
+                 headerFile="${tools.dir}/mvn/HEADER"
+                 templatefile="${tools.dir}/mvn/pom.template"
+                 printIvyInfo="false">
+      <mapping conf="${name}-core-impl" scope="runtime"/>
+      <dependency artifact="${name}-common-impl" scope="runtime"/>
+      <dependency artifact="${name}-core-api" scope="runtime"/>
+      <dependency artifact="${name}-spec-api" scope="runtime"/>
+    </ivy:makepom>
+
+    <deploy-file file="release.sh" artifact="${name}-core-impl" extension="jar"/>
+    <snapshot-deploy-file file="snapshot.sh" artifact="${name}-core-impl" extension="jar"/>
+    <snapshot-install-file file="install-snapshot.sh" artifact="${name}-core-impl" extension="jar"/>
+
+    <!-- ironjacamar-depchain -->
+    <delete file="${target.dir}/${name}-depchain.xml"/>
+    <ivy:makepom artifactName="${name}-depchain" 
+                 conf="${name}-depchain"
+                 ivyfile="${basedir}/ivy.xml" 
+                 pomfile="${target.dir}/${name}-depchain.xml"
+                 headerFile="${tools.dir}/mvn/HEADER"
+                 templatefile="${tools.dir}/mvn/pom.template"
+                 printIvyInfo="false">
+      <mapping conf="${name}-depchain" scope="runtime"/>
+    </ivy:makepom>
+
+    <concat destfile="${target.dir}/release.sh" append="true" force="true" eol="unix">
+mvn deploy:deploy-file -Dfile=$PWD/${name}-depchain.xml -DpomFile=${name}-depchain.xml $REPOSITORY
+</concat>
+    <concat destfile="${target.dir}/snapshot.sh" append="true" force="true" eol="unix">
+mvn deploy:deploy-file -Dfile=$PWD/${name}-depchain.xml -DpomFile=${name}-depchain.xml -DuniqueVersion=false $REPOSITORY
+</concat>
+<concat destfile="${target.dir}/install-snapshot.sh" append="true" force="true" eol="unix">
+mvn install:install-file -Dfile=$PWD/${name}-depchain.xml -DpomFile=${name}-depchain.xml -DuniqueVersion=false $REPOSITORY
+</concat>
+
+    <!-- ironjacamar-deployers-common -->
+    <delete file="${target.dir}/${name}-deployers-common.xml"/>
+    <ivy:makepom artifactName="${name}-deployers-common" 
+                 conf="${name}-deployers-common"
+                 ivyfile="${basedir}/ivy.xml" 
+                 pomfile="${target.dir}/${name}-deployers-common.xml"
+                 headerFile="${tools.dir}/mvn/HEADER"
+                 templatefile="${tools.dir}/mvn/pom.template"
+                 printIvyInfo="false">
+      <mapping conf="${name}-deployers-common" scope="runtime"/>
+    </ivy:makepom>
+
+    <deploy-file file="release.sh" artifact="${name}-deployers-common" extension="jar"/>
+    <snapshot-deploy-file file="snapshot.sh" artifact="${name}-deployers-common" extension="jar"/>
+    <snapshot-install-file file="install-snapshot.sh" artifact="${name}-deployers-common" extension="jar"/>
+
+    <!-- ironjacamar-deployers-fungal -->
+    <delete file="${target.dir}/${name}-deployers-fungal.xml"/>
+    <ivy:makepom artifactName="${name}-deployers-fungal" 
+                 conf="${name}-deployers-fungal"
+                 ivyfile="${basedir}/ivy.xml" 
+                 pomfile="${target.dir}/${name}-deployers-fungal.xml"
+                 headerFile="${tools.dir}/mvn/HEADER"
+                 templatefile="${tools.dir}/mvn/pom.template"
+                 printIvyInfo="false">
+      <mapping conf="${name}-deployers-fungal" scope="runtime"/>
+      <dependency artifact="${name}-common-impl" scope="runtime"/>
+      <dependency artifact="${name}-core-api" scope="runtime"/>
+      <dependency artifact="${name}-core-impl" scope="runtime"/>
+      <dependency artifact="${name}-spec-api" scope="runtime"/>
+      <dependency artifact="${name}-validator" scope="runtime"/>
+    </ivy:makepom>
+
+    <deploy-file file="release.sh" artifact="${name}-deployers-fungal" extension="jar"/>
+    <snapshot-deploy-file file="snapshot.sh" artifact="${name}-deployers-fungal" extension="jar"/>
+    <snapshot-install-file file="install-snapshot.sh" artifact="${name}-deployers-fungal" extension="jar"/>
+
+    <!-- ironjacamar-embedded -->
+    <delete file="${target.dir}/${name}-embedded.xml"/>
+    <ivy:makepom artifactName="${name}-embedded" 
+                 conf="${name}-embedded"
+                 ivyfile="${basedir}/ivy.xml" 
+                 pomfile="${target.dir}/${name}-embedded.xml"
+                 headerFile="${tools.dir}/mvn/HEADER"
+                 templatefile="${tools.dir}/mvn/pom.template"
+                 printIvyInfo="false">
+      <mapping conf="${name}-embedded" scope="runtime"/>
+    </ivy:makepom>
+
+    <deploy-file file="release.sh" artifact="${name}-embedded" extension="jar"/>
+    <snapshot-deploy-file file="snapshot.sh" artifact="${name}-embedded" extension="jar"/>
+    <snapshot-install-file file="install-snapshot.sh" artifact="${name}-embedded" extension="jar"/>
+
+    <!-- ironjacamar-embedded-arquillian -->
+    <delete file="${target.dir}/${name}-embedded-arquillian.xml"/>
+    <ivy:makepom artifactName="${name}-embedded-arquillian" 
+                 conf="${name}-embedded-arquillian"
+                 ivyfile="${basedir}/ivy.xml" 
+                 pomfile="${target.dir}/${name}-embedded-arquillian.xml"
+                 headerFile="${tools.dir}/mvn/HEADER"
+                 templatefile="${tools.dir}/mvn/pom.template"
+                 printIvyInfo="false">
+      <mapping conf="${name}-embedded-arquillian" scope="runtime"/>
+      <dependency artifact="${name}-embedded" scope="runtime"/>
+    </ivy:makepom>
+
+    <deploy-file file="release.sh" artifact="${name}-embedded-arquillian" extension="jar"/>
+    <snapshot-deploy-file file="snapshot.sh" artifact="${name}-embedded-arquillian" extension="jar"/>
+    <snapshot-install-file file="install-snapshot.sh" artifact="${name}-embedded-arquillian" extension="jar"/>
+
+    <!-- ironjacamar-spec-api -->
+    <delete file="${target.dir}/${name}-spec-api.xml"/>
+    <ivy:makepom artifactName="${name}-spec-api" 
+                 conf="${name}-spec-api"
+                 ivyfile="${basedir}/ivy.xml" 
+                 pomfile="${target.dir}/${name}-spec-api.xml"
+                 headerFile="${tools.dir}/mvn/HEADER"
+                 templatefile="${tools.dir}/mvn/pom.template"
+                 printIvyInfo="false">
+      <mapping conf="${name}-spec-api" scope="runtime"/>
+    </ivy:makepom>
+
+    <deploy-file file="release.sh" artifact="${name}-spec-api" extension="jar"/>
+    <snapshot-deploy-file file="snapshot.sh" artifact="${name}-spec-api" extension="jar"/>
+    <snapshot-install-file file="install-snapshot.sh" artifact="${name}-spec-api" extension="jar"/>
+
+    <!-- ironjacamar-validator -->
+    <delete file="${target.dir}/${name}-validator.xml"/>
+    <ivy:makepom artifactName="${name}-validator" 
+                 conf="${name}-validator"
+                 ivyfile="${basedir}/ivy.xml" 
+                 pomfile="${target.dir}/${name}-validator.xml"
+                 headerFile="${tools.dir}/mvn/HEADER"
+                 templatefile="${tools.dir}/mvn/pom.template"
+                 printIvyInfo="false">
+      <mapping conf="${name}-validator" scope="runtime"/>
+      <dependency artifact="${name}-common-api" scope="runtime"/>
+      <dependency artifact="${name}-common-impl" scope="runtime"/>
+      <dependency artifact="${name}-common-spi" scope="runtime"/>
+      <dependency artifact="${name}-spec-api" scope="runtime"/>
+    </ivy:makepom>
+
+    <deploy-file file="release.sh" artifact="${name}-validator" extension="jar"/>
+    <snapshot-deploy-file file="snapshot.sh" artifact="${name}-validator" extension="jar"/>
+    <snapshot-install-file file="install-snapshot.sh" artifact="${name}-validator" extension="jar"/>
+
+    <!-- ironjacamar-validator-ant -->
+    <delete file="${target.dir}/${name}-validator-ant.xml"/>
+    <ivy:makepom artifactName="${name}-validator-ant" 
+                 conf="${name}-validator-ant"
+                 ivyfile="${basedir}/ivy.xml" 
+                 pomfile="${target.dir}/${name}-validator-ant.xml"
+                 headerFile="${tools.dir}/mvn/HEADER"
+                 templatefile="${tools.dir}/mvn/pom.template"
+                 printIvyInfo="false">
+      <mapping conf="${name}-validator-ant" scope="runtime"/>
+      <dependency artifact="${name}-validator" scope="runtime"/>
+    </ivy:makepom>
+
+    <deploy-file file="release.sh" artifact="${name}-validator-ant" extension="jar"/>
+    <snapshot-deploy-file file="snapshot.sh" artifact="${name}-validator-ant" extension="jar"/>
+    <snapshot-install-file file="install-snapshot.sh" artifact="${name}-validator" extension="jar"/>
+
+    <!-- ironjacamar-validator-cli -->
+    <delete file="${target.dir}/${name}-validator-cli.xml"/>
+    <ivy:makepom artifactName="${name}-validator-cli" 
+                 conf="${name}-validator-cli"
+                 ivyfile="${basedir}/ivy.xml" 
+                 pomfile="${target.dir}/${name}-validator-cli.xml"
+                 headerFile="${tools.dir}/mvn/HEADER"
+                 templatefile="${tools.dir}/mvn/pom.template"
+                 printIvyInfo="false">
+      <mapping conf="${name}-validator-cli" scope="runtime"/>
+      <dependency artifact="${name}-validator" scope="runtime"/>
+    </ivy:makepom>
+
+    <deploy-file file="release.sh" artifact="${name}-validator-cli" extension="jar"/>
+    <snapshot-deploy-file file="snapshot.sh" artifact="${name}-validator-cli" extension="jar"/>
+    <snapshot-install-file file="install-snapshot.sh" artifact="${name}-validator-cli" extension="jar"/>
+
+    <!-- ironjacamar-validator-maven -->
+    <delete file="${target.dir}/${name}-validator-maven.xml"/>
+    <ivy:makepom artifactName="${name}-validator-maven" 
+                 conf="${name}-validator-maven"
+                 ivyfile="${basedir}/ivy.xml" 
+                 pomfile="${target.dir}/${name}-validator-maven.xml"
+                 headerFile="${tools.dir}/mvn/HEADER"
+                 templatefile="${tools.dir}/mvn/pom.template"
+                 printIvyInfo="false">
+      <mapping conf="${name}-validator-maven" scope="runtime"/>
+      <dependency artifact="${name}-validator" scope="runtime"/>
+    </ivy:makepom>
+
+    <deploy-file file="release.sh" artifact="${name}-validator-maven" extension="jar"/>
+    <snapshot-deploy-file file="snapshot.sh" artifact="${name}-validator-maven" extension="jar"/>
+    <snapshot-install-file file="install-snapshot.sh" artifact="${name}-validator-maven" extension="jar"/>
+
+    <!-- adapters-jdbc -->
+    <delete file="${target.dir}/${name}-jdbc.xml"/>
+    <ivy:makepom artifactName="${name}-jdbc" 
+                conf="${name}-jdbc"
+                ivyfile="${basedir}/ivy.xml" 
+                pomfile="${target.dir}/${name}-jdbc.xml"
+                headerFile="${tools.dir}/mvn/HEADER"
+                templatefile="${tools.dir}/mvn/pom.template"
+                printIvyInfo="false">
+      <mapping conf="${name}-jdbc" scope="runtime"/>
+    </ivy:makepom>
+
+     <deploy-file file="release.sh" artifact="${name}-jdbc" extension="jar"/>
+     <snapshot-deploy-file file="snapshot.sh" artifact="${name}-jdbc" extension="jar"/>
+     <snapshot-install-file file="install-snapshot.sh" artifact="${name}-jdbc" extension="jar"/>
+
+  	
+    <!-- jdbc-local -->
+    <delete file="${target.dir}/jdbc-local.xml"/>
+    <ivy:makepom artifactName="jdbc-local" 
+                 conf="jdbc-local"
+                 ivyfile="${basedir}/ivy.xml" 
+                 pomfile="${target.dir}/jdbc-local.xml"
+                 headerFile="${tools.dir}/mvn/HEADER"
+                 templatefile="${tools.dir}/mvn/pom.template"
+                 printIvyInfo="false">
+      <mapping conf="jdbc-local" scope="runtime"/>
+    </ivy:makepom>
+
+    <deploy-file file="release.sh" artifact="jdbc-local" extension="rar"/>
+    <snapshot-deploy-file file="snapshot.sh" artifact="jdbc-local" extension="rar"/>
+    <snapshot-install-file file="install-snapshot.sh" artifact="jdbc-local" extension="rar"/>
+
+    <!-- jdbc-xa -->
+    <delete file="${target.dir}/jdbc-xa.xml"/>
+    <ivy:makepom artifactName="jdbc-xa" 
+                 conf="jdbc-xa"
+                 ivyfile="${basedir}/ivy.xml" 
+                 pomfile="${target.dir}/jdbc-xa.xml"
+                 headerFile="${tools.dir}/mvn/HEADER"
+                 templatefile="${tools.dir}/mvn/pom.template"
+                 printIvyInfo="false">
+      <mapping conf="jdbc-xa" scope="runtime"/>
+    </ivy:makepom>
+
+    <deploy-file file="release.sh" artifact="jdbc-xa" extension="rar"/>
+    <snapshot-deploy-file file="snapshot.sh" artifact="jdbc-xa" extension="rar"/>
+    <snapshot-install-file file="install-snapshot.sh" artifact="jdbc-xa" extension="rar"/>
+
+    <!-- mail -->
+    <delete file="${target.dir}/mail.xml"/>
+    <ivy:makepom artifactName="mail" 
+                 conf="mail"
+                 ivyfile="${basedir}/ivy.xml" 
+                 pomfile="${target.dir}/mail.xml"
+                 headerFile="${tools.dir}/mvn/HEADER"
+                 templatefile="${tools.dir}/mvn/pom.template"
+                 printIvyInfo="false">
+      <mapping conf="mail" scope="runtime"/>
+    </ivy:makepom>
+
+    <deploy-file file="release.sh" artifact="mail" extension="rar"/>
+    <snapshot-deploy-file file="snapshot.sh" artifact="mail" extension="rar"/>
+    <snapshot-install-file file="install-snapshot.sh" artifact="mail" extension="rar"/>
+
+    <chmod file="${target.dir}/release.sh" perm="755"/>
+    <chmod file="${target.dir}/snapshot.sh" perm="755"/>
+    <chmod file="${target.dir}/install-snapshot.sh" perm="755"/>
+
+  </target>
+
+</project>

Deleted: projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/build.xml
===================================================================
--- projects/jboss-jca/trunk/core/build.xml	2011-04-25 08:15:56 UTC (rev 111240)
+++ projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/build.xml	2011-04-25 14:41:10 UTC (rev 111243)
@@ -1,551 +0,0 @@
-<!--
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file 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.
--->
-<project name="ironjacamar-core" 
-         default="compile" 
-         xmlns:ivy="antlib:org.apache.ivy.ant">
-
-  <!-- ================================= 
-       Properties              
-       ================================= -->
-  <property name="build.core.dir" value="${build.dir}/core" />
-
-  <!-- ================================= 
-       Target: compile
-       ================================= -->
-  <target name="compile">
-    <mkdir dir="${build.core.dir}" />
-    <mkdir dir="${build.core.dir}/impl" />
-
-    <javac srcdir="src/main"
-           destdir="${build.core.dir}/impl"
-           classpathref="sjc.lib.path.id"
-           debug="${javac.debug}"
-           deprecation="${javac.deprecation}"
-           optimize="${javac.optimize}"
-           includeAntRuntime="false">
-      <compilerarg value="-Xlint"/>
-    </javac> 
-
-    <copy file="src/main/java/org/jboss/jca/Version.java.in"
-          tofile="${build.core.dir}/impl/org/jboss/jca/Version.java">
-      <filterset>
-        <filter token="VERSION" value="${version}"/>
-      </filterset>
-    </copy>
-
-    <javac srcdir="${build.core.dir}/impl"
-           destdir="${build.core.dir}/impl"
-           classpathref="sjc.lib.path.id"
-           debug="${javac.debug}"
-           deprecation="${javac.deprecation}"
-           optimize="${javac.optimize}"
-           includeAntRuntime="false">
-      <compilerarg value="-Xlint"/>
-    </javac> 
-
-  </target>
-
-  <!-- ================================= 
-       Target: jars 
-       ================================= -->
-  <target name="jars" depends="compile">
-    <copy todir="${build.core.dir}/impl">
-      <fileset dir="src/main/resources"
-               includes="**/*.properties"/>
-    </copy>
-
-    <jar destfile="${target.dir}/${name}-core-api.jar"
-         basedir="${build.core.dir}/impl"
-         index="true"
-         indexMetaInf="true"
-         update="true"
-         level="9"
-         includes="**/core/api/**">
-      <manifest>
-        <attribute name="Implementation-Title" value="IronJacamar Core API"/>
-        <attribute name="Implementation-Version" value="${major}.${minor}.${patch}.${type}"/>
-        <attribute name="Implementation-Vendor" value="The IronJacamar project (http://www.jboss.org/ironjacamar)"/>
-        <attribute name="Implementation-Vendor-Id" value="org.jboss"/>
-      </manifest>
-    </jar>
-
-    <jar destfile="${target.dir}/${name}-core-spi.jar"
-         basedir="${build.core.dir}/impl"
-         index="true"
-         indexMetaInf="true"
-         update="true"
-         level="9"
-         includes="**/core/spi/**">
-      <manifest>
-        <attribute name="Implementation-Title" value="IronJacamar Core SPI"/>
-        <attribute name="Implementation-Version" value="${major}.${minor}.${patch}.${type}"/>
-        <attribute name="Implementation-Vendor" value="The IronJacamar project (http://www.jboss.org/ironjacamar)"/>
-        <attribute name="Implementation-Vendor-Id" value="org.jboss"/>
-      </manifest>
-    </jar>
-
-    <jar destfile="${target.dir}/${name}-core-impl.jar"
-         basedir="${build.core.dir}/impl"
-         index="true"
-         indexMetaInf="true"
-         update="true"
-         level="9"
-         excludes="**/*.java, **/core/api/**, **/core/spi/**">
-      <manifest>
-        <attribute name="Implementation-Title" value="IronJacamar Core Implementation"/>
-        <attribute name="Implementation-Version" value="${major}.${minor}.${patch}.${type}"/>
-        <attribute name="Implementation-Vendor" value="The IronJacamar project (http://www.jboss.org/ironjacamar)"/>
-        <attribute name="Implementation-Vendor-Id" value="org.jboss"/>
-        <attribute name="Main-Class" value="org.jboss.jca.Version"/>
-      </manifest>
-    </jar>
-  </target>
-
-  <!-- ================================= 
-       Target: docs
-       ================================= -->
-  <target name="docs" depends="compile">
-    <mkdir dir="${target.dir}/docs/core"/>
-    <javadoc packagenames="org.*"
-             sourcepath="src/main/java"
-             destdir="${target.dir}/docs/core"
-             doclet="org.jboss.apiviz.APIviz"
-             docletpathref="sjc.lib.path.id"
-             author="true"
-             version="true"
-             windowtitle="IronJacamar Core"
-             doctitle="IronJacamar Core"
-             use="true"
-             additionalparam="-author -version"
-             classpath="${build.core.dir}/impl"
-             classpathref="sjc.lib.path.id"
-             bottom="Copyright &#169; 2008-2009 Red Hat Middleware LLC (http://www.jboss.com/)">
-      <link offline="true" href="http://java.sun.com/j2se/5/docs/api/" packagelistLoc="${java.home}/../docs/api"/>
-    </javadoc>
-    <copy todir="${target.dir}/docs/core" overwrite="true">
-      <fileset dir="${tools.dir}/api"/>
-    </copy>
-  </target>
-
-  <!-- ================================= 
-       Target: test
-       ================================= -->
-  <target name="test" depends="jars, prepare-test">
-    <mkdir dir="${reports.dir}"/>
-    <mkdir dir="${reports.dir}/core"/>
-
-    <junit dir="src/test"
-           printsummary="${junit.printsummary}"
-           haltonerror="${junit.haltonerror}"
-           haltonfailure="${junit.haltonfailure}"
-           fork="${junit.fork}"
-           timeout="${junit.timeout}">
-      
-      <jvmarg line="${junit.jvm.options}"/>
-      <sysproperty key="test.dir" value="${test.dir}"/>
-      <sysproperty key="xb.builder.useUnorderedSequence" value="true"/>
-      <sysproperty key="java.util.logging.manager" value="org.jboss.logmanager.LogManager"/>
-      <sysproperty key="org.jboss.logging.Logger.pluginClass" value="org.jboss.logging.logmanager.LoggerPluginImpl"/>
-      <sysproperty key="log4j.defaultInitOverride" value="true"/>
-      <sysproperty key="javax.xml.stream.XMLInputFactory" value="com.sun.xml.internal.stream.XMLInputFactoryImpl"/>
-      
-      <classpath>
-        <pathelement location="${build.core.dir}/test"/>
-        <fileset dir="${target.dir}" includes="*.jar"/>
-        <fileset dir="${lib.dir}/common" includes="*.jar" />
-        <fileset dir="${lib.dir}/embedded" includes="*.jar" />
-        <fileset dir="${lib.dir}/arquillian" includes="*.jar" />
-        <fileset dir="${lib.dir}/hornetq" includes="*.jar" />
-        <fileset dir="${lib.dir}/sjc" includes="*.jar" />
-        <fileset dir="${lib.dir}/test" includes="*.jar" />
-      </classpath>
-      
-      <formatter type="plain"/>
-      <formatter type="xml"/>
-      
-      <batchtest todir="${reports.dir}/core"
-                 haltonerror="${junit.batchtest.haltonerror}"
-                 haltonfailure="${junit.batchtest.haltonfailure}"
-                 fork="${junit.batchtest.fork}">
-        
-        <fileset dir="${build.core.dir}/test">
-          <include name="**/*TestCase.class"/>
-        </fileset>
-      </batchtest>
-
-    </junit>
-    
-  </target>
-
-
-  <!-- ================================= 
-       Target: one-test
-       ================================= -->
-  <target name="one-test" depends="jars, prepare-test">
-    <mkdir dir="${reports.dir}"/>
-    <mkdir dir="${reports.dir}/core"/>
-
-    <junit dir="src/test"
-           printsummary="${junit.printsummary}"
-           haltonerror="${junit.haltonerror}"
-           haltonfailure="${junit.haltonfailure}"
-           fork="${junit.fork}"
-           timeout="${junit.timeout}">
-      
-      <jvmarg line="${junit.jvm.options}"/>
-      <sysproperty key="test.dir" value="${test.dir}"/>
-      <sysproperty key="xb.builder.useUnorderedSequence" value="true"/>
-      <sysproperty key="java.util.logging.manager" value="org.jboss.logmanager.LogManager"/>
-      <sysproperty key="org.jboss.logging.Logger.pluginClass" value="org.jboss.logging.logmanager.LoggerPluginImpl"/>
-      <sysproperty key="log4j.defaultInitOverride" value="true"/>
-      <sysproperty key="javax.xml.stream.XMLInputFactory" value="com.sun.xml.internal.stream.XMLInputFactoryImpl"/>
-      
-      <classpath>
-        <pathelement location="${build.core.dir}/test"/>
-        <fileset dir="${target.dir}" includes="*.jar"/>
-        <fileset dir="${lib.dir}/common" includes="*.jar" />
-        <fileset dir="${lib.dir}/embedded" includes="*.jar" />
-        <fileset dir="${lib.dir}/arquillian" includes="*.jar" />
-        <fileset dir="${lib.dir}/hornetq" includes="*.jar" />
-        <fileset dir="${lib.dir}/sjc" includes="*.jar" />
-        <fileset dir="${lib.dir}/test" includes="*.jar" />
-      </classpath>
-      
-      <formatter type="plain"/>
-      <formatter type="xml"/>
-      
-      <test todir="${reports.dir}/core" name="${test}"
-                 haltonerror="${junit.batchtest.haltonerror}"
-                 haltonfailure="${junit.batchtest.haltonfailure}"
-                 fork="${junit.batchtest.fork}"/>
-    </junit>
-  </target>
-
-  <!-- ================================= 
-       Target: prepare-test
-       ================================= -->
-  <target name="prepare-test">
-    <mkdir dir="${build.core.dir}" />
-    <mkdir dir="${build.core.dir}/test" />
-
-    <javac srcdir="src/test"
-           destdir="${build.core.dir}/test"
-           classpathref="test.lib.path.id"
-           debug="${javac.debug}"
-           deprecation="${javac.deprecation}"
-           optimize="${javac.optimize}"
-           includeAntRuntime="false">
-      <compilerarg value="-Xlint"/>
-    </javac> 
-
-    <copy todir="${build.core.dir}/test">
-      <fileset dir="src/test/resources"/>
-    </copy>
-
-    <jar destfile="${build.core.dir}/test/${name}-test-txmgr.jar"
-         basedir="${build.core.dir}/test"
-         index="true"
-         indexMetaInf="true"
-         update="true"
-         level="9"
-         includes="**/txmgr/**">
-      <manifest>
-        <attribute name="Implementation-Title" value="IronJacamar Test - Transaction Manager"/>
-        <attribute name="Implementation-Version" value="${major}.${minor}.${patch}.${type}"/>
-        <attribute name="Implementation-Vendor" value="The IronJacamar project (http://www.jboss.org/ironjacamar)"/>
-        <attribute name="Implementation-Vendor-Id" value="org.jboss"/>
-      </manifest>
-    </jar>
-
-    <copy todir="${build.core.dir}/test" flatten="true">
-      <fileset dir="${lib.dir}/hornetq">
-        <include name="**/*.rar"/>
-      </fileset>
-    </copy>
-
-    <!-- Reauth CRI resource adapter -->
-    <jar destfile="${build.core.dir}/test/reauth-cri.jar"
-         basedir="${build.core.dir}/test"
-         index="true"
-         indexMetaInf="true"
-         update="true"
-         level="9"
-         includes="**/reauth/ra/cri/**">
-      <manifest>
-        <attribute name="Implementation-Title" value="IronJacamar Test - Reauth CRI"/>
-        <attribute name="Implementation-Version" value="${major}.${minor}.${patch}.${type}"/>
-        <attribute name="Implementation-Vendor" value="The IronJacamar project (http://www.jboss.org/ironjacamar)"/>
-        <attribute name="Implementation-Vendor-Id" value="org.jboss"/>
-      </manifest>
-    </jar>
-    <jar destfile="${build.core.dir}/test/reauth-cri.rar"
-         index="true"
-         indexMetaInf="true"
-         update="true"
-         level="9">
-      <manifest>
-        <attribute name="Implementation-Title" value="IronJacamar Test - Reauth CRI RAR"/>
-        <attribute name="Implementation-Version" value="${major}.${minor}.${patch}.${type}"/>
-        <attribute name="Implementation-Vendor" value="The IronJacamar project (http://www.jboss.org/ironjacamar)"/>
-        <attribute name="Implementation-Vendor-Id" value="org.jboss"/>
-      </manifest>
-      <fileset dir="${build.core.dir}/test">
-        <include name="reauth-cri.jar"/>
-      </fileset>
-      <fileset dir="${build.core.dir}/test/rars/security/reauth/cri"/>
-    </jar>
-
-    <!-- Reauth Subject resource adapter -->
-    <jar destfile="${build.core.dir}/test/reauth-subject.jar"
-         basedir="${build.core.dir}/test"
-         index="true"
-         indexMetaInf="true"
-         update="true"
-         level="9"
-         includes="**/reauth/ra/subject/**">
-      <manifest>
-        <attribute name="Implementation-Title" value="IronJacamar Test - Reauth Subject"/>
-        <attribute name="Implementation-Version" value="${major}.${minor}.${patch}.${type}"/>
-        <attribute name="Implementation-Vendor" value="The IronJacamar project (http://www.jboss.org/ironjacamar)"/>
-        <attribute name="Implementation-Vendor-Id" value="org.jboss"/>
-      </manifest>
-    </jar>
-    <jar destfile="${build.core.dir}/test/reauth-subject.rar"
-         index="true"
-         indexMetaInf="true"
-         update="true"
-         level="9">
-      <manifest>
-        <attribute name="Implementation-Title" value="IronJacamar Test - Reauth CRI RAR"/>
-        <attribute name="Implementation-Version" value="${major}.${minor}.${patch}.${type}"/>
-        <attribute name="Implementation-Vendor" value="The IronJacamar project (http://www.jboss.org/ironjacamar)"/>
-        <attribute name="Implementation-Vendor-Id" value="org.jboss"/>
-      </manifest>
-      <fileset dir="${build.core.dir}/test">
-        <include name="reauth-subject.jar"/>
-      </fileset>
-      <fileset dir="${build.core.dir}/test/rars/security/reauth/subject"/>
-    </jar>
-
-    <!-- Pure inflow resource adapter -->
-    <jar destfile="${build.core.dir}/test/pure-inflow.jar"
-         basedir="${build.core.dir}/test"
-         index="true"
-         indexMetaInf="true"
-         update="true"
-         level="9"
-         includes="**/inflow/ra/**">
-      <manifest>
-        <attribute name="Implementation-Title" value="IronJacamar Test - Pure inflow"/>
-        <attribute name="Implementation-Version" value="${major}.${minor}.${patch}.${type}"/>
-        <attribute name="Implementation-Vendor" value="The IronJacamar project (http://www.jboss.org/ironjacamar)"/>
-        <attribute name="Implementation-Vendor-Id" value="org.jboss"/>
-      </manifest>
-    </jar>
-    <jar destfile="${build.core.dir}/test/pure-inflow.rar"
-         index="true"
-         indexMetaInf="true"
-         update="true"
-         level="9">
-      <manifest>
-        <attribute name="Implementation-Title" value="IronJacamar Test - Pure inflow RAR"/>
-        <attribute name="Implementation-Version" value="${major}.${minor}.${patch}.${type}"/>
-        <attribute name="Implementation-Vendor" value="The IronJacamar project (http://www.jboss.org/ironjacamar)"/>
-        <attribute name="Implementation-Vendor-Id" value="org.jboss"/>
-      </manifest>
-      <fileset dir="${build.core.dir}/test">
-        <include name="pure-inflow.jar"/>
-      </fileset>
-      <fileset dir="${build.core.dir}/test/rars/inflow"/>
-    </jar>
-
-  </target>
-
-  <!-- ================================= 
-       Target: artifacts
-       ================================= -->
-  <target name="artifacts" depends="jars">
-
-    <jar destfile="${target.dir}/${name}-core-api-sources.jar"
-         basedir="src/main/java"
-         index="true"
-         indexMetaInf="true"
-         update="true"
-         level="9"
-         includes="**/core/api/**">
-      <manifest>
-        <attribute name="Implementation-Title" value="IronJacamar Core API - Sources"/>
-        <attribute name="Implementation-Version" value="${major}.${minor}.${patch}.${type}"/>
-        <attribute name="Implementation-Vendor" value="The IronJacamar project (http://www.jboss.org/ironjacamar)"/>
-        <attribute name="Implementation-Vendor-Id" value="org.jboss"/>
-      </manifest>
-    </jar>
-
-    <jar destfile="${target.dir}/${name}-core-impl-sources.jar"
-         basedir="src/main/java"
-         index="true"
-         indexMetaInf="true"
-         update="true"
-         level="9"
-         excludes="**/core/api/**,**/core/spi/**">
-      <manifest>
-        <attribute name="Implementation-Title" value="IronJacamar Core Implementation - Sources"/>
-        <attribute name="Implementation-Version" value="${major}.${minor}.${patch}.${type}"/>
-        <attribute name="Implementation-Vendor" value="The IronJacamar project (http://www.jboss.org/ironjacamar)"/>
-        <attribute name="Implementation-Vendor-Id" value="org.jboss"/>
-      </manifest>
-    </jar>
-
-    <jar destfile="${target.dir}/${name}-core-spi-sources.jar"
-         basedir="src/main/java"
-         index="true"
-         indexMetaInf="true"
-         update="true"
-         level="9"
-         includes="**/core/spi/**">
-      <manifest>
-        <attribute name="Implementation-Title" value="IronJacamar Core SPI - Sources"/>
-        <attribute name="Implementation-Version" value="${major}.${minor}.${patch}.${type}"/>
-        <attribute name="Implementation-Vendor" value="The IronJacamar project (http://www.jboss.org/ironjacamar)"/>
-        <attribute name="Implementation-Vendor-Id" value="org.jboss"/>
-      </manifest>
-    </jar>
-
-    <mkdir dir="${build.core.dir}/docs"/>
-    <mkdir dir="${build.core.dir}/docs/api"/>
-    <javadoc destdir="${build.core.dir}/docs/api"
-             doclet="org.jboss.apiviz.APIviz"
-             docletpathref="sjc.lib.path.id"
-             author="true"
-             version="true"
-             windowtitle="IronJacamar Core - API"
-             doctitle="IronJacamar Core - API"
-             use="true"
-             additionalparam="-author -version"
-             classpath="${build.core.dir}"
-             classpathref="sjc.lib.path.id"
-             bottom="Copyright &#169; 2008 Red Hat Middleware LLC (http://www.jboss.com/)">
-
-      <packageset dir="src/main/java" defaultexcludes="yes">
-        <include name="**/core/api/**"/>
-      </packageset>
-
-      <link offline="true" href="http://java.sun.com/j2se/5/docs/api/" packagelistLoc="${java.home}/../docs/api"/>
-    </javadoc>
-    <copy todir="${build.core.dir}/docs/api" overwrite="true">
-      <fileset dir="${tools.dir}/api"/>
-    </copy>
-
-    <jar destfile="${target.dir}/${name}-core-api-javadoc.jar"
-         basedir="${build.core.dir}/docs/api"
-         index="true"
-         indexMetaInf="true"
-         update="true"
-         level="9">
-      <manifest>
-        <attribute name="Implementation-Title" value="IronJacamar Core API - JavaDoc"/>
-        <attribute name="Implementation-Version" value="${major}.${minor}.${patch}.${type}"/>
-        <attribute name="Implementation-Vendor" value="The IronJacamar project (http://www.jboss.org/ironjacamar)"/>
-        <attribute name="Implementation-Vendor-Id" value="org.jboss"/>
-      </manifest>
-    </jar>
-
-    <mkdir dir="${build.core.dir}/docs/impl"/>
-    <javadoc destdir="${build.core.dir}/docs/impl"
-             doclet="org.jboss.apiviz.APIviz"
-             docletpathref="sjc.lib.path.id"
-             author="true"
-             version="true"
-             windowtitle="IronJacamar Core - Implementation"
-             doctitle="IronJacamar Core - Implementation"
-             use="true"
-             additionalparam="-author -version"
-             classpath="${build.core.dir}"
-             classpathref="sjc.lib.path.id"
-             bottom="Copyright &#169; 2008 Red Hat Middleware LLC (http://www.jboss.com/)">
-
-      <packageset dir="src/main/java" defaultexcludes="yes">
-        <exclude name="**/core/api/**"/>
-        <exclude name="**/core/spi/**"/>
-      </packageset>
-
-      <link offline="true" href="http://java.sun.com/j2se/5/docs/api/" packagelistLoc="${java.home}/../docs/api"/>
-    </javadoc>
-    <copy todir="${build.core.dir}/docs/impl" overwrite="true">
-      <fileset dir="${tools.dir}/api"/>
-    </copy>
-
-    <jar destfile="${target.dir}/${name}-core-impl-javadoc.jar"
-         basedir="${build.core.dir}/docs/impl"
-         index="true"
-         indexMetaInf="true"
-         update="true"
-         level="9">
-      <manifest>
-        <attribute name="Implementation-Title" value="IronJacamar Core Implementation - JavaDoc"/>
-        <attribute name="Implementation-Version" value="${major}.${minor}.${patch}.${type}"/>
-        <attribute name="Implementation-Vendor" value="The IronJacamar project (http://www.jboss.org/ironjacamar)"/>
-        <attribute name="Implementation-Vendor-Id" value="org.jboss"/>
-      </manifest>
-    </jar>
-
-    <mkdir dir="${build.core.dir}/docs/spi"/>
-    <javadoc destdir="${build.core.dir}/docs/spi"
-             doclet="org.jboss.apiviz.APIviz"
-             docletpathref="sjc.lib.path.id"
-             author="true"
-             version="true"
-             windowtitle="IronJacamar Core - SPI"
-             doctitle="IronJacamar Core - SPI"
-             use="true"
-             additionalparam="-author -version"
-             classpath="${build.core.dir}"
-             classpathref="sjc.lib.path.id"
-             bottom="Copyright &#169; 2008 Red Hat Middleware LLC (http://www.jboss.com/)">
-
-      <packageset dir="src/main/java" defaultexcludes="yes">
-        <include name="**/core/spi/**"/>
-      </packageset>
-
-      <link offline="true" href="http://java.sun.com/j2se/5/docs/api/" packagelistLoc="${java.home}/../docs/api"/>
-    </javadoc>
-    <copy todir="${build.core.dir}/docs/spi" overwrite="true">
-      <fileset dir="${tools.dir}/api"/>
-    </copy>
-
-    <jar destfile="${target.dir}/${name}-core-spi-javadoc.jar"
-         basedir="${build.core.dir}/docs/spi"
-         index="true"
-         indexMetaInf="true"
-         update="true"
-         level="9">
-      <manifest>
-        <attribute name="Implementation-Title" value="IronJacamar Core SPI - JavaDoc"/>
-        <attribute name="Implementation-Version" value="${major}.${minor}.${patch}.${type}"/>
-        <attribute name="Implementation-Vendor" value="The IronJacamar project (http://www.jboss.org/ironjacamar)"/>
-        <attribute name="Implementation-Vendor-Id" value="org.jboss"/>
-      </manifest>
-    </jar>
-
-  </target>
-
-</project>

Copied: projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/build.xml (from rev 111242, projects/jboss-jca/trunk/core/build.xml)
===================================================================
--- projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/build.xml	                        (rev 0)
+++ projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/build.xml	2011-04-25 14:41:10 UTC (rev 111243)
@@ -0,0 +1,484 @@
+<!--
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file 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.
+-->
+<project name="ironjacamar-core" 
+         default="compile" 
+         xmlns:ivy="antlib:org.apache.ivy.ant">
+
+  <!-- ================================= 
+       Properties              
+       ================================= -->
+  <property name="build.core.dir" value="${build.dir}/core" />
+
+  <!-- ================================= 
+       Target: compile
+       ================================= -->
+  <target name="compile">
+    <mkdir dir="${build.core.dir}" />
+    <mkdir dir="${build.core.dir}/impl" />
+
+    <javac srcdir="src/main"
+           destdir="${build.core.dir}/impl"
+           classpathref="sjc.lib.path.id"
+           debug="${javac.debug}"
+           deprecation="${javac.deprecation}"
+           optimize="${javac.optimize}"
+           includeAntRuntime="false">
+      <compilerarg value="-Xlint"/>
+    </javac> 
+
+    <copy file="src/main/java/org/jboss/jca/Version.java.in"
+          tofile="${build.core.dir}/impl/org/jboss/jca/Version.java">
+      <filterset>
+        <filter token="VERSION" value="${version}"/>
+      </filterset>
+    </copy>
+
+    <javac srcdir="${build.core.dir}/impl"
+           destdir="${build.core.dir}/impl"
+           classpathref="sjc.lib.path.id"
+           debug="${javac.debug}"
+           deprecation="${javac.deprecation}"
+           optimize="${javac.optimize}"
+           includeAntRuntime="false">
+      <compilerarg value="-Xlint"/>
+    </javac> 
+
+  </target>
+
+  <!-- ================================= 
+       Target: jars 
+       ================================= -->
+  <target name="jars" depends="compile">
+    <copy todir="${build.core.dir}/impl">
+      <fileset dir="src/main/resources"
+               includes="**/*.properties"/>
+    </copy>
+
+    <jar destfile="${target.dir}/${name}-core-api.jar"
+         basedir="${build.core.dir}/impl"
+         index="true"
+         indexMetaInf="true"
+         update="true"
+         level="9"
+         includes="**/core/api/**, **/core/spi/**">
+      <manifest>
+        <attribute name="Implementation-Title" value="IronJacamar Core API"/>
+        <attribute name="Implementation-Version" value="${major}.${minor}.${patch}.${type}"/>
+        <attribute name="Implementation-Vendor" value="The IronJacamar project (http://www.jboss.org/ironjacamar)"/>
+        <attribute name="Implementation-Vendor-Id" value="org.jboss"/>
+      </manifest>
+    </jar>
+
+    <jar destfile="${target.dir}/${name}-core-impl.jar"
+         basedir="${build.core.dir}/impl"
+         index="true"
+         indexMetaInf="true"
+         update="true"
+         level="9"
+         excludes="**/*.java, **/core/api/**, **/core/spi/**">
+      <manifest>
+        <attribute name="Implementation-Title" value="IronJacamar Core Implementation"/>
+        <attribute name="Implementation-Version" value="${major}.${minor}.${patch}.${type}"/>
+        <attribute name="Implementation-Vendor" value="The IronJacamar project (http://www.jboss.org/ironjacamar)"/>
+        <attribute name="Implementation-Vendor-Id" value="org.jboss"/>
+        <attribute name="Main-Class" value="org.jboss.jca.Version"/>
+      </manifest>
+    </jar>
+  </target>
+
+  <!-- ================================= 
+       Target: docs
+       ================================= -->
+  <target name="docs" depends="compile">
+    <mkdir dir="${target.dir}/docs/core"/>
+    <javadoc packagenames="org.*"
+             sourcepath="src/main/java"
+             destdir="${target.dir}/docs/core"
+             doclet="org.jboss.apiviz.APIviz"
+             docletpathref="sjc.lib.path.id"
+             author="true"
+             version="true"
+             windowtitle="IronJacamar Core"
+             doctitle="IronJacamar Core"
+             use="true"
+             additionalparam="-author -version"
+             classpath="${build.core.dir}/impl"
+             classpathref="sjc.lib.path.id"
+             bottom="Copyright &#169; 2008-2009 Red Hat Middleware LLC (http://www.jboss.com/)">
+      <link offline="true" href="http://java.sun.com/j2se/5/docs/api/" packagelistLoc="${java.home}/../docs/api"/>
+    </javadoc>
+    <copy todir="${target.dir}/docs/core" overwrite="true">
+      <fileset dir="${tools.dir}/api"/>
+    </copy>
+  </target>
+
+  <!-- ================================= 
+       Target: test
+       ================================= -->
+  <target name="test" depends="jars, prepare-test">
+    <mkdir dir="${reports.dir}"/>
+    <mkdir dir="${reports.dir}/core"/>
+
+    <junit dir="src/test"
+           printsummary="${junit.printsummary}"
+           haltonerror="${junit.haltonerror}"
+           haltonfailure="${junit.haltonfailure}"
+           fork="${junit.fork}"
+           timeout="${junit.timeout}">
+      
+      <jvmarg line="${junit.jvm.options}"/>
+      <sysproperty key="test.dir" value="${test.dir}"/>
+      <sysproperty key="xb.builder.useUnorderedSequence" value="true"/>
+      <sysproperty key="java.util.logging.manager" value="org.jboss.logmanager.LogManager"/>
+      <sysproperty key="org.jboss.logging.Logger.pluginClass" value="org.jboss.logging.logmanager.LoggerPluginImpl"/>
+      <sysproperty key="log4j.defaultInitOverride" value="true"/>
+      <sysproperty key="javax.xml.stream.XMLInputFactory" value="com.sun.xml.internal.stream.XMLInputFactoryImpl"/>
+      
+      <classpath>
+        <pathelement location="${build.core.dir}/test"/>
+        <fileset dir="${target.dir}" includes="*.jar"/>
+        <fileset dir="${lib.dir}/common" includes="*.jar" />
+        <fileset dir="${lib.dir}/embedded" includes="*.jar" />
+        <fileset dir="${lib.dir}/arquillian" includes="*.jar" />
+        <fileset dir="${lib.dir}/hornetq" includes="*.jar" />
+        <fileset dir="${lib.dir}/sjc" includes="*.jar" />
+        <fileset dir="${lib.dir}/test" includes="*.jar" />
+      </classpath>
+      
+      <formatter type="plain"/>
+      <formatter type="xml"/>
+      
+      <batchtest todir="${reports.dir}/core"
+                 haltonerror="${junit.batchtest.haltonerror}"
+                 haltonfailure="${junit.batchtest.haltonfailure}"
+                 fork="${junit.batchtest.fork}">
+        
+        <fileset dir="${build.core.dir}/test">
+          <include name="**/*TestCase.class"/>
+        </fileset>
+      </batchtest>
+
+    </junit>
+    
+  </target>
+
+
+  <!-- ================================= 
+       Target: one-test
+       ================================= -->
+  <target name="one-test" depends="jars, prepare-test">
+    <mkdir dir="${reports.dir}"/>
+    <mkdir dir="${reports.dir}/core"/>
+
+    <junit dir="src/test"
+           printsummary="${junit.printsummary}"
+           haltonerror="${junit.haltonerror}"
+           haltonfailure="${junit.haltonfailure}"
+           fork="${junit.fork}"
+           timeout="${junit.timeout}">
+      
+      <jvmarg line="${junit.jvm.options}"/>
+      <sysproperty key="test.dir" value="${test.dir}"/>
+      <sysproperty key="xb.builder.useUnorderedSequence" value="true"/>
+      <sysproperty key="java.util.logging.manager" value="org.jboss.logmanager.LogManager"/>
+      <sysproperty key="org.jboss.logging.Logger.pluginClass" value="org.jboss.logging.logmanager.LoggerPluginImpl"/>
+      <sysproperty key="log4j.defaultInitOverride" value="true"/>
+      <sysproperty key="javax.xml.stream.XMLInputFactory" value="com.sun.xml.internal.stream.XMLInputFactoryImpl"/>
+      
+      <classpath>
+        <pathelement location="${build.core.dir}/test"/>
+        <fileset dir="${target.dir}" includes="*.jar"/>
+        <fileset dir="${lib.dir}/common" includes="*.jar" />
+        <fileset dir="${lib.dir}/embedded" includes="*.jar" />
+        <fileset dir="${lib.dir}/arquillian" includes="*.jar" />
+        <fileset dir="${lib.dir}/hornetq" includes="*.jar" />
+        <fileset dir="${lib.dir}/sjc" includes="*.jar" />
+        <fileset dir="${lib.dir}/test" includes="*.jar" />
+      </classpath>
+      
+      <formatter type="plain"/>
+      <formatter type="xml"/>
+      
+      <test todir="${reports.dir}/core" name="${test}"
+                 haltonerror="${junit.batchtest.haltonerror}"
+                 haltonfailure="${junit.batchtest.haltonfailure}"
+                 fork="${junit.batchtest.fork}"/>
+    </junit>
+  </target>
+
+  <!-- ================================= 
+       Target: prepare-test
+       ================================= -->
+  <target name="prepare-test">
+    <mkdir dir="${build.core.dir}" />
+    <mkdir dir="${build.core.dir}/test" />
+
+    <javac srcdir="src/test"
+           destdir="${build.core.dir}/test"
+           classpathref="test.lib.path.id"
+           debug="${javac.debug}"
+           deprecation="${javac.deprecation}"
+           optimize="${javac.optimize}"
+           includeAntRuntime="false">
+      <compilerarg value="-Xlint"/>
+    </javac> 
+
+    <copy todir="${build.core.dir}/test">
+      <fileset dir="src/test/resources"/>
+    </copy>
+
+    <jar destfile="${build.core.dir}/test/${name}-test-txmgr.jar"
+         basedir="${build.core.dir}/test"
+         index="true"
+         indexMetaInf="true"
+         update="true"
+         level="9"
+         includes="**/txmgr/**">
+      <manifest>
+        <attribute name="Implementation-Title" value="IronJacamar Test - Transaction Manager"/>
+        <attribute name="Implementation-Version" value="${major}.${minor}.${patch}.${type}"/>
+        <attribute name="Implementation-Vendor" value="The IronJacamar project (http://www.jboss.org/ironjacamar)"/>
+        <attribute name="Implementation-Vendor-Id" value="org.jboss"/>
+      </manifest>
+    </jar>
+
+    <copy todir="${build.core.dir}/test" flatten="true">
+      <fileset dir="${lib.dir}/hornetq">
+        <include name="**/*.rar"/>
+      </fileset>
+    </copy>
+
+    <!-- Reauth CRI resource adapter -->
+    <jar destfile="${build.core.dir}/test/reauth-cri.jar"
+         basedir="${build.core.dir}/test"
+         index="true"
+         indexMetaInf="true"
+         update="true"
+         level="9"
+         includes="**/reauth/ra/cri/**">
+      <manifest>
+        <attribute name="Implementation-Title" value="IronJacamar Test - Reauth CRI"/>
+        <attribute name="Implementation-Version" value="${major}.${minor}.${patch}.${type}"/>
+        <attribute name="Implementation-Vendor" value="The IronJacamar project (http://www.jboss.org/ironjacamar)"/>
+        <attribute name="Implementation-Vendor-Id" value="org.jboss"/>
+      </manifest>
+    </jar>
+    <jar destfile="${build.core.dir}/test/reauth-cri.rar"
+         index="true"
+         indexMetaInf="true"
+         update="true"
+         level="9">
+      <manifest>
+        <attribute name="Implementation-Title" value="IronJacamar Test - Reauth CRI RAR"/>
+        <attribute name="Implementation-Version" value="${major}.${minor}.${patch}.${type}"/>
+        <attribute name="Implementation-Vendor" value="The IronJacamar project (http://www.jboss.org/ironjacamar)"/>
+        <attribute name="Implementation-Vendor-Id" value="org.jboss"/>
+      </manifest>
+      <fileset dir="${build.core.dir}/test">
+        <include name="reauth-cri.jar"/>
+      </fileset>
+      <fileset dir="${build.core.dir}/test/rars/security/reauth/cri"/>
+    </jar>
+
+    <!-- Reauth Subject resource adapter -->
+    <jar destfile="${build.core.dir}/test/reauth-subject.jar"
+         basedir="${build.core.dir}/test"
+         index="true"
+         indexMetaInf="true"
+         update="true"
+         level="9"
+         includes="**/reauth/ra/subject/**">
+      <manifest>
+        <attribute name="Implementation-Title" value="IronJacamar Test - Reauth Subject"/>
+        <attribute name="Implementation-Version" value="${major}.${minor}.${patch}.${type}"/>
+        <attribute name="Implementation-Vendor" value="The IronJacamar project (http://www.jboss.org/ironjacamar)"/>
+        <attribute name="Implementation-Vendor-Id" value="org.jboss"/>
+      </manifest>
+    </jar>
+    <jar destfile="${build.core.dir}/test/reauth-subject.rar"
+         index="true"
+         indexMetaInf="true"
+         update="true"
+         level="9">
+      <manifest>
+        <attribute name="Implementation-Title" value="IronJacamar Test - Reauth CRI RAR"/>
+        <attribute name="Implementation-Version" value="${major}.${minor}.${patch}.${type}"/>
+        <attribute name="Implementation-Vendor" value="The IronJacamar project (http://www.jboss.org/ironjacamar)"/>
+        <attribute name="Implementation-Vendor-Id" value="org.jboss"/>
+      </manifest>
+      <fileset dir="${build.core.dir}/test">
+        <include name="reauth-subject.jar"/>
+      </fileset>
+      <fileset dir="${build.core.dir}/test/rars/security/reauth/subject"/>
+    </jar>
+
+    <!-- Pure inflow resource adapter -->
+    <jar destfile="${build.core.dir}/test/pure-inflow.jar"
+         basedir="${build.core.dir}/test"
+         index="true"
+         indexMetaInf="true"
+         update="true"
+         level="9"
+         includes="**/inflow/ra/**">
+      <manifest>
+        <attribute name="Implementation-Title" value="IronJacamar Test - Pure inflow"/>
+        <attribute name="Implementation-Version" value="${major}.${minor}.${patch}.${type}"/>
+        <attribute name="Implementation-Vendor" value="The IronJacamar project (http://www.jboss.org/ironjacamar)"/>
+        <attribute name="Implementation-Vendor-Id" value="org.jboss"/>
+      </manifest>
+    </jar>
+    <jar destfile="${build.core.dir}/test/pure-inflow.rar"
+         index="true"
+         indexMetaInf="true"
+         update="true"
+         level="9">
+      <manifest>
+        <attribute name="Implementation-Title" value="IronJacamar Test - Pure inflow RAR"/>
+        <attribute name="Implementation-Version" value="${major}.${minor}.${patch}.${type}"/>
+        <attribute name="Implementation-Vendor" value="The IronJacamar project (http://www.jboss.org/ironjacamar)"/>
+        <attribute name="Implementation-Vendor-Id" value="org.jboss"/>
+      </manifest>
+      <fileset dir="${build.core.dir}/test">
+        <include name="pure-inflow.jar"/>
+      </fileset>
+      <fileset dir="${build.core.dir}/test/rars/inflow"/>
+    </jar>
+
+  </target>
+
+  <!-- ================================= 
+       Target: artifacts
+       ================================= -->
+  <target name="artifacts" depends="jars">
+
+    <jar destfile="${target.dir}/${name}-core-api-sources.jar"
+         basedir="src/main/java"
+         index="true"
+         indexMetaInf="true"
+         update="true"
+         level="9"
+         includes="**/core/api/**,**/core/spi/**">
+      <manifest>
+        <attribute name="Implementation-Title" value="IronJacamar Core API - Sources"/>
+        <attribute name="Implementation-Version" value="${major}.${minor}.${patch}.${type}"/>
+        <attribute name="Implementation-Vendor" value="The IronJacamar project (http://www.jboss.org/ironjacamar)"/>
+        <attribute name="Implementation-Vendor-Id" value="org.jboss"/>
+      </manifest>
+    </jar>
+
+    <jar destfile="${target.dir}/${name}-core-impl-sources.jar"
+         basedir="src/main/java"
+         index="true"
+         indexMetaInf="true"
+         update="true"
+         level="9"
+         excludes="**/core/api/**,**/core/spi/**">
+      <manifest>
+        <attribute name="Implementation-Title" value="IronJacamar Core Implementation - Sources"/>
+        <attribute name="Implementation-Version" value="${major}.${minor}.${patch}.${type}"/>
+        <attribute name="Implementation-Vendor" value="The IronJacamar project (http://www.jboss.org/ironjacamar)"/>
+        <attribute name="Implementation-Vendor-Id" value="org.jboss"/>
+      </manifest>
+    </jar>
+
+    <mkdir dir="${build.core.dir}/docs"/>
+    <mkdir dir="${build.core.dir}/docs/api"/>
+    <javadoc destdir="${build.core.dir}/docs/api"
+             doclet="org.jboss.apiviz.APIviz"
+             docletpathref="sjc.lib.path.id"
+             author="true"
+             version="true"
+             windowtitle="IronJacamar Core - API"
+             doctitle="IronJacamar Core - API"
+             use="true"
+             additionalparam="-author -version"
+             classpath="${build.core.dir}"
+             classpathref="sjc.lib.path.id"
+             bottom="Copyright &#169; 2008 Red Hat Middleware LLC (http://www.jboss.com/)">
+
+      <packageset dir="src/main/java" defaultexcludes="yes">
+        <include name="**/core/api/**"/>
+        <include name="**/core/spi/**"/>
+      </packageset>
+
+      <link offline="true" href="http://java.sun.com/j2se/5/docs/api/" packagelistLoc="${java.home}/../docs/api"/>
+    </javadoc>
+    <copy todir="${build.core.dir}/docs/api" overwrite="true">
+      <fileset dir="${tools.dir}/api"/>
+    </copy>
+
+    <jar destfile="${target.dir}/${name}-core-api-javadoc.jar"
+         basedir="${build.core.dir}/docs/api"
+         index="true"
+         indexMetaInf="true"
+         update="true"
+         level="9">
+      <manifest>
+        <attribute name="Implementation-Title" value="IronJacamar Core API - JavaDoc"/>
+        <attribute name="Implementation-Version" value="${major}.${minor}.${patch}.${type}"/>
+        <attribute name="Implementation-Vendor" value="The IronJacamar project (http://www.jboss.org/ironjacamar)"/>
+        <attribute name="Implementation-Vendor-Id" value="org.jboss"/>
+      </manifest>
+    </jar>
+
+    <mkdir dir="${build.core.dir}/docs/impl"/>
+    <javadoc destdir="${build.core.dir}/docs/impl"
+             doclet="org.jboss.apiviz.APIviz"
+             docletpathref="sjc.lib.path.id"
+             author="true"
+             version="true"
+             windowtitle="IronJacamar Core - Implementation"
+             doctitle="IronJacamar Core - Implementation"
+             use="true"
+             additionalparam="-author -version"
+             classpath="${build.core.dir}"
+             classpathref="sjc.lib.path.id"
+             bottom="Copyright &#169; 2008 Red Hat Middleware LLC (http://www.jboss.com/)">
+
+      <packageset dir="src/main/java" defaultexcludes="yes">
+        <exclude name="**/core/api/**"/>
+        <exclude name="**/core/spi/**"/>
+      </packageset>
+
+      <link offline="true" href="http://java.sun.com/j2se/5/docs/api/" packagelistLoc="${java.home}/../docs/api"/>
+    </javadoc>
+    <copy todir="${build.core.dir}/docs/impl" overwrite="true">
+      <fileset dir="${tools.dir}/api"/>
+    </copy>
+
+    <jar destfile="${target.dir}/${name}-core-impl-javadoc.jar"
+         basedir="${build.core.dir}/docs/impl"
+         index="true"
+         indexMetaInf="true"
+         update="true"
+         level="9">
+      <manifest>
+        <attribute name="Implementation-Title" value="IronJacamar Core Implementation - JavaDoc"/>
+        <attribute name="Implementation-Version" value="${major}.${minor}.${patch}.${type}"/>
+        <attribute name="Implementation-Vendor" value="The IronJacamar project (http://www.jboss.org/ironjacamar)"/>
+        <attribute name="Implementation-Vendor-Id" value="org.jboss"/>
+      </manifest>
+    </jar>
+
+  </target>
+
+</project>

Deleted: projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/AbstractPool.java
===================================================================
--- projects/jboss-jca/trunk/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/AbstractPool.java	2011-04-25 08:15:56 UTC (rev 111240)
+++ projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/AbstractPool.java	2011-04-25 14:41:10 UTC (rev 111243)
@@ -1,593 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file 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.jca.core.connectionmanager.pool;
-
-import org.jboss.jca.common.JBossResourceException;
-import org.jboss.jca.core.api.connectionmanager.pool.PoolConfiguration;
-import org.jboss.jca.core.api.connectionmanager.pool.PoolStatistics;
-import org.jboss.jca.core.connectionmanager.listener.ConnectionListener;
-import org.jboss.jca.core.connectionmanager.listener.ConnectionListenerFactory;
-import org.jboss.jca.core.connectionmanager.pool.api.Pool;
-import org.jboss.jca.core.connectionmanager.pool.mcp.ManagedConnectionPool;
-import org.jboss.jca.core.spi.transaction.TransactionIntegration;
-import org.jboss.jca.core.spi.transaction.local.TransactionLocal;
-
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.Set;
-import java.util.concurrent.ConcurrentHashMap;
-import java.util.concurrent.ConcurrentMap;
-
-import javax.resource.ResourceException;
-import javax.resource.spi.ConnectionRequestInfo;
-import javax.resource.spi.ManagedConnectionFactory;
-import javax.resource.spi.RetryableException;
-import javax.security.auth.Subject;
-import javax.transaction.Transaction;
-import javax.transaction.TransactionManager;
-
-import org.jboss.logging.Logger;
-
-/**
- * Abstract pool implementation.
- * <p>
- * It can contains sub-pools according to the semantic of
- * the pool. Concrete implementatins override {@link AbstractPool#getKey(Subject, ConnectionRequestInfo, boolean)}
- * method to create map key object.
- * </p>
- * @author <a href="mailto:gurkanerdogdu at yahoo.com">Gurkan Erdogdu</a>
- * @version $Rev$
- *
- */
-public abstract class AbstractPool implements Pool
-{
-   /** The logger */
-   protected final Logger log = Logger.getLogger(getClass());
-
-   /** Is trace enabled */
-   private boolean trace = false;
-
-   /** The subpools, maps key --> pool */
-   private final ConcurrentMap<Object, SubPoolContext> subPools = new ConcurrentHashMap<Object, SubPoolContext>();
-
-   /** The managed connection factory for this pool */
-   private final ManagedConnectionFactory mcf;
-
-   /** The connection listener factory for this pool*/
-   private ConnectionListenerFactory clf;
-
-   /** The pool parameters */
-   private final PoolConfiguration poolConfiguration;
-
-   /** Whether to use separate pools for transactional and non-transaction use */
-   private final boolean noTxSeparatePools;
-
-   /** The poolName */
-   private String poolName;
-
-   /** Statistics */
-   private SubPoolStatistics statistics;
-
-   /**
-    * Create a new base pool.
-    *
-    * @param mcf the managed connection factory
-    * @param pc the pool configuration
-    * @param noTxSeparatePools noTxSeparatePool
-    */
-   protected AbstractPool(final ManagedConnectionFactory mcf, final PoolConfiguration pc,
-                          final boolean noTxSeparatePools)
-   {
-      if (mcf == null)
-         throw new IllegalArgumentException("MCF is null");
-
-      if (pc == null)
-         throw new IllegalArgumentException("PoolConfiguration is null");
-
-      this.mcf = mcf;
-      this.poolConfiguration = pc;
-      this.noTxSeparatePools = noTxSeparatePools;
-      this.trace = log.isTraceEnabled();
-      this.statistics = new SubPoolStatistics(pc.getMaxSize(), subPools);
-   }
-
-   /**
-    * Sets pool name.
-    * @param poolName pool name
-    */
-   public void setName(String poolName)
-   {
-      this.poolName = poolName;
-   }
-
-   /**
-    * Gets pool name.
-    * @return pool name
-    */
-   public String getName()
-   {
-      return poolName;
-   }
-
-   /**
-    * Retrieve the key for this request.
-    *
-    * @param subject the subject
-    * @param cri the connection request information
-    * @param separateNoTx separateNoTx
-    * @return the key
-    * @throws ResourceException for any error
-    */
-   protected abstract Object getKey(Subject subject, ConnectionRequestInfo cri,
-         boolean separateNoTx) throws ResourceException;
-
-   /**
-    * Determine the correct pool for this request,
-    * creates a new one when necessary.
-    *
-    * @param key the key to the pool
-    * @param subject the subject of the pool
-    * @param cri the connection request info
-    * @return the subpool context
-    * @throws ResourceException for any error
-    */
-   protected SubPoolContext getSubPool(Object key, Subject subject, ConnectionRequestInfo cri) throws ResourceException
-   {
-      SubPoolContext subPoolContext = subPools.get(key);
-      if (subPoolContext == null)
-      {
-         SubPoolContext newSubPoolContext = new SubPoolContext(getTransactionIntegration(), mcf, clf, subject,
-                                                               cri, poolConfiguration, this, log);
-         subPoolContext = subPools.putIfAbsent(key, newSubPoolContext);
-         if (subPoolContext == null)
-         {
-            subPoolContext = newSubPoolContext;
-         }
-      }
-
-      return subPoolContext;
-   }
-
-   /**
-    * Get any transaction integration associated with the pool.
-    *
-    * @return the transaction integration
-    */
-   protected TransactionIntegration getTransactionIntegration()
-   {
-      if (clf != null)
-      {
-         return clf.getTransactionIntegration();
-      }
-      else
-      {
-         return null;
-      }
-   }
-
-   /**
-    * Get any transaction manager associated with the pool.
-    *
-    * @return the transaction manager
-    */
-   protected TransactionManager getTransactionManager()
-   {
-      if (clf != null)
-      {
-         return clf.getTransactionManager();
-      }
-      else
-      {
-         return null;
-      }
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public void emptySubPool(ManagedConnectionPool pool)
-   {
-      if (pool != null)
-      {
-         Iterator<SubPoolContext> itSubPoolContexts = subPools.values().iterator();
-         SubPoolContext other = null;
-         while (itSubPoolContexts.hasNext())
-         {
-            other = itSubPoolContexts.next();
-            if (other.getSubPool() == pool && pool.isEmpty())
-            {
-               pool.shutdown();
-               itSubPoolContexts.remove();
-               break;
-            }
-         }
-      }
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public void flush()
-   {
-      flush(false);
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public void flush(boolean kill)
-   {
-      Set<SubPoolContext> clearSubPools = new HashSet<SubPoolContext>();
-
-      Iterator<SubPoolContext> itSubPoolContexts = subPools.values().iterator();
-      SubPoolContext subPoolContext = null;
-      while (itSubPoolContexts.hasNext())
-      {
-         subPoolContext = itSubPoolContexts.next();
-         ManagedConnectionPool mcp = subPoolContext.getSubPool();
-
-         mcp.flush(kill);
-
-         if (mcp.isEmpty())
-            clearSubPools.add(subPoolContext);
-      }
-
-      if (clearSubPools.size() > 0)
-      {
-         for (SubPoolContext spc : clearSubPools)
-         {
-            ManagedConnectionPool mcp = spc.getSubPool();
-            mcp.shutdown();
-
-            subPools.values().remove(spc);
-         }
-      }
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public ConnectionListener getConnection(Transaction trackByTransaction, Subject subject, ConnectionRequestInfo cri)
-      throws ResourceException
-   {
-      ConnectionListener cl = null;
-
-      boolean separateNoTx = false;
-
-      if (noTxSeparatePools)
-      {
-         separateNoTx = clf.isTransactional();
-      }
-
-      //Get specific sub-pool key
-      Object key = getKey(subject, cri, separateNoTx);
-
-      //Find sub-pool related with key
-      SubPoolContext subPoolContext = getSubPool(key, subject, cri);
-
-      //Sub-pool internal managed connection pool
-      ManagedConnectionPool imcp = subPoolContext.getSubPool();
-
-      // Are we doing track by transaction?
-      TransactionLocal trackByTx = subPoolContext.getTrackByTx();  // TODO - Use TSR
-
-      if (trackByTransaction == null || trackByTx == null)
-      {
-         cl = getSimpleConnection(subject, cri, subPoolContext);
-      } //end of if trackByTransaction
-
-      //Transaction old connections
-      if (cl == null)
-      {
-         cl = getTransactionOldConnection(trackByTx, trackByTransaction);
-      }
-
-      if (cl == null)
-      {
-         //Creats a new connection with given transaction
-         cl = getTransactionNewConnection(trackByTx, trackByTransaction, imcp, subject, cri);
-      }
-
-      return cl;
-   }
-
-   /**
-    * Gets simple connection listener that wraps connection.
-    * @param subject subject instance
-    * @param cri connection request info
-    * @param separateNoTx seperate pool for tx
-    * @return connection listener
-    * @throws ResourceException ResourceException
-    */
-   private ConnectionListener getSimpleConnection(final Subject subject, final ConnectionRequestInfo cri,
-         final SubPoolContext subPoolContext)
-      throws ResourceException
-   {
-      ConnectionListener cl = null;
-      ManagedConnectionPool imcp = null;
-
-      try
-      {
-         //Find internal managed pool
-         imcp = subPoolContext.getSubPool();
-
-         //Get connection from imcp
-         cl = imcp.getConnection(subject, cri);
-
-         log.tracef("Got connection from pool: %s", cl);
-
-         return cl;
-
-      }
-      catch (ResourceException re)
-      {
-         if (re instanceof RetryableException)
-         {
-            if (log.isDebugEnabled())
-               log.debug("Got a RetryableException - trying to reinitialize the pool");
-
-            // The IMCP is down - retry
-            imcp = subPoolContext.getSubPool();
-
-            // Make sure that IMCP is running
-            if (!imcp.isRunning())
-               imcp.reenable();
-
-            //Getting connection from pool
-            cl = imcp.getConnection(subject, cri);
-
-            log.tracef("Got connection from pool (retried): %s", cl);
-
-            return cl;
-         }
-         else
-         {
-            throw re;
-         }
-      }
-
-   }
-
-   /**
-    * Gets connection listener instance associated with transaction.
-    * This method is package protected beacause it is intended only for test case use.
-    * Please don't use it in your production code.
-    * @param trackByTx trnasaction local
-    * @param trackByTransaction transaction instance
-    * @return connection listener instance
-    * @throws ResourceException Thrown if an error occurs
-    */
-   ConnectionListener getTransactionOldConnection(TransactionLocal trackByTx, Transaction trackByTransaction)
-      throws ResourceException
-   {
-      ConnectionListener cl = null;
-
-      // Track by transaction // TODO - Use Coordinator
-      try
-      {
-         trackByTx.lock(trackByTransaction);
-      }
-      catch (Throwable t)
-      {
-         JBossResourceException.rethrowAsResourceException("Unable to get connection from the pool for tx="
-               + trackByTransaction, t);
-      }
-      try
-      {
-         // Already got one
-         cl = (ConnectionListener) trackByTx.get(trackByTransaction);
-         if (cl != null)
-         {
-            log.tracef("Previous connection tracked by transaction=%s tx=%s", cl, trackByTransaction);
-
-            return cl;
-         }
-      }
-      finally
-      {
-         trackByTx.unlock(trackByTransaction);
-      }
-
-      return cl;
-   }
-
-   /**
-    * Gets new connection listener if necessary instance with transaction.
-    * This method is package protected beacause it is intended only for test case use.
-    * Please don't use it in your production code.
-    * @param trackByTx trnasaction local
-    * @param trackByTransaction transaction instance
-    * @param mcp pool instance
-    * @param subject subject instance
-    * @param cri connection request info
-    * @return connection listener instance
-    * @throws ResourceException ResourceException
-    */
-   ConnectionListener getTransactionNewConnection(TransactionLocal trackByTx, Transaction trackByTransaction,
-         ManagedConnectionPool mcp, Subject subject, ConnectionRequestInfo cri)
-      throws ResourceException
-   {
-      ConnectionListener cl = null;
-
-      // Need a new one for this transaction
-      // This must be done outside the tx local lock, otherwise
-      // the tx timeout won't work and get connection can do a lot of other work
-      // with many opportunities for deadlocks.
-      // Instead we do a double check after we got the transaction to see
-      // whether another thread beat us to the punch.
-      cl = mcp.getConnection(subject, cri);
-      log.tracef("Got connection from pool tracked by transaction=%s tx=%s", cl, trackByTransaction);
-
-      // Relock and check/set status
-      try
-      {
-         trackByTx.lock(trackByTransaction);
-      }
-      catch (Throwable t)
-      {
-         mcp.returnConnection(cl, false);
-         log.tracef("Had to return connection tracked by transaction=%s tx=%s error=%s",
-                    cl, trackByTransaction, t.getMessage());
-
-         JBossResourceException.rethrowAsResourceException("Unable to get connection from the pool for tx="
-               + trackByTransaction, t);
-      }
-      try
-      {
-         // Check we weren't racing with another transaction
-         ConnectionListener other = (ConnectionListener) trackByTx.get(trackByTransaction);
-         if (other != null)
-         {
-            mcp.returnConnection(cl, false);
-
-            log.tracef("Another thread already got a connection tracked by transaction=%s tx=%s",
-                       other, trackByTransaction);
-
-            cl = other;
-         }
-
-         // This is the connection for this transaction
-         cl.setTrackByTx(true);
-         trackByTx.set(cl);
-
-         log.tracef("Using connection from pool tracked by transaction=%s tx=%s", cl, trackByTransaction);
-      }
-      finally
-      {
-         trackByTx.unlock(trackByTransaction);
-      }
-
-      return cl;
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public ManagedConnectionFactory getManagedConnectionFactory()
-   {
-      return mcf;
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public void returnConnection(ConnectionListener cl, boolean kill) throws ResourceException
-   {
-      cl.setTrackByTx(false);
-      //Get connection listener pool
-      ManagedConnectionPool mcp = (ManagedConnectionPool) cl.getContext();
-
-      //Return connection to the pool
-      mcp.returnConnection(cl, kill);
-
-      log.tracef("Returning connection to pool %s", cl);
-   }
-
-   /**
-    * Get the connection listener factory
-    * @return The value
-    */
-   protected ConnectionListenerFactory getConnectionListenerFactory()
-   {
-      return clf;
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public void setConnectionListenerFactory(ConnectionListenerFactory clf)
-   {
-      this.clf = clf;
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public void shutdown()
-   {
-      flush(true);
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public PoolStatistics getStatistics()
-   {
-      return statistics;
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public abstract boolean testConnection();
-
-   /**
-    * Test if a connection can be obtained
-    * @param subject Optional subject
-    * @return True if possible; otherwise false
-    */
-   protected boolean internalTestConnection(Subject subject)
-   {
-      boolean result = false;
-      ConnectionListener cl = null;
-      try
-      {
-         if (getStatistics().getAvailableCount() > 0)
-         {
-            cl = getConnection(null, subject, null);
-            result = true;
-         }
-      }
-      catch (Throwable ignored)
-      {
-         // Ignore
-      }
-      finally
-      {
-         if (cl != null)
-         {
-            try
-            {
-               returnConnection(cl, false);
-            }
-            catch (ResourceException ire)
-            {
-               // Ignore
-            }
-         }
-      }
-
-      return result;
-   }
-
-   /**
-    * Get the subPools. This method is package protected beacause it is intended only for test case use.
-    * Please don't use it in your production code.
-    *
-    * @return the subPools.
-    */
-   final ConcurrentMap<Object, SubPoolContext> getSubPools()
-   {
-      return subPools;
-   }
-}

Copied: projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/AbstractPool.java (from rev 111241, projects/jboss-jca/trunk/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/AbstractPool.java)
===================================================================
--- projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/AbstractPool.java	                        (rev 0)
+++ projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/AbstractPool.java	2011-04-25 14:41:10 UTC (rev 111243)
@@ -0,0 +1,593 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008-2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file 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.jca.core.connectionmanager.pool;
+
+import org.jboss.jca.common.JBossResourceException;
+import org.jboss.jca.core.api.connectionmanager.pool.PoolConfiguration;
+import org.jboss.jca.core.api.connectionmanager.pool.PoolStatistics;
+import org.jboss.jca.core.connectionmanager.listener.ConnectionListener;
+import org.jboss.jca.core.connectionmanager.listener.ConnectionListenerFactory;
+import org.jboss.jca.core.connectionmanager.pool.api.Pool;
+import org.jboss.jca.core.connectionmanager.pool.mcp.ManagedConnectionPool;
+import org.jboss.jca.core.spi.transaction.TransactionIntegration;
+import org.jboss.jca.core.spi.transaction.local.TransactionLocal;
+
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.Set;
+import java.util.concurrent.ConcurrentHashMap;
+import java.util.concurrent.ConcurrentMap;
+
+import javax.resource.ResourceException;
+import javax.resource.spi.ConnectionRequestInfo;
+import javax.resource.spi.ManagedConnectionFactory;
+import javax.resource.spi.RetryableException;
+import javax.security.auth.Subject;
+import javax.transaction.Transaction;
+import javax.transaction.TransactionManager;
+
+import org.jboss.logging.Logger;
+
+/**
+ * Abstract pool implementation.
+ * <p>
+ * It can contains sub-pools according to the semantic of
+ * the pool. Concrete implementatins override {@link AbstractPool#getKey(Subject, ConnectionRequestInfo, boolean)}
+ * method to create map key object.
+ * </p>
+ * @author <a href="mailto:gurkanerdogdu at yahoo.com">Gurkan Erdogdu</a>
+ * @version $Rev$
+ *
+ */
+public abstract class AbstractPool implements Pool
+{
+   /** The logger */
+   protected final Logger log = Logger.getLogger(getClass());
+
+   /** Is trace enabled */
+   private boolean trace = false;
+
+   /** The subpools, maps key --> pool */
+   private final ConcurrentMap<Object, SubPoolContext> subPools = new ConcurrentHashMap<Object, SubPoolContext>();
+
+   /** The managed connection factory for this pool */
+   private final ManagedConnectionFactory mcf;
+
+   /** The connection listener factory for this pool*/
+   private ConnectionListenerFactory clf;
+
+   /** The pool parameters */
+   private final PoolConfiguration poolConfiguration;
+
+   /** Whether to use separate pools for transactional and non-transaction use */
+   private final boolean noTxSeparatePools;
+
+   /** The poolName */
+   private String poolName;
+
+   /** Statistics */
+   private SubPoolStatistics statistics;
+
+   /**
+    * Create a new base pool.
+    *
+    * @param mcf the managed connection factory
+    * @param pc the pool configuration
+    * @param noTxSeparatePools noTxSeparatePool
+    */
+   protected AbstractPool(final ManagedConnectionFactory mcf, final PoolConfiguration pc,
+                          final boolean noTxSeparatePools)
+   {
+      if (mcf == null)
+         throw new IllegalArgumentException("MCF is null");
+
+      if (pc == null)
+         throw new IllegalArgumentException("PoolConfiguration is null");
+
+      this.mcf = mcf;
+      this.poolConfiguration = pc;
+      this.noTxSeparatePools = noTxSeparatePools;
+      this.trace = log.isTraceEnabled();
+      this.statistics = new SubPoolStatistics(pc.getMaxSize(), subPools);
+   }
+
+   /**
+    * Sets pool name.
+    * @param poolName pool name
+    */
+   public void setName(String poolName)
+   {
+      this.poolName = poolName;
+   }
+
+   /**
+    * Gets pool name.
+    * @return pool name
+    */
+   public String getName()
+   {
+      return poolName;
+   }
+
+   /**
+    * Retrieve the key for this request.
+    *
+    * @param subject the subject
+    * @param cri the connection request information
+    * @param separateNoTx separateNoTx
+    * @return the key
+    * @throws ResourceException for any error
+    */
+   protected abstract Object getKey(Subject subject, ConnectionRequestInfo cri,
+         boolean separateNoTx) throws ResourceException;
+
+   /**
+    * Determine the correct pool for this request,
+    * creates a new one when necessary.
+    *
+    * @param key the key to the pool
+    * @param subject the subject of the pool
+    * @param cri the connection request info
+    * @return the subpool context
+    * @throws ResourceException for any error
+    */
+   protected SubPoolContext getSubPool(Object key, Subject subject, ConnectionRequestInfo cri) throws ResourceException
+   {
+      SubPoolContext subPoolContext = subPools.get(key);
+      if (subPoolContext == null)
+      {
+         SubPoolContext newSubPoolContext = new SubPoolContext(getTransactionIntegration(), mcf, clf, subject,
+                                                               cri, poolConfiguration, this, log);
+         subPoolContext = subPools.putIfAbsent(key, newSubPoolContext);
+         if (subPoolContext == null)
+         {
+            subPoolContext = newSubPoolContext;
+         }
+      }
+
+      return subPoolContext;
+   }
+
+   /**
+    * Get any transaction integration associated with the pool.
+    *
+    * @return the transaction integration
+    */
+   protected TransactionIntegration getTransactionIntegration()
+   {
+      if (clf != null)
+      {
+         return clf.getTransactionIntegration();
+      }
+      else
+      {
+         return null;
+      }
+   }
+
+   /**
+    * Get any transaction manager associated with the pool.
+    *
+    * @return the transaction manager
+    */
+   protected TransactionManager getTransactionManager()
+   {
+      if (clf != null)
+      {
+         return clf.getTransactionManager();
+      }
+      else
+      {
+         return null;
+      }
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public void emptySubPool(ManagedConnectionPool pool)
+   {
+      if (pool != null)
+      {
+         Iterator<SubPoolContext> itSubPoolContexts = subPools.values().iterator();
+         SubPoolContext other = null;
+         while (itSubPoolContexts.hasNext())
+         {
+            other = itSubPoolContexts.next();
+            if (other.getSubPool() == pool && pool.isEmpty())
+            {
+               pool.shutdown();
+               itSubPoolContexts.remove();
+               break;
+            }
+         }
+      }
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public void flush()
+   {
+      flush(false);
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public void flush(boolean kill)
+   {
+      Set<SubPoolContext> clearSubPools = new HashSet<SubPoolContext>();
+
+      Iterator<SubPoolContext> itSubPoolContexts = subPools.values().iterator();
+      SubPoolContext subPoolContext = null;
+      while (itSubPoolContexts.hasNext())
+      {
+         subPoolContext = itSubPoolContexts.next();
+         ManagedConnectionPool mcp = subPoolContext.getSubPool();
+
+         mcp.flush(kill);
+
+         if (mcp.isEmpty())
+            clearSubPools.add(subPoolContext);
+      }
+
+      if (clearSubPools.size() > 0)
+      {
+         for (SubPoolContext spc : clearSubPools)
+         {
+            ManagedConnectionPool mcp = spc.getSubPool();
+            mcp.shutdown();
+
+            subPools.values().remove(spc);
+         }
+      }
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public ConnectionListener getConnection(Transaction trackByTransaction, Subject subject, ConnectionRequestInfo cri)
+      throws ResourceException
+   {
+      ConnectionListener cl = null;
+
+      boolean separateNoTx = false;
+
+      if (noTxSeparatePools)
+      {
+         separateNoTx = clf.isTransactional();
+      }
+
+      //Get specific sub-pool key
+      Object key = getKey(subject, cri, separateNoTx);
+
+      //Find sub-pool related with key
+      SubPoolContext subPoolContext = getSubPool(key, subject, cri);
+
+      //Sub-pool internal managed connection pool
+      ManagedConnectionPool imcp = subPoolContext.getSubPool();
+
+      // Are we doing track by transaction?
+      TransactionLocal trackByTx = subPoolContext.getTrackByTx();  // TODO - Use TSR
+
+      if (trackByTransaction == null || trackByTx == null)
+      {
+         cl = getSimpleConnection(subject, cri, subPoolContext);
+      } //end of if trackByTransaction
+
+      //Transaction old connections
+      if (cl == null)
+      {
+         cl = getTransactionOldConnection(trackByTx, trackByTransaction);
+      }
+
+      if (cl == null)
+      {
+         //Creats a new connection with given transaction
+         cl = getTransactionNewConnection(trackByTx, trackByTransaction, imcp, subject, cri);
+      }
+
+      return cl;
+   }
+
+   /**
+    * Gets simple connection listener that wraps connection.
+    * @param subject subject instance
+    * @param cri connection request info
+    * @param separateNoTx seperate pool for tx
+    * @return connection listener
+    * @throws ResourceException ResourceException
+    */
+   private ConnectionListener getSimpleConnection(final Subject subject, final ConnectionRequestInfo cri,
+         final SubPoolContext subPoolContext)
+      throws ResourceException
+   {
+      ConnectionListener cl = null;
+      ManagedConnectionPool imcp = null;
+
+      try
+      {
+         //Find internal managed pool
+         imcp = subPoolContext.getSubPool();
+
+         //Get connection from imcp
+         cl = imcp.getConnection(subject, cri);
+
+         log.tracef("Got connection from pool: %s", cl);
+
+         return cl;
+
+      }
+      catch (ResourceException re)
+      {
+         if (re instanceof RetryableException)
+         {
+            if (log.isDebugEnabled())
+               log.debug("Got a RetryableException - trying to reinitialize the pool");
+
+            // The IMCP is down - retry
+            imcp = subPoolContext.getSubPool();
+
+            // Make sure that IMCP is running
+            if (!imcp.isRunning())
+               imcp.reenable();
+
+            //Getting connection from pool
+            cl = imcp.getConnection(subject, cri);
+
+            log.tracef("Got connection from pool (retried): %s", cl);
+
+            return cl;
+         }
+         else
+         {
+            throw re;
+         }
+      }
+
+   }
+
+   /**
+    * Gets connection listener instance associated with transaction.
+    * This method is package protected beacause it is intended only for test case use.
+    * Please don't use it in your production code.
+    * @param trackByTx trnasaction local
+    * @param trackByTransaction transaction instance
+    * @return connection listener instance
+    * @throws ResourceException Thrown if an error occurs
+    */
+   ConnectionListener getTransactionOldConnection(TransactionLocal trackByTx, Transaction trackByTransaction)
+      throws ResourceException
+   {
+      ConnectionListener cl = null;
+
+      // Track by transaction // TODO - Use Coordinator
+      try
+      {
+         trackByTx.lock(trackByTransaction);
+      }
+      catch (Throwable t)
+      {
+         JBossResourceException.rethrowAsResourceException("Unable to get connection from the pool for tx="
+               + trackByTransaction, t);
+      }
+      try
+      {
+         // Already got one
+         cl = (ConnectionListener) trackByTx.get(trackByTransaction);
+         if (cl != null)
+         {
+            log.tracef("Previous connection tracked by transaction=%s tx=%s", cl, trackByTransaction);
+
+            return cl;
+         }
+      }
+      finally
+      {
+         trackByTx.unlock(trackByTransaction);
+      }
+
+      return cl;
+   }
+
+   /**
+    * Gets new connection listener if necessary instance with transaction.
+    * This method is package protected beacause it is intended only for test case use.
+    * Please don't use it in your production code.
+    * @param trackByTx trnasaction local
+    * @param trackByTransaction transaction instance
+    * @param mcp pool instance
+    * @param subject subject instance
+    * @param cri connection request info
+    * @return connection listener instance
+    * @throws ResourceException ResourceException
+    */
+   ConnectionListener getTransactionNewConnection(TransactionLocal trackByTx, Transaction trackByTransaction,
+         ManagedConnectionPool mcp, Subject subject, ConnectionRequestInfo cri)
+      throws ResourceException
+   {
+      ConnectionListener cl = null;
+
+      // Need a new one for this transaction
+      // This must be done outside the tx local lock, otherwise
+      // the tx timeout won't work and get connection can do a lot of other work
+      // with many opportunities for deadlocks.
+      // Instead we do a double check after we got the transaction to see
+      // whether another thread beat us to the punch.
+      cl = mcp.getConnection(subject, cri);
+      log.tracef("Got connection from pool tracked by transaction=%s tx=%s", cl, trackByTransaction);
+
+      // Relock and check/set status
+      try
+      {
+         trackByTx.lock(trackByTransaction);
+      }
+      catch (Throwable t)
+      {
+         mcp.returnConnection(cl, false);
+         log.tracef("Had to return connection tracked by transaction=%s tx=%s error=%s",
+                    cl, trackByTransaction, t.getMessage());
+
+         JBossResourceException.rethrowAsResourceException("Unable to get connection from the pool for tx="
+               + trackByTransaction, t);
+      }
+      try
+      {
+         // Check we weren't racing with another transaction
+         ConnectionListener other = (ConnectionListener) trackByTx.get(trackByTransaction);
+         if (other != null)
+         {
+            mcp.returnConnection(cl, false);
+
+            log.tracef("Another thread already got a connection tracked by transaction=%s tx=%s",
+                       other, trackByTransaction);
+
+            cl = other;
+         }
+
+         // This is the connection for this transaction
+         cl.setTrackByTx(true);
+         trackByTx.set(cl);
+
+         log.tracef("Using connection from pool tracked by transaction=%s tx=%s", cl, trackByTransaction);
+      }
+      finally
+      {
+         trackByTx.unlock(trackByTransaction);
+      }
+
+      return cl;
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public ManagedConnectionFactory getManagedConnectionFactory()
+   {
+      return mcf;
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public void returnConnection(ConnectionListener cl, boolean kill) throws ResourceException
+   {
+      cl.setTrackByTx(false);
+      //Get connection listener pool
+      ManagedConnectionPool mcp = (ManagedConnectionPool) cl.getContext();
+
+      //Return connection to the pool
+      mcp.returnConnection(cl, kill);
+
+      log.tracef("Returning connection to pool %s", cl);
+   }
+
+   /**
+    * Get the connection listener factory
+    * @return The value
+    */
+   protected ConnectionListenerFactory getConnectionListenerFactory()
+   {
+      return clf;
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public void setConnectionListenerFactory(ConnectionListenerFactory clf)
+   {
+      this.clf = clf;
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public void shutdown()
+   {
+      flush(true);
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public PoolStatistics getStatistics()
+   {
+      return statistics;
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public abstract boolean testConnection();
+
+   /**
+    * Test if a connection can be obtained
+    * @param subject Optional subject
+    * @return True if possible; otherwise false
+    */
+   protected boolean internalTestConnection(Subject subject)
+   {
+      boolean result = false;
+      ConnectionListener cl = null;
+      try
+      {
+         if (((SubPoolStatistics)getStatistics()).getAvailableCount(true) > 0)
+         {
+            cl = getConnection(null, subject, null);
+            result = true;
+         }
+      }
+      catch (Throwable ignored)
+      {
+         // Ignore
+      }
+      finally
+      {
+         if (cl != null)
+         {
+            try
+            {
+               returnConnection(cl, false);
+            }
+            catch (ResourceException ire)
+            {
+               // Ignore
+            }
+         }
+      }
+
+      return result;
+   }
+
+   /**
+    * Get the subPools. This method is package protected beacause it is intended only for test case use.
+    * Please don't use it in your production code.
+    *
+    * @return the subPools.
+    */
+   final ConcurrentMap<Object, SubPoolContext> getSubPools()
+   {
+      return subPools;
+   }
+}

Deleted: projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/SubPoolStatistics.java
===================================================================
--- projects/jboss-jca/trunk/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/SubPoolStatistics.java	2011-04-25 08:15:56 UTC (rev 111240)
+++ projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/SubPoolStatistics.java	2011-04-25 14:41:10 UTC (rev 111243)
@@ -1,529 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2011, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file 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.jca.core.connectionmanager.pool;
-
-import org.jboss.jca.core.api.connectionmanager.pool.PoolStatistics;
-
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Locale;
-import java.util.Map;
-import java.util.ResourceBundle;
-import java.util.Set;
-import java.util.concurrent.ConcurrentMap;
-import java.util.concurrent.atomic.AtomicBoolean;
-
-/**
- * Sub pool statistics.
- *
- * @author <a href="jesper.pedersen at jboss.org">Jesper Pedersen</a>
- */
-public class SubPoolStatistics implements PoolStatistics
-{
-   private static final String ACTIVE_COUNT = "ActiveCount";
-   private static final String AVAILABLE_COUNT = "AvailableCount";
-   private static final String AVERAGE_BLOCKING_TIME = "AverageBlockingTime";
-   private static final String AVERAGE_CREATION_TIME = "AverageCreationTime";
-   private static final String CREATED_COUNT = "CreatedCount";
-   private static final String DESTROYED_COUNT = "DestroyedCount";
-   private static final String MAX_CREATION_TIME = "MaxCreationTime";
-   private static final String MAX_USED_COUNT = "MaxUsedCount";
-   private static final String MAX_WAIT_COUNT = "MaxWaitCount";
-   private static final String MAX_WAIT_TIME = "MaxWaitTime";
-   private static final String TIMED_OUT = "TimedOut";
-   private static final String TOTAL_BLOCKING_TIME = "TotalBlockingTime";
-   private static final String TOTAL_CREATION_TIME = "TotalCreationTime";
-
-   private int maxPoolSize;
-   private ConcurrentMap<Object, SubPoolContext> subPools;
-   private Set<String> names;
-   private Map<String, Class> types;
-   private AtomicBoolean enabled;
-   private Map<Locale, ResourceBundle> rbs;
-
-   /**
-    * Constructor
-    * @param maxPoolSize The maximum pool size
-    * @param subPools The sub pool map
-    */
-   public SubPoolStatistics(int maxPoolSize, ConcurrentMap<Object, SubPoolContext> subPools)
-   {
-      this.maxPoolSize = maxPoolSize;
-      this.subPools = subPools;
-
-      Set<String> n = new HashSet<String>();
-      Map<String, Class> t = new HashMap<String, Class>();
-
-      n.add(ACTIVE_COUNT);
-      t.put(ACTIVE_COUNT, int.class);
-
-      n.add(AVAILABLE_COUNT);
-      t.put(AVAILABLE_COUNT, int.class);
-
-      n.add(AVERAGE_BLOCKING_TIME);
-      t.put(AVERAGE_BLOCKING_TIME, long.class);
-
-      n.add(AVERAGE_CREATION_TIME);
-      t.put(AVERAGE_CREATION_TIME, long.class);
-
-      n.add(CREATED_COUNT);
-      t.put(CREATED_COUNT, int.class);
-
-      n.add(DESTROYED_COUNT);
-      t.put(DESTROYED_COUNT, int.class);
-
-      n.add(MAX_CREATION_TIME);
-      t.put(MAX_CREATION_TIME, long.class);
-
-      n.add(MAX_USED_COUNT);
-      t.put(MAX_USED_COUNT, int.class);
-
-      n.add(MAX_WAIT_TIME);
-      t.put(MAX_WAIT_TIME, long.class);
-
-      n.add(TIMED_OUT);
-      t.put(TIMED_OUT, int.class);
-
-      n.add(TOTAL_BLOCKING_TIME);
-      t.put(TOTAL_BLOCKING_TIME, long.class);
-
-      n.add(TOTAL_CREATION_TIME);
-      t.put(TOTAL_CREATION_TIME, long.class);
-
-      this.names = Collections.unmodifiableSet(n);
-      this.types = Collections.unmodifiableMap(t);
-      this.enabled = new AtomicBoolean(true);
-      
-      ResourceBundle defaultResourceBundle = 
-         ResourceBundle.getBundle("poolstatistics", Locale.US, SubPoolStatistics.class.getClassLoader());
-      this.rbs = new HashMap<Locale, ResourceBundle>(1);
-      this.rbs.put(Locale.US, defaultResourceBundle);
-
-      clear();
-   }
-
-
-   /**
-    * {@inheritDoc}
-    */
-   public Set<String> getNames()
-   {
-      return names;
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public Class getType(String name)
-   {
-      return types.get(name);
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public String getDescription(String name)
-   {
-      return getDescription(name, Locale.US);
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public String getDescription(String name, Locale locale)
-   {
-      ResourceBundle rb = rbs.get(locale);
-
-      if (rb == null)
-      {
-         ResourceBundle newResourceBundle =
-            ResourceBundle.getBundle("poolstatistics", locale, SubPoolStatistics.class.getClassLoader());
-
-         if (newResourceBundle != null)
-            rbs.put(locale, newResourceBundle);
-      }
-
-      if (rb == null)
-         rb = rbs.get(Locale.US);
-
-      if (rb != null)
-         return rb.getString(name);
-
-      return "";
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   @Override
-   public Object getValue(String name)
-   {
-      if (ACTIVE_COUNT.equals(name))
-      {
-         return getActiveCount();
-      }
-      else if (AVAILABLE_COUNT.equals(name))
-      {
-         return getAvailableCount();
-      }
-      else if (AVERAGE_BLOCKING_TIME.equals(name))
-      {
-         return getAverageBlockingTime();
-      }
-      else if (AVERAGE_CREATION_TIME.equals(name))
-      {
-         return getAverageCreationTime();
-      }
-      else if (CREATED_COUNT.equals(name))
-      {
-         return getCreatedCount();
-      }
-      else if (DESTROYED_COUNT.equals(name))
-      {
-         return getDestroyedCount();
-      }
-      else if (MAX_CREATION_TIME.equals(name))
-      {
-         return getMaxCreationTime();
-      }
-      else if (MAX_USED_COUNT.equals(name))
-      {
-         return getMaxUsedCount();
-      }
-      else if (MAX_WAIT_COUNT.equals(name))
-      {
-         return getMaxWaitCount();
-      }
-      else if (MAX_WAIT_TIME.equals(name))
-      {
-         return getMaxWaitTime();
-      }
-      else if (TIMED_OUT.equals(name))
-      {
-         return getTimedOut();
-      }
-      else if (TOTAL_BLOCKING_TIME.equals(name))
-      {
-         return getTotalBlockingTime();
-      }
-      else if (TOTAL_CREATION_TIME.equals(name))
-      {
-         return getTotalCreationTime();
-      }
-
-      return null;
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public boolean isEnabled()
-   {
-      return enabled.get();
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   @Override
-   public void setEnabled(boolean v)
-   {
-      enabled.set(v);
-
-      for (SubPoolContext spc : subPools.values())
-      {
-         spc.getSubPool().getStatistics().setEnabled(v);
-      }
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public int getActiveCount()
-   {
-      if (isEnabled())
-      {
-         int result = 0;
-
-         for (SubPoolContext spc : subPools.values())
-         {
-            result += spc.getSubPool().getStatistics().getActiveCount();
-         }
-         
-         return result;
-      }
-
-      return 0;
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public int getAvailableCount()
-   {
-      if (isEnabled())
-      {
-         int result = -1;
-
-         if (subPools.size() > 0)
-         {
-            result = 0;
-            for (SubPoolContext spc : subPools.values())
-            {
-               result += spc.getSubPool().getStatistics().getAvailableCount();
-            }
-         }
-         
-         if (result != -1)
-            return result;
-
-         return maxPoolSize;
-      }
-
-      return 0;
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public long getAverageBlockingTime()
-   {
-      if (isEnabled())
-         return getCreatedCount() != 0 ? getTotalBlockingTime() / getCreatedCount() : 0;
-
-      return 0;
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public long getAverageCreationTime()
-   {
-      if (isEnabled())
-         return getCreatedCount() != 0 ? getTotalCreationTime() / getCreatedCount() : 0;
-
-      return 0;
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public int getCreatedCount()
-   {
-      if (isEnabled())
-      {
-         int result = 0;
-
-         for (SubPoolContext spc : subPools.values())
-         {
-            result += spc.getSubPool().getStatistics().getCreatedCount();
-         }
-
-         return result;
-      }
-
-      return 0;
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public int getDestroyedCount()
-   {
-      if (isEnabled())
-      {
-         int result = 0;
-
-         for (SubPoolContext spc : subPools.values())
-         {
-            result += spc.getSubPool().getStatistics().getDestroyedCount();
-         }
-
-         return result;
-      }
-
-      return 0;
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public long getMaxCreationTime()
-   {
-      if (isEnabled())
-      {
-         long result = Long.MIN_VALUE;
-
-         for (SubPoolContext spc : subPools.values())
-         {
-            long v = spc.getSubPool().getStatistics().getMaxCreationTime();
-            if (v > result)
-               result = v;
-         }
-
-         return result != Long.MIN_VALUE ? result : 0;
-      }
-
-      return 0;
-   }
-
-   /**
-    * Get max used count
-    * @return The value
-    */
-   public int getMaxUsedCount()
-   {
-      if (isEnabled())
-      {
-         int result = Integer.MIN_VALUE;
-
-         for (SubPoolContext spc : subPools.values())
-         {
-            int v = spc.getSubPool().getStatistics().getMaxUsedCount();
-            if (v > result)
-               result = v;
-         }
-
-         return result != Integer.MIN_VALUE ? result : 0;
-      }
-
-      return 0;
-   }
-
-   /**
-    * Get max wait count
-    * @return The value
-    */
-   public int getMaxWaitCount()
-   {
-      if (isEnabled())
-      {
-         int result = Integer.MIN_VALUE;
-
-         for (SubPoolContext spc : subPools.values())
-         {
-            int v = spc.getSubPool().getStatistics().getMaxWaitCount();
-            if (v > result)
-               result = v;
-         }
-
-         return result != Integer.MIN_VALUE ? result : 0;
-      }
-
-      return 0;
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public long getMaxWaitTime()
-   {
-      if (isEnabled())
-      {
-         long result = Long.MIN_VALUE;
-
-         for (SubPoolContext spc : subPools.values())
-         {
-            long v = spc.getSubPool().getStatistics().getMaxWaitTime();
-            if (v > result)
-               result = v;
-         }
-
-         return result != Long.MIN_VALUE ? result : 0;
-      }
-
-      return 0;
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public int getTimedOut()
-   {
-      if (isEnabled())
-      {
-         int result = 0;
-
-         for (SubPoolContext spc : subPools.values())
-         {
-            result += spc.getSubPool().getStatistics().getTimedOut();
-         }
-
-         return result;
-      }
-
-      return 0;
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public long getTotalBlockingTime()
-   {
-      if (isEnabled())
-      {
-         long result = 0;
-
-         for (SubPoolContext spc : subPools.values())
-         {
-            result += spc.getSubPool().getStatistics().getTotalBlockingTime();
-         }
-
-         return result;
-      }
-
-      return 0;
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public long getTotalCreationTime()
-   {
-      if (isEnabled())
-      {
-         long result = 0;
-
-         for (SubPoolContext spc : subPools.values())
-         {
-            result += spc.getSubPool().getStatistics().getTotalCreationTime();
-         }
-
-         return result;
-      }
-
-      return 0;
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public void clear()
-   {
-      for (SubPoolContext spc : subPools.values())
-      {
-         spc.getSubPool().getStatistics().clear();
-      }
-   }
-}

Copied: projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/SubPoolStatistics.java (from rev 111241, projects/jboss-jca/trunk/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/SubPoolStatistics.java)
===================================================================
--- projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/SubPoolStatistics.java	                        (rev 0)
+++ projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/SubPoolStatistics.java	2011-04-25 14:41:10 UTC (rev 111243)
@@ -0,0 +1,542 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2011, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file 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.jca.core.connectionmanager.pool;
+
+import org.jboss.jca.core.api.connectionmanager.pool.PoolStatistics;
+
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Locale;
+import java.util.Map;
+import java.util.ResourceBundle;
+import java.util.Set;
+import java.util.concurrent.ConcurrentMap;
+import java.util.concurrent.atomic.AtomicBoolean;
+
+/**
+ * Sub pool statistics.
+ *
+ * @author <a href="jesper.pedersen at jboss.org">Jesper Pedersen</a>
+ */
+public class SubPoolStatistics implements PoolStatistics
+{
+   /** Serial version uid */
+   private static final long serialVersionUID = 1L;
+
+   private static final String ACTIVE_COUNT = "ActiveCount";
+   private static final String AVAILABLE_COUNT = "AvailableCount";
+   private static final String AVERAGE_BLOCKING_TIME = "AverageBlockingTime";
+   private static final String AVERAGE_CREATION_TIME = "AverageCreationTime";
+   private static final String CREATED_COUNT = "CreatedCount";
+   private static final String DESTROYED_COUNT = "DestroyedCount";
+   private static final String MAX_CREATION_TIME = "MaxCreationTime";
+   private static final String MAX_USED_COUNT = "MaxUsedCount";
+   private static final String MAX_WAIT_COUNT = "MaxWaitCount";
+   private static final String MAX_WAIT_TIME = "MaxWaitTime";
+   private static final String TIMED_OUT = "TimedOut";
+   private static final String TOTAL_BLOCKING_TIME = "TotalBlockingTime";
+   private static final String TOTAL_CREATION_TIME = "TotalCreationTime";
+
+   private int maxPoolSize;
+   private ConcurrentMap<Object, SubPoolContext> subPools;
+   private Set<String> names;
+   private Map<String, Class> types;
+   private AtomicBoolean enabled;
+   private Map<Locale, ResourceBundle> rbs;
+
+   /**
+    * Constructor
+    * @param maxPoolSize The maximum pool size
+    * @param subPools The sub pool map
+    */
+   public SubPoolStatistics(int maxPoolSize, ConcurrentMap<Object, SubPoolContext> subPools)
+   {
+      this.maxPoolSize = maxPoolSize;
+      this.subPools = subPools;
+
+      Set<String> n = new HashSet<String>();
+      Map<String, Class> t = new HashMap<String, Class>();
+
+      n.add(ACTIVE_COUNT);
+      t.put(ACTIVE_COUNT, int.class);
+
+      n.add(AVAILABLE_COUNT);
+      t.put(AVAILABLE_COUNT, int.class);
+
+      n.add(AVERAGE_BLOCKING_TIME);
+      t.put(AVERAGE_BLOCKING_TIME, long.class);
+
+      n.add(AVERAGE_CREATION_TIME);
+      t.put(AVERAGE_CREATION_TIME, long.class);
+
+      n.add(CREATED_COUNT);
+      t.put(CREATED_COUNT, int.class);
+
+      n.add(DESTROYED_COUNT);
+      t.put(DESTROYED_COUNT, int.class);
+
+      n.add(MAX_CREATION_TIME);
+      t.put(MAX_CREATION_TIME, long.class);
+
+      n.add(MAX_USED_COUNT);
+      t.put(MAX_USED_COUNT, int.class);
+
+      n.add(MAX_WAIT_TIME);
+      t.put(MAX_WAIT_TIME, long.class);
+
+      n.add(TIMED_OUT);
+      t.put(TIMED_OUT, int.class);
+
+      n.add(TOTAL_BLOCKING_TIME);
+      t.put(TOTAL_BLOCKING_TIME, long.class);
+
+      n.add(TOTAL_CREATION_TIME);
+      t.put(TOTAL_CREATION_TIME, long.class);
+
+      this.names = Collections.unmodifiableSet(n);
+      this.types = Collections.unmodifiableMap(t);
+      this.enabled = new AtomicBoolean(true);
+      
+      ResourceBundle defaultResourceBundle = 
+         ResourceBundle.getBundle("poolstatistics", Locale.US, SubPoolStatistics.class.getClassLoader());
+      this.rbs = new HashMap<Locale, ResourceBundle>(1);
+      this.rbs.put(Locale.US, defaultResourceBundle);
+
+      clear();
+   }
+
+
+   /**
+    * {@inheritDoc}
+    */
+   public Set<String> getNames()
+   {
+      return names;
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public Class getType(String name)
+   {
+      return types.get(name);
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public String getDescription(String name)
+   {
+      return getDescription(name, Locale.US);
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public String getDescription(String name, Locale locale)
+   {
+      ResourceBundle rb = rbs.get(locale);
+
+      if (rb == null)
+      {
+         ResourceBundle newResourceBundle =
+            ResourceBundle.getBundle("poolstatistics", locale, SubPoolStatistics.class.getClassLoader());
+
+         if (newResourceBundle != null)
+            rbs.put(locale, newResourceBundle);
+      }
+
+      if (rb == null)
+         rb = rbs.get(Locale.US);
+
+      if (rb != null)
+         return rb.getString(name);
+
+      return "";
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   @Override
+   public Object getValue(String name)
+   {
+      if (ACTIVE_COUNT.equals(name))
+      {
+         return getActiveCount();
+      }
+      else if (AVAILABLE_COUNT.equals(name))
+      {
+         return getAvailableCount();
+      }
+      else if (AVERAGE_BLOCKING_TIME.equals(name))
+      {
+         return getAverageBlockingTime();
+      }
+      else if (AVERAGE_CREATION_TIME.equals(name))
+      {
+         return getAverageCreationTime();
+      }
+      else if (CREATED_COUNT.equals(name))
+      {
+         return getCreatedCount();
+      }
+      else if (DESTROYED_COUNT.equals(name))
+      {
+         return getDestroyedCount();
+      }
+      else if (MAX_CREATION_TIME.equals(name))
+      {
+         return getMaxCreationTime();
+      }
+      else if (MAX_USED_COUNT.equals(name))
+      {
+         return getMaxUsedCount();
+      }
+      else if (MAX_WAIT_COUNT.equals(name))
+      {
+         return getMaxWaitCount();
+      }
+      else if (MAX_WAIT_TIME.equals(name))
+      {
+         return getMaxWaitTime();
+      }
+      else if (TIMED_OUT.equals(name))
+      {
+         return getTimedOut();
+      }
+      else if (TOTAL_BLOCKING_TIME.equals(name))
+      {
+         return getTotalBlockingTime();
+      }
+      else if (TOTAL_CREATION_TIME.equals(name))
+      {
+         return getTotalCreationTime();
+      }
+
+      return null;
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public boolean isEnabled()
+   {
+      return enabled.get();
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   @Override
+   public void setEnabled(boolean v)
+   {
+      enabled.set(v);
+
+      for (SubPoolContext spc : subPools.values())
+      {
+         spc.getSubPool().getStatistics().setEnabled(v);
+      }
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public int getActiveCount()
+   {
+      if (isEnabled())
+      {
+         int result = 0;
+
+         for (SubPoolContext spc : subPools.values())
+         {
+            result += spc.getSubPool().getStatistics().getActiveCount();
+         }
+         
+         return result;
+      }
+
+      return 0;
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public int getAvailableCount()
+   {
+      return getAvailableCount(isEnabled());
+   }
+
+   /**
+    * The available count
+    * @param override True if the value should be returned
+    * @return The value
+    */
+   int getAvailableCount(boolean override)
+   {
+      if (override)
+      {
+         int result = -1;
+
+         if (subPools.size() > 0)
+         {
+            result = 0;
+            for (SubPoolContext spc : subPools.values())
+            {
+               result += spc.getSubPool().getStatistics().getAvailableCount();
+            }
+         }
+         
+         if (result != -1)
+            return result;
+
+         return maxPoolSize;
+      }
+
+      return 0;
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public long getAverageBlockingTime()
+   {
+      if (isEnabled())
+         return getCreatedCount() != 0 ? getTotalBlockingTime() / getCreatedCount() : 0;
+
+      return 0;
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public long getAverageCreationTime()
+   {
+      if (isEnabled())
+         return getCreatedCount() != 0 ? getTotalCreationTime() / getCreatedCount() : 0;
+
+      return 0;
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public int getCreatedCount()
+   {
+      if (isEnabled())
+      {
+         int result = 0;
+
+         for (SubPoolContext spc : subPools.values())
+         {
+            result += spc.getSubPool().getStatistics().getCreatedCount();
+         }
+
+         return result;
+      }
+
+      return 0;
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public int getDestroyedCount()
+   {
+      if (isEnabled())
+      {
+         int result = 0;
+
+         for (SubPoolContext spc : subPools.values())
+         {
+            result += spc.getSubPool().getStatistics().getDestroyedCount();
+         }
+
+         return result;
+      }
+
+      return 0;
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public long getMaxCreationTime()
+   {
+      if (isEnabled())
+      {
+         long result = Long.MIN_VALUE;
+
+         for (SubPoolContext spc : subPools.values())
+         {
+            long v = spc.getSubPool().getStatistics().getMaxCreationTime();
+            if (v > result)
+               result = v;
+         }
+
+         return result != Long.MIN_VALUE ? result : 0;
+      }
+
+      return 0;
+   }
+
+   /**
+    * Get max used count
+    * @return The value
+    */
+   public int getMaxUsedCount()
+   {
+      if (isEnabled())
+      {
+         int result = Integer.MIN_VALUE;
+
+         for (SubPoolContext spc : subPools.values())
+         {
+            int v = spc.getSubPool().getStatistics().getMaxUsedCount();
+            if (v > result)
+               result = v;
+         }
+
+         return result != Integer.MIN_VALUE ? result : 0;
+      }
+
+      return 0;
+   }
+
+   /**
+    * Get max wait count
+    * @return The value
+    */
+   public int getMaxWaitCount()
+   {
+      if (isEnabled())
+      {
+         int result = Integer.MIN_VALUE;
+
+         for (SubPoolContext spc : subPools.values())
+         {
+            int v = spc.getSubPool().getStatistics().getMaxWaitCount();
+            if (v > result)
+               result = v;
+         }
+
+         return result != Integer.MIN_VALUE ? result : 0;
+      }
+
+      return 0;
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public long getMaxWaitTime()
+   {
+      if (isEnabled())
+      {
+         long result = Long.MIN_VALUE;
+
+         for (SubPoolContext spc : subPools.values())
+         {
+            long v = spc.getSubPool().getStatistics().getMaxWaitTime();
+            if (v > result)
+               result = v;
+         }
+
+         return result != Long.MIN_VALUE ? result : 0;
+      }
+
+      return 0;
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public int getTimedOut()
+   {
+      if (isEnabled())
+      {
+         int result = 0;
+
+         for (SubPoolContext spc : subPools.values())
+         {
+            result += spc.getSubPool().getStatistics().getTimedOut();
+         }
+
+         return result;
+      }
+
+      return 0;
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public long getTotalBlockingTime()
+   {
+      if (isEnabled())
+      {
+         long result = 0;
+
+         for (SubPoolContext spc : subPools.values())
+         {
+            result += spc.getSubPool().getStatistics().getTotalBlockingTime();
+         }
+
+         return result;
+      }
+
+      return 0;
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public long getTotalCreationTime()
+   {
+      if (isEnabled())
+      {
+         long result = 0;
+
+         for (SubPoolContext spc : subPools.values())
+         {
+            result += spc.getSubPool().getStatistics().getTotalCreationTime();
+         }
+
+         return result;
+      }
+
+      return 0;
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public void clear()
+   {
+      for (SubPoolContext spc : subPools.values())
+      {
+         spc.getSubPool().getStatistics().clear();
+      }
+   }
+}

Deleted: projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/mcp/ManagedConnectionPoolStatisticsImpl.java
===================================================================
--- projects/jboss-jca/trunk/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/mcp/ManagedConnectionPoolStatisticsImpl.java	2011-04-25 08:15:56 UTC (rev 111240)
+++ projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/mcp/ManagedConnectionPoolStatisticsImpl.java	2011-04-25 14:41:10 UTC (rev 111243)
@@ -1,515 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2011, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file 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.jca.core.connectionmanager.pool.mcp;
-
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Locale;
-import java.util.Map;
-import java.util.ResourceBundle;
-import java.util.Set;
-import java.util.concurrent.atomic.AtomicBoolean;
-import java.util.concurrent.atomic.AtomicInteger;
-import java.util.concurrent.atomic.AtomicLong;
-
-/**
- * Core statistics.
- *
- * @author <a href="jesper.pedersen at jboss.org">Jesper Pedersen</a>
- */
-public class ManagedConnectionPoolStatisticsImpl implements ManagedConnectionPoolStatistics
-{
-   private static final String ACTIVE_COUNT = "ActiveCount";
-   private static final String AVAILABLE_COUNT = "AvailableCount";
-   private static final String AVERAGE_BLOCKING_TIME = "AverageBlockingTime";
-   private static final String AVERAGE_CREATION_TIME = "AverageCreationTime";
-   private static final String CREATED_COUNT = "CreatedCount";
-   private static final String DESTROYED_COUNT = "DestroyedCount";
-   private static final String MAX_CREATION_TIME = "MaxCreationTime";
-   private static final String MAX_USED_COUNT = "MaxUsedCount";
-   private static final String MAX_WAIT_COUNT = "MaxWaitCount";
-   private static final String MAX_WAIT_TIME = "MaxWaitTime";
-   private static final String TIMED_OUT = "TimedOut";
-   private static final String TOTAL_BLOCKING_TIME = "TotalBlockingTime";
-   private static final String TOTAL_CREATION_TIME = "TotalCreationTime";
-
-   private int maxPoolSize;
-
-   private Set<String> names;
-   private Map<String, Class> types;
-   private AtomicBoolean enabled;
-   private Map<Locale, ResourceBundle> rbs;
-
-   private AtomicInteger createdCount;
-   private AtomicInteger destroyedCount;
-   private AtomicInteger maxUsedCount;
-   private AtomicLong maxCreationTime;
-   private AtomicInteger maxWaitCount;
-   private AtomicLong maxWaitTime;
-   private AtomicInteger timedOut;
-   private AtomicLong totalBlockingTime;
-   private AtomicLong totalCreationTime;
-
-   /**
-    * Constructor
-    * @param maxPoolSize The maximum pool size
-    */
-   public ManagedConnectionPoolStatisticsImpl(int maxPoolSize)
-   {
-      this.maxPoolSize = maxPoolSize;
-
-      Set<String> n = new HashSet<String>();
-      Map<String, Class> t = new HashMap<String, Class>();
-
-      n.add(ACTIVE_COUNT);
-      t.put(ACTIVE_COUNT, int.class);
-
-      n.add(AVAILABLE_COUNT);
-      t.put(AVAILABLE_COUNT, int.class);
-
-      n.add(AVERAGE_BLOCKING_TIME);
-      t.put(AVERAGE_BLOCKING_TIME, long.class);
-
-      n.add(AVERAGE_CREATION_TIME);
-      t.put(AVERAGE_CREATION_TIME, long.class);
-
-      n.add(CREATED_COUNT);
-      t.put(CREATED_COUNT, int.class);
-
-      n.add(DESTROYED_COUNT);
-      t.put(DESTROYED_COUNT, int.class);
-
-      n.add(MAX_CREATION_TIME);
-      t.put(MAX_CREATION_TIME, long.class);
-
-      n.add(MAX_USED_COUNT);
-      t.put(MAX_USED_COUNT, int.class);
-
-      n.add(MAX_WAIT_COUNT);
-      t.put(MAX_WAIT_COUNT, int.class);
-
-      n.add(MAX_WAIT_TIME);
-      t.put(MAX_WAIT_TIME, long.class);
-
-      n.add(TIMED_OUT);
-      t.put(TIMED_OUT, int.class);
-
-      n.add(TOTAL_BLOCKING_TIME);
-      t.put(TOTAL_BLOCKING_TIME, long.class);
-
-      n.add(TOTAL_CREATION_TIME);
-      t.put(TOTAL_CREATION_TIME, long.class);
-
-      this.names = Collections.unmodifiableSet(n);
-      this.types = Collections.unmodifiableMap(t);
-      this.enabled = new AtomicBoolean(true);
-      
-      ResourceBundle defaultResourceBundle = 
-         ResourceBundle.getBundle("poolstatistics", Locale.US, 
-                                  ManagedConnectionPoolStatisticsImpl.class.getClassLoader());
-      this.rbs = new HashMap<Locale, ResourceBundle>(1);
-      this.rbs.put(Locale.US, defaultResourceBundle);
-
-      this.createdCount = new AtomicInteger(0);
-      this.destroyedCount = new AtomicInteger(0);
-      this.maxCreationTime = new AtomicLong(Long.MIN_VALUE);
-      this.maxUsedCount = new AtomicInteger(Integer.MIN_VALUE);
-      this.maxWaitCount = new AtomicInteger(Integer.MIN_VALUE);
-      this.maxWaitTime = new AtomicLong(Long.MIN_VALUE);
-      this.timedOut = new AtomicInteger(0);
-      this.totalBlockingTime = new AtomicLong(0);
-      this.totalCreationTime = new AtomicLong(0);
-
-      clear();
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public Set<String> getNames()
-   {
-      return names;
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public Class getType(String name)
-   {
-      return types.get(name);
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public String getDescription(String name)
-   {
-      return getDescription(name, Locale.US);
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public String getDescription(String name, Locale locale)
-   {
-      ResourceBundle rb = rbs.get(locale);
-
-      if (rb == null)
-      {
-         ResourceBundle newResourceBundle =
-            ResourceBundle.getBundle("poolstatistics", locale, 
-                                     ManagedConnectionPoolStatisticsImpl.class.getClassLoader());
-
-         if (newResourceBundle != null)
-            rbs.put(locale, newResourceBundle);
-      }
-
-      if (rb == null)
-         rb = rbs.get(Locale.US);
-
-      if (rb != null)
-         return rb.getString(name);
-
-      return "";
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public Object getValue(String name)
-   {
-      if (ACTIVE_COUNT.equals(name))
-      {
-         return getActiveCount();
-      }
-      else if (AVAILABLE_COUNT.equals(name))
-      {
-         return getAvailableCount();
-      }
-      else if (AVERAGE_BLOCKING_TIME.equals(name))
-      {
-         return getAverageBlockingTime();
-      }
-      else if (AVERAGE_CREATION_TIME.equals(name))
-      {
-         return getAverageCreationTime();
-      }
-      else if (CREATED_COUNT.equals(name))
-      {
-         return getCreatedCount();
-      }
-      else if (DESTROYED_COUNT.equals(name))
-      {
-         return getDestroyedCount();
-      }
-      else if (MAX_CREATION_TIME.equals(name))
-      {
-         return getMaxCreationTime();
-      }
-      else if (MAX_USED_COUNT.equals(name))
-      {
-         return getMaxUsedCount();
-      }
-      else if (MAX_WAIT_COUNT.equals(name))
-      {
-         return getMaxWaitCount();
-      }
-      else if (MAX_WAIT_TIME.equals(name))
-      {
-         return getMaxWaitTime();
-      }
-      else if (TIMED_OUT.equals(name))
-      {
-         return getTimedOut();
-      }
-      else if (TOTAL_BLOCKING_TIME.equals(name))
-      {
-         return getTotalBlockingTime();
-      }
-      else if (TOTAL_CREATION_TIME.equals(name))
-      {
-         return getTotalCreationTime();
-      }
-
-      return null;
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public boolean isEnabled()
-   {
-      return enabled.get();
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public void setEnabled(boolean v)
-   {
-      enabled.set(v);
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public int getActiveCount()
-   {
-      if (isEnabled())
-         return createdCount.get() - destroyedCount.get();
-
-      return 0;
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public int getAvailableCount()
-   {
-      if (isEnabled())
-         return maxPoolSize - getActiveCount();
-
-      return 0;
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public long getAverageBlockingTime()
-   {
-      if (isEnabled())
-         return createdCount.get() != 0 ? totalBlockingTime.get() / createdCount.get() : 0;
-
-      return 0;
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public long getAverageCreationTime()
-   {
-      if (isEnabled())
-         return createdCount.get() != 0 ? totalCreationTime.get() / createdCount.get() : 0;
-
-      return 0;
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public int getCreatedCount()
-   {
-      if (isEnabled())
-         return createdCount.get();
-
-      return 0;
-   }
-
-   /**
-    * Delta the created count value
-    */
-   public void deltaCreatedCount()
-   {
-      if (isEnabled())
-         createdCount.incrementAndGet();
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public int getDestroyedCount()
-   {
-      if (isEnabled())
-         return destroyedCount.get();
-
-      return 0;
-   }
-
-   /**
-    * Delta the destroyed count value
-    */
-   public void deltaDestroyedCount()
-   {
-      if (isEnabled())
-         destroyedCount.incrementAndGet();
-   }
-
-   /**
-    * Get max used count
-    * @return The value
-    */
-   public int getMaxUsedCount()
-   {
-      if (isEnabled())
-         return maxUsedCount.get() != Integer.MIN_VALUE ? maxUsedCount.get() : 0;
-
-      return 0;
-   }
-
-   /**
-    * Set max used count
-    * @param v The value
-    */
-   public void setMaxUsedCount(int v)
-   {
-      if (isEnabled())
-      {
-         if (v > maxUsedCount.get())
-            maxUsedCount.set(v);
-      }
-   }
-
-   /**
-    * Get max wait count
-    * @return The value
-    */
-   public int getMaxWaitCount()
-   {
-      if (isEnabled())
-         return maxWaitCount.get() != Integer.MIN_VALUE ? maxWaitCount.get() : 0;
-
-      return 0;
-   }
-
-   /**
-    * Set max wait count
-    * @param v The value
-    */
-   public void setMaxWaitCount(int v)
-   {
-      if (isEnabled())
-      {
-         if (v > maxWaitCount.get())
-            maxWaitCount.set(v);
-      }
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public long getMaxCreationTime()
-   {
-      if (isEnabled())
-         return maxCreationTime.get() != Long.MIN_VALUE ? maxCreationTime.get() : 0;
-
-      return 0;
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public long getMaxWaitTime()
-   {
-      if (isEnabled())
-         return maxWaitTime.get() != Long.MIN_VALUE ? maxWaitTime.get() : 0;
-
-      return 0;
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public int getTimedOut()
-   {
-      if (isEnabled())
-         return timedOut.get();
-
-      return 0;
-   }
-
-   /**
-    * Delta the timed out value
-    */
-   public void deltaTimedOut()
-   {
-      if (isEnabled())
-         timedOut.incrementAndGet();
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public long getTotalBlockingTime()
-   {
-      if (isEnabled())
-         return totalBlockingTime.get();
-
-      return 0;
-   }
-
-   /**
-    * Add delta to total blocking timeout
-    * @param delta The value
-    */
-   public void deltaTotalBlockingTime(long delta)
-   {
-      if (isEnabled())
-      {
-         if (delta > 0)
-         {
-            totalBlockingTime.addAndGet(delta);
-
-            if (delta > maxWaitTime.get())
-               maxWaitTime.set(delta);
-         }
-      }
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public long getTotalCreationTime()
-   {
-      if (isEnabled())
-         return totalCreationTime.get();
-
-      return 0;
-   }
-
-   /**
-    * Add delta to total creation time
-    * @param delta The value
-    */
-   public void deltaTotalCreationTime(long delta)
-   {
-      if (isEnabled())
-      {
-         if (delta > 0)
-         {
-            totalCreationTime.addAndGet(delta);
-
-            if (delta > maxCreationTime.get())
-               maxCreationTime.set(delta);
-         }
-      }
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   public void clear()
-   {
-      // Do nothing
-   }
-}

Copied: projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/mcp/ManagedConnectionPoolStatisticsImpl.java (from rev 111241, projects/jboss-jca/trunk/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/mcp/ManagedConnectionPoolStatisticsImpl.java)
===================================================================
--- projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/mcp/ManagedConnectionPoolStatisticsImpl.java	                        (rev 0)
+++ projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/mcp/ManagedConnectionPoolStatisticsImpl.java	2011-04-25 14:41:10 UTC (rev 111243)
@@ -0,0 +1,459 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2011, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file 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.jca.core.connectionmanager.pool.mcp;
+
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Locale;
+import java.util.Map;
+import java.util.ResourceBundle;
+import java.util.Set;
+import java.util.concurrent.atomic.AtomicInteger;
+import java.util.concurrent.atomic.AtomicLong;
+
+/**
+ * Core statistics.
+ *
+ * @author <a href="jesper.pedersen at jboss.org">Jesper Pedersen</a>
+ */
+public class ManagedConnectionPoolStatisticsImpl implements ManagedConnectionPoolStatistics
+{
+   /** Serial version uid */
+   private static final long serialVersionUID = 1L;
+
+   private static final String ACTIVE_COUNT = "ActiveCount";
+   private static final String AVAILABLE_COUNT = "AvailableCount";
+   private static final String AVERAGE_BLOCKING_TIME = "AverageBlockingTime";
+   private static final String AVERAGE_CREATION_TIME = "AverageCreationTime";
+   private static final String CREATED_COUNT = "CreatedCount";
+   private static final String DESTROYED_COUNT = "DestroyedCount";
+   private static final String MAX_CREATION_TIME = "MaxCreationTime";
+   private static final String MAX_USED_COUNT = "MaxUsedCount";
+   private static final String MAX_WAIT_COUNT = "MaxWaitCount";
+   private static final String MAX_WAIT_TIME = "MaxWaitTime";
+   private static final String TIMED_OUT = "TimedOut";
+   private static final String TOTAL_BLOCKING_TIME = "TotalBlockingTime";
+   private static final String TOTAL_CREATION_TIME = "TotalCreationTime";
+
+   private int maxPoolSize;
+
+   private Set<String> names;
+   private Map<String, Class> types;
+   private Map<Locale, ResourceBundle> rbs;
+
+   private AtomicInteger createdCount;
+   private AtomicInteger destroyedCount;
+   private AtomicInteger maxUsedCount;
+   private AtomicLong maxCreationTime;
+   private AtomicInteger maxWaitCount;
+   private AtomicLong maxWaitTime;
+   private AtomicInteger timedOut;
+   private AtomicLong totalBlockingTime;
+   private AtomicLong totalCreationTime;
+
+   /**
+    * Constructor
+    * @param maxPoolSize The maximum pool size
+    */
+   public ManagedConnectionPoolStatisticsImpl(int maxPoolSize)
+   {
+      this.maxPoolSize = maxPoolSize;
+
+      Set<String> n = new HashSet<String>();
+      Map<String, Class> t = new HashMap<String, Class>();
+
+      n.add(ACTIVE_COUNT);
+      t.put(ACTIVE_COUNT, int.class);
+
+      n.add(AVAILABLE_COUNT);
+      t.put(AVAILABLE_COUNT, int.class);
+
+      n.add(AVERAGE_BLOCKING_TIME);
+      t.put(AVERAGE_BLOCKING_TIME, long.class);
+
+      n.add(AVERAGE_CREATION_TIME);
+      t.put(AVERAGE_CREATION_TIME, long.class);
+
+      n.add(CREATED_COUNT);
+      t.put(CREATED_COUNT, int.class);
+
+      n.add(DESTROYED_COUNT);
+      t.put(DESTROYED_COUNT, int.class);
+
+      n.add(MAX_CREATION_TIME);
+      t.put(MAX_CREATION_TIME, long.class);
+
+      n.add(MAX_USED_COUNT);
+      t.put(MAX_USED_COUNT, int.class);
+
+      n.add(MAX_WAIT_COUNT);
+      t.put(MAX_WAIT_COUNT, int.class);
+
+      n.add(MAX_WAIT_TIME);
+      t.put(MAX_WAIT_TIME, long.class);
+
+      n.add(TIMED_OUT);
+      t.put(TIMED_OUT, int.class);
+
+      n.add(TOTAL_BLOCKING_TIME);
+      t.put(TOTAL_BLOCKING_TIME, long.class);
+
+      n.add(TOTAL_CREATION_TIME);
+      t.put(TOTAL_CREATION_TIME, long.class);
+
+      this.names = Collections.unmodifiableSet(n);
+      this.types = Collections.unmodifiableMap(t);
+      
+      ResourceBundle defaultResourceBundle = 
+         ResourceBundle.getBundle("poolstatistics", Locale.US, 
+                                  ManagedConnectionPoolStatisticsImpl.class.getClassLoader());
+      this.rbs = new HashMap<Locale, ResourceBundle>(1);
+      this.rbs.put(Locale.US, defaultResourceBundle);
+
+      this.createdCount = new AtomicInteger(0);
+      this.destroyedCount = new AtomicInteger(0);
+      this.maxCreationTime = new AtomicLong(Long.MIN_VALUE);
+      this.maxUsedCount = new AtomicInteger(Integer.MIN_VALUE);
+      this.maxWaitCount = new AtomicInteger(Integer.MIN_VALUE);
+      this.maxWaitTime = new AtomicLong(Long.MIN_VALUE);
+      this.timedOut = new AtomicInteger(0);
+      this.totalBlockingTime = new AtomicLong(0);
+      this.totalCreationTime = new AtomicLong(0);
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public Set<String> getNames()
+   {
+      return names;
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public Class getType(String name)
+   {
+      return types.get(name);
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public String getDescription(String name)
+   {
+      return getDescription(name, Locale.US);
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public String getDescription(String name, Locale locale)
+   {
+      ResourceBundle rb = rbs.get(locale);
+
+      if (rb == null)
+      {
+         ResourceBundle newResourceBundle =
+            ResourceBundle.getBundle("poolstatistics", locale, 
+                                     ManagedConnectionPoolStatisticsImpl.class.getClassLoader());
+
+         if (newResourceBundle != null)
+            rbs.put(locale, newResourceBundle);
+      }
+
+      if (rb == null)
+         rb = rbs.get(Locale.US);
+
+      if (rb != null)
+         return rb.getString(name);
+
+      return "";
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public Object getValue(String name)
+   {
+      if (ACTIVE_COUNT.equals(name))
+      {
+         return getActiveCount();
+      }
+      else if (AVAILABLE_COUNT.equals(name))
+      {
+         return getAvailableCount();
+      }
+      else if (AVERAGE_BLOCKING_TIME.equals(name))
+      {
+         return getAverageBlockingTime();
+      }
+      else if (AVERAGE_CREATION_TIME.equals(name))
+      {
+         return getAverageCreationTime();
+      }
+      else if (CREATED_COUNT.equals(name))
+      {
+         return getCreatedCount();
+      }
+      else if (DESTROYED_COUNT.equals(name))
+      {
+         return getDestroyedCount();
+      }
+      else if (MAX_CREATION_TIME.equals(name))
+      {
+         return getMaxCreationTime();
+      }
+      else if (MAX_USED_COUNT.equals(name))
+      {
+         return getMaxUsedCount();
+      }
+      else if (MAX_WAIT_COUNT.equals(name))
+      {
+         return getMaxWaitCount();
+      }
+      else if (MAX_WAIT_TIME.equals(name))
+      {
+         return getMaxWaitTime();
+      }
+      else if (TIMED_OUT.equals(name))
+      {
+         return getTimedOut();
+      }
+      else if (TOTAL_BLOCKING_TIME.equals(name))
+      {
+         return getTotalBlockingTime();
+      }
+      else if (TOTAL_CREATION_TIME.equals(name))
+      {
+         return getTotalCreationTime();
+      }
+
+      return null;
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public boolean isEnabled()
+   {
+      return true;
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public void setEnabled(boolean v)
+   {
+      // No-op
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public int getActiveCount()
+   {
+      return createdCount.get() - destroyedCount.get();
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public int getAvailableCount()
+   {
+      return maxPoolSize - getActiveCount();
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public long getAverageBlockingTime()
+   {
+      return createdCount.get() != 0 ? totalBlockingTime.get() / createdCount.get() : 0;
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public long getAverageCreationTime()
+   {
+      return createdCount.get() != 0 ? totalCreationTime.get() / createdCount.get() : 0;
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public int getCreatedCount()
+   {
+      return createdCount.get();
+   }
+
+   /**
+    * Delta the created count value
+    */
+   public void deltaCreatedCount()
+   {
+      createdCount.incrementAndGet();
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public int getDestroyedCount()
+   {
+      return destroyedCount.get();
+   }
+
+   /**
+    * Delta the destroyed count value
+    */
+   public void deltaDestroyedCount()
+   {
+      destroyedCount.incrementAndGet();
+   }
+
+   /**
+    * Get max used count
+    * @return The value
+    */
+   public int getMaxUsedCount()
+   {
+      return maxUsedCount.get() != Integer.MIN_VALUE ? maxUsedCount.get() : 0;
+   }
+
+   /**
+    * Set max used count
+    * @param v The value
+    */
+   public void setMaxUsedCount(int v)
+   {
+      if (v > maxUsedCount.get())
+         maxUsedCount.set(v);
+   }
+
+   /**
+    * Get max wait count
+    * @return The value
+    */
+   public int getMaxWaitCount()
+   {
+      return maxWaitCount.get() != Integer.MIN_VALUE ? maxWaitCount.get() : 0;
+   }
+
+   /**
+    * Set max wait count
+    * @param v The value
+    */
+   public void setMaxWaitCount(int v)
+   {
+      if (v > maxWaitCount.get())
+         maxWaitCount.set(v);
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public long getMaxCreationTime()
+   {
+      return maxCreationTime.get() != Long.MIN_VALUE ? maxCreationTime.get() : 0;
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public long getMaxWaitTime()
+   {
+      return maxWaitTime.get() != Long.MIN_VALUE ? maxWaitTime.get() : 0;
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public int getTimedOut()
+   {
+      return timedOut.get();
+   }
+
+   /**
+    * Delta the timed out value
+    */
+   public void deltaTimedOut()
+   {
+      timedOut.incrementAndGet();
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public long getTotalBlockingTime()
+   {
+      return totalBlockingTime.get();
+   }
+
+   /**
+    * Add delta to total blocking timeout
+    * @param delta The value
+    */
+   public void deltaTotalBlockingTime(long delta)
+   {
+      if (delta > 0)
+      {
+         totalBlockingTime.addAndGet(delta);
+
+         if (delta > maxWaitTime.get())
+            maxWaitTime.set(delta);
+      }
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public long getTotalCreationTime()
+   {
+      return totalCreationTime.get();
+   }
+
+   /**
+    * Add delta to total creation time
+    * @param delta The value
+    */
+   public void deltaTotalCreationTime(long delta)
+   {
+      if (delta > 0)
+      {
+         totalCreationTime.addAndGet(delta);
+
+         if (delta > maxCreationTime.get())
+            maxCreationTime.set(delta);
+      }
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   public void clear()
+   {
+      // No-op
+   }
+}

Deleted: projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/mcp/Semaphore.java
===================================================================
--- projects/jboss-jca/trunk/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/mcp/Semaphore.java	2011-04-25 08:15:56 UTC (rev 111240)
+++ projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/mcp/Semaphore.java	2011-04-25 14:41:10 UTC (rev 111243)
@@ -1,58 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2010, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file 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.jca.core.connectionmanager.pool.mcp;
-
-import java.util.concurrent.TimeUnit;
-
-/**
- * A semaphore implementation that supports statistics
- *
- * @author <a href="mailto:jesper.pedersen at jboss.org">Jesper Pedersen</a>
- */
-public class Semaphore extends java.util.concurrent.Semaphore
-{
-   /** Statistics */
-   private ManagedConnectionPoolStatisticsImpl statistics;
-
-   /**
-    * Constructor
-    * @param maxSize The maxumum size
-    * @param fairness The fairness
-    * @param statistics The statistics module
-    */
-   public Semaphore(int maxSize, boolean fairness, ManagedConnectionPoolStatisticsImpl statistics)
-   {
-      super(maxSize, fairness);
-      this.statistics = statistics;
-   }
-
-   /**
-    * {@inheritDoc}
-    */
-   @Override
-   public boolean tryAcquire(long timeout, TimeUnit unit) throws InterruptedException
-   {
-      statistics.setMaxWaitCount(getQueueLength());
-      return super.tryAcquire(timeout, unit);
-   }
-}

Copied: projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/mcp/Semaphore.java (from rev 111241, projects/jboss-jca/trunk/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/mcp/Semaphore.java)
===================================================================
--- projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/mcp/Semaphore.java	                        (rev 0)
+++ projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/connectionmanager/pool/mcp/Semaphore.java	2011-04-25 14:41:10 UTC (rev 111243)
@@ -0,0 +1,61 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2010, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file 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.jca.core.connectionmanager.pool.mcp;
+
+import java.util.concurrent.TimeUnit;
+
+/**
+ * A semaphore implementation that supports statistics
+ *
+ * @author <a href="mailto:jesper.pedersen at jboss.org">Jesper Pedersen</a>
+ */
+public class Semaphore extends java.util.concurrent.Semaphore
+{
+   /** Serial version uid */
+   private static final long serialVersionUID = 1L;
+
+   /** Statistics */
+   private ManagedConnectionPoolStatisticsImpl statistics;
+
+   /**
+    * Constructor
+    * @param maxSize The maxumum size
+    * @param fairness The fairness
+    * @param statistics The statistics module
+    */
+   public Semaphore(int maxSize, boolean fairness, ManagedConnectionPoolStatisticsImpl statistics)
+   {
+      super(maxSize, fairness);
+      this.statistics = statistics;
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   @Override
+   public boolean tryAcquire(long timeout, TimeUnit unit) throws InterruptedException
+   {
+      statistics.setMaxWaitCount(getQueueLength());
+      return super.tryAcquire(timeout, unit);
+   }
+}

Deleted: projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/spi/statistics/StatisticsPlugin.java
===================================================================
--- projects/jboss-jca/trunk/core/src/main/java/org/jboss/jca/core/spi/statistics/StatisticsPlugin.java	2011-04-25 08:15:56 UTC (rev 111240)
+++ projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/spi/statistics/StatisticsPlugin.java	2011-04-25 14:41:10 UTC (rev 111243)
@@ -1,85 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2011, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file 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.jca.core.spi.statistics;
-
-import java.util.Locale;
-import java.util.Set;
-
-/**
- * Defines the contract for a statistics plugin.
- *
- * @author <a href="jesper.pedersen at jboss.org">Jesper Pedersen</a>
- */
-public interface StatisticsPlugin
-{
-   /**
-    * Get the statistics names
-    * @return The value
-    */
-   public Set<String> getNames();
-
-   /**
-    * Get the type
-    * @param name The name of the statistics
-    * @return The value
-    */
-   public Class getType(String name);
-
-   /**
-    * Get the description
-    * @param name The name of the statistics
-    * @return The value
-    */
-   public String getDescription(String name);
-
-   /**
-    * Get the description
-    * @param name The name of the statistics
-    * @param locale The locale
-    * @return The value
-    */
-   public String getDescription(String name, Locale locale);
-
-   /**
-    * Get the value of the statistics
-    * @param name The name of the statistics
-    * @return The value
-    */
-   public Object getValue(String name);
-
-   /**
-    * Is the statistics module enabled
-    * @return The value
-    */
-   public boolean isEnabled();
-
-   /**
-    * Set the statistics module enabled
-    * @param v The value
-    */
-   public void setEnabled(boolean v);
-
-   /**
-    * Clear all statistics
-    */
-   public void clear();
-}

Copied: projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/spi/statistics/StatisticsPlugin.java (from rev 111241, projects/jboss-jca/trunk/core/src/main/java/org/jboss/jca/core/spi/statistics/StatisticsPlugin.java)
===================================================================
--- projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/spi/statistics/StatisticsPlugin.java	                        (rev 0)
+++ projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/core/src/main/java/org/jboss/jca/core/spi/statistics/StatisticsPlugin.java	2011-04-25 14:41:10 UTC (rev 111243)
@@ -0,0 +1,86 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2011, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file 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.jca.core.spi.statistics;
+
+import java.io.Serializable;
+import java.util.Locale;
+import java.util.Set;
+
+/**
+ * Defines the contract for a statistics plugin.
+ *
+ * @author <a href="jesper.pedersen at jboss.org">Jesper Pedersen</a>
+ */
+public interface StatisticsPlugin extends Serializable
+{
+   /**
+    * Get the statistics names
+    * @return The value
+    */
+   public Set<String> getNames();
+
+   /**
+    * Get the type
+    * @param name The name of the statistics
+    * @return The value
+    */
+   public Class getType(String name);
+
+   /**
+    * Get the description
+    * @param name The name of the statistics
+    * @return The value
+    */
+   public String getDescription(String name);
+
+   /**
+    * Get the description
+    * @param name The name of the statistics
+    * @param locale The locale
+    * @return The value
+    */
+   public String getDescription(String name, Locale locale);
+
+   /**
+    * Get the value of the statistics
+    * @param name The name of the statistics
+    * @return The value
+    */
+   public Object getValue(String name);
+
+   /**
+    * Is the statistics module enabled
+    * @return The value
+    */
+   public boolean isEnabled();
+
+   /**
+    * Set the statistics module enabled
+    * @param v The value
+    */
+   public void setEnabled(boolean v);
+
+   /**
+    * Clear all statistics
+    */
+   public void clear();
+}

Deleted: projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/doc/userguide/en-US/modules/download.xml
===================================================================
--- projects/jboss-jca/trunk/doc/userguide/en-US/modules/download.xml	2011-04-25 08:15:56 UTC (rev 111240)
+++ projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/doc/userguide/en-US/modules/download.xml	2011-04-25 14:41:10 UTC (rev 111243)
@@ -1,215 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<chapter id="gettingstarted">
-   <title>Download</title>
-   <para>The official IronJacamar project page is <ulink
-   url="http://www.jboss.org/ironjacamar/">http://www.jboss.org/ironjacamar/</ulink> where you can download the software.</para>
-
-   <section id="download">
-      <title>Download</title>
-
-      <para>The download location is: <ulink url="http://www.jboss.org/ironjacamar/downloads/">http://www.jboss.org/ironjacamar/downloads/</ulink></para>
-
-      <para>Each release is labelled with a version number and an identifier.</para>
-
-      <programlisting>
-ironjacamar-&lt;major&gt;.&lt;minor&gt;.&lt;patch&gt;[.&lt;identifier&gt;]
-      </programlisting>
-
-      <para>where</para>
-
-      <itemizedlist spacing="compact">
-         <listitem>
-           Major: The major version number. Signifies major changes in the implementation.
-         </listitem>
-         <listitem>
-           Minor: The minor version number. Signifies functional changes to a major version.
-         </listitem>
-         <listitem>
-           Patch: The patch version number. Signifies a binary compatible change to a minor version.
-         </listitem>
-         <listitem>
-           Identifier: The identifier. Identifies the level of the quality of the release.
-           <itemizedlist spacing="compact">
-             <listitem>
-               None / Final: Stable release
-             </listitem>
-             <listitem>
-               CR: Candidate for Release quality. The implementation is functional complete.
-             </listitem>
-             <listitem>
-               Beta: Beta quality. The implementation is almost functional complete.
-             </listitem>
-             <listitem>
-               Alpha: Alpha quality. The implementation is a snapshot of the development.
-             </listitem>
-           </itemizedlist>
-         </listitem>
-      </itemizedlist>
-
-      <para>An example</para>
-
-      <programlisting>
-ironjacamar-1.0.0.tar.gz
-      </programlisting>
-
-      <para>which is the first stable release of the project.</para>
-
-   </section>
-
-   <section id="download_maven">
-      <title>Maven repository</title>
-      <para>The IronJacamar distribution is deployed to the JBoss Nexus repository.</para>
-
-      <para>Repository: <code>http://repository.jboss.org/nexus/content/groups/public/</code></para>
-
-      <para>Group id: <code>org.jboss.ironjacamar</code></para>
-      
-      <table frame="all">
-        <title>Maven artifacts</title>
-        <tgroup cols="2" align="left" colsep="1" rowsep="1">
-          <colspec colname="c1" colwidth="2*"/>
-          <colspec colname="c2" colwidth="3*"/>
-          <thead>
-            <row>
-              <entry align="left">Artifact</entry>
-              <entry align="left">Description</entry>
-            </row>
-          </thead>
-          <tbody>
-            <row>
-              <entry><code>ironjacamar-codegenerator</code></entry>
-              <entry>
-                The code generator
-              </entry>
-            </row>
-            <row>
-              <entry><code>ironjacamar-common-api</code></entry>
-              <entry>
-                The API for the common module
-              </entry>
-            </row>
-            <row>
-              <entry><code>ironjacamar-common-impl</code></entry>
-              <entry>
-                The implementation for the common module
-              </entry>
-            </row>
-            <row>
-              <entry><code>ironjacamar-common-impl-papaki</code></entry>
-              <entry>
-                The Papaki extension for the common module
-              </entry>
-            </row>
-            <row>
-              <entry><code>ironjacamar-common-spi</code></entry>
-              <entry>
-                The SPI for the common module
-              </entry>
-            </row>
-            <row>
-              <entry><code>ironjacamar-core-api</code></entry>
-              <entry>
-                The API for the core module
-              </entry>
-            </row>
-            <row>
-              <entry><code>ironjacamar-core-impl</code></entry>
-              <entry>
-                The implementation for the core module
-              </entry>
-            </row>
-            <row>
-              <entry><code>ironjacamar-core-spi</code></entry>
-              <entry>
-                The SPI for the core module
-              </entry>
-            </row>
-            <row>
-              <entry><code>ironjacamar-deployers-common</code></entry>
-              <entry>
-                The common classes for the deployer chains
-              </entry>
-            </row>
-            <row>
-              <entry><code>ironjacamar-deployers-fungal</code></entry>
-              <entry>
-                The deployers for the Fungal kernel based setup
-              </entry>
-            </row>
-            <row>
-              <entry><code>ironjacamar-embedded</code></entry>
-              <entry>
-                The embedded module
-              </entry>
-            </row>
-            <row>
-              <entry><code>ironjacamar-embedded-arquillian</code></entry>
-              <entry>
-                The Arquillian extension for the embedded module
-              </entry>
-            </row>
-            <row>
-              <entry><code>ironjacamar-spec-api</code></entry>
-              <entry>
-                The Java EE Connector Architecture 1.6 API
-              </entry>
-            </row>
-            <row>
-              <entry><code>ironjacamar-validator</code></entry>
-              <entry>
-                The validator module
-              </entry>
-            </row>
-            <row>
-              <entry><code>ironjacamar-validator-ant</code></entry>
-              <entry>
-                The Apache Ant tasks for the validator module
-              </entry>
-            </row>
-            <row>
-              <entry><code>ironjacamar-validator-cli</code></entry>
-              <entry>
-                The command line interface for the validator module
-              </entry>
-            </row>
-            <row>
-              <entry><code>jdbc-local</code></entry>
-              <entry>
-                A JDBC resource adapter backing standard datasources
-              </entry>
-            </row>
-            <row>
-              <entry><code>jdbc-xa</code></entry>
-              <entry>
-                A JDBC resource adapter backing XA datasources
-              </entry>
-            </row>
-            <row>
-              <entry><code>mail</code></entry>
-              <entry>
-                An inflow mail resource adapter
-              </entry>
-            </row>
-          </tbody>
-        </tgroup>
-      </table>
-      
-   </section>
-
-
-   <section id="SVN">
-      <title>SVN Access</title>
-      <para>If you want to experiment with the latest developments you may
-        checkout the latest code from SVN trunk. Be aware that the
-        information provided in this manual might then not be accurate.</para>
-
-      <para>The anonymous SVN repository is located under:</para>
-
-      <programlisting>
-svn co http://anonsvn.jboss.org/repos/jbossas/projects/jboss-jca/trunk/ ironjacamar-trunk
-      </programlisting>
-
-      <para>You can find additional information about this in the developer guide.</para>
-
-   </section>
-</chapter>

Copied: projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/doc/userguide/en-US/modules/download.xml (from rev 111242, projects/jboss-jca/trunk/doc/userguide/en-US/modules/download.xml)
===================================================================
--- projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/doc/userguide/en-US/modules/download.xml	                        (rev 0)
+++ projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/doc/userguide/en-US/modules/download.xml	2011-04-25 14:41:10 UTC (rev 111243)
@@ -0,0 +1,209 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<chapter id="gettingstarted">
+   <title>Download</title>
+   <para>The official IronJacamar project page is <ulink
+   url="http://www.jboss.org/ironjacamar/">http://www.jboss.org/ironjacamar/</ulink> where you can download the software.</para>
+
+   <section id="download">
+      <title>Download</title>
+
+      <para>The download location is: <ulink url="http://www.jboss.org/ironjacamar/downloads/">http://www.jboss.org/ironjacamar/downloads/</ulink></para>
+
+      <para>Each release is labelled with a version number and an identifier.</para>
+
+      <programlisting>
+ironjacamar-&lt;major&gt;.&lt;minor&gt;.&lt;patch&gt;[.&lt;identifier&gt;]
+      </programlisting>
+
+      <para>where</para>
+
+      <itemizedlist spacing="compact">
+         <listitem>
+           Major: The major version number. Signifies major changes in the implementation.
+         </listitem>
+         <listitem>
+           Minor: The minor version number. Signifies functional changes to a major version.
+         </listitem>
+         <listitem>
+           Patch: The patch version number. Signifies a binary compatible change to a minor version.
+         </listitem>
+         <listitem>
+           Identifier: The identifier. Identifies the level of the quality of the release.
+           <itemizedlist spacing="compact">
+             <listitem>
+               None / Final: Stable release
+             </listitem>
+             <listitem>
+               CR: Candidate for Release quality. The implementation is functional complete.
+             </listitem>
+             <listitem>
+               Beta: Beta quality. The implementation is almost functional complete.
+             </listitem>
+             <listitem>
+               Alpha: Alpha quality. The implementation is a snapshot of the development.
+             </listitem>
+           </itemizedlist>
+         </listitem>
+      </itemizedlist>
+
+      <para>An example</para>
+
+      <programlisting>
+ironjacamar-1.0.0.tar.gz
+      </programlisting>
+
+      <para>which is the first stable release of the project.</para>
+
+   </section>
+
+   <section id="download_maven">
+      <title>Maven repository</title>
+      <para>The IronJacamar distribution is deployed to the JBoss Nexus repository.</para>
+
+      <para>Repository: <code>http://repository.jboss.org/nexus/content/groups/public/</code></para>
+
+      <para>Group id: <code>org.jboss.ironjacamar</code></para>
+      
+      <table frame="all">
+        <title>Maven artifacts</title>
+        <tgroup cols="2" align="left" colsep="1" rowsep="1">
+          <colspec colname="c1" colwidth="2*"/>
+          <colspec colname="c2" colwidth="3*"/>
+          <thead>
+            <row>
+              <entry align="left">Artifact</entry>
+              <entry align="left">Description</entry>
+            </row>
+          </thead>
+          <tbody>
+            <row>
+              <entry><code>ironjacamar-codegenerator</code></entry>
+              <entry>
+                The code generator
+              </entry>
+            </row>
+            <row>
+              <entry><code>ironjacamar-common-api</code></entry>
+              <entry>
+                The API for the common module
+              </entry>
+            </row>
+            <row>
+              <entry><code>ironjacamar-common-impl</code></entry>
+              <entry>
+                The implementation for the common module
+              </entry>
+            </row>
+            <row>
+              <entry><code>ironjacamar-common-impl-papaki</code></entry>
+              <entry>
+                The Papaki extension for the common module
+              </entry>
+            </row>
+            <row>
+              <entry><code>ironjacamar-common-spi</code></entry>
+              <entry>
+                The SPI for the common module
+              </entry>
+            </row>
+            <row>
+              <entry><code>ironjacamar-core-api</code></entry>
+              <entry>
+                The API / SPI for the core module
+              </entry>
+            </row>
+            <row>
+              <entry><code>ironjacamar-core-impl</code></entry>
+              <entry>
+                The implementation for the core module
+              </entry>
+            </row>
+            <row>
+              <entry><code>ironjacamar-deployers-common</code></entry>
+              <entry>
+                The common classes for the deployer chains
+              </entry>
+            </row>
+            <row>
+              <entry><code>ironjacamar-deployers-fungal</code></entry>
+              <entry>
+                The deployers for the Fungal kernel based setup
+              </entry>
+            </row>
+            <row>
+              <entry><code>ironjacamar-embedded</code></entry>
+              <entry>
+                The embedded module
+              </entry>
+            </row>
+            <row>
+              <entry><code>ironjacamar-embedded-arquillian</code></entry>
+              <entry>
+                The Arquillian extension for the embedded module
+              </entry>
+            </row>
+            <row>
+              <entry><code>ironjacamar-spec-api</code></entry>
+              <entry>
+                The Java EE Connector Architecture 1.6 API
+              </entry>
+            </row>
+            <row>
+              <entry><code>ironjacamar-validator</code></entry>
+              <entry>
+                The validator module
+              </entry>
+            </row>
+            <row>
+              <entry><code>ironjacamar-validator-ant</code></entry>
+              <entry>
+                The Apache Ant tasks for the validator module
+              </entry>
+            </row>
+            <row>
+              <entry><code>ironjacamar-validator-cli</code></entry>
+              <entry>
+                The command line interface for the validator module
+              </entry>
+            </row>
+            <row>
+              <entry><code>jdbc-local</code></entry>
+              <entry>
+                A JDBC resource adapter backing standard datasources
+              </entry>
+            </row>
+            <row>
+              <entry><code>jdbc-xa</code></entry>
+              <entry>
+                A JDBC resource adapter backing XA datasources
+              </entry>
+            </row>
+            <row>
+              <entry><code>mail</code></entry>
+              <entry>
+                An inflow mail resource adapter
+              </entry>
+            </row>
+          </tbody>
+        </tgroup>
+      </table>
+      
+   </section>
+
+
+   <section id="SVN">
+      <title>SVN Access</title>
+      <para>If you want to experiment with the latest developments you may
+        checkout the latest code from SVN trunk. Be aware that the
+        information provided in this manual might then not be accurate.</para>
+
+      <para>The anonymous SVN repository is located under:</para>
+
+      <programlisting>
+svn co http://anonsvn.jboss.org/repos/jbossas/projects/jboss-jca/trunk/ ironjacamar-trunk
+      </programlisting>
+
+      <para>You can find additional information about this in the developer guide.</para>
+
+   </section>
+</chapter>

Deleted: projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/ivy.xml
===================================================================
--- projects/jboss-jca/trunk/ivy.xml	2011-04-25 08:15:56 UTC (rev 111240)
+++ projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/ivy.xml	2011-04-25 14:41:10 UTC (rev 111243)
@@ -1,181 +0,0 @@
-<!--
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file 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.
--->
-<ivy-module version="2.2" 
-            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-            xsi:noNamespaceSchemaLocation="http://ant.apache.org/ivy/schemas/ivy.xsd">
-
-  <info organisation="org.jboss.ironjacamar" 
-        module="ironjacamar"
-        revision="${version}">
-    <license name="lgpl" url="http://repository.jboss.org/licenses/lgpl.txt"/>
-    <repository name="jboss" url="http://repository.jboss.org"/>
-    <description homepage="http://www.jboss.org/ironjacamar">
-      The IronJacamar project implements the Java EE Connector Architecture 1.6 specification
-    </description>
-  </info>
-
-  <configurations defaultconfmapping="common->default;sjc->default;embedded->default;arquillian->default;jetty->default;test->default;mail->default;;tools->default;ironjacamar-codegenerator->default;ironjacamar-common-api->default;ironjacamar-common-impl->default;ironjacamar-common-impl-papaki->default;ironjacamar-common-spi->default;ironjacamar-core-api->default;ironjacamar-core-impl->default;ironjacamar-core-spi->default;ironjacamar-depchain->default;ironjacamar-deployers-common->default;ironjacamar-deployers-fungal->default;ironjacamar-embedded->default;ironjacamar-embedded-arquillian->default;ironjacamar.jdbc->default;ironjacamar-spec-api->default;ironjacamar-validator->default;ironjacamar-validator-ant->default;ironjacamar-validator-cli->default;ironjacamar-validator-maven->default;jdbc-local->default;jdbc-xa->default;rhq->default;hornetq->default">
-    <conf name="arquillian" transitive="false"/>
-    <conf name="common" transitive="false"/>
-    <conf name="embedded" transitive="false"/>
-    <conf name="hornetq" transitive="false"/>
-    <conf name="jetty" transitive="false"/>
-    <conf name="mail" transitive="false"/>
-    <conf name="sjc" transitive="false"/>
-    <conf name="test" transitive="false"/>
-    <conf name="tools" transitive="false"/>
-    <conf name="rhq" transitive="false"/>
-
-    <conf name="ironjacamar-codegenerator" transitive="false"/>
-    <conf name="ironjacamar-common-api" transitive="false"/>
-    <conf name="ironjacamar-common-impl" transitive="false"/>
-    <conf name="ironjacamar-common-impl-papaki" transitive="false"/>
-    <conf name="ironjacamar-common-spi" transitive="false"/>
-    <conf name="ironjacamar-core-api" transitive="false"/>
-    <conf name="ironjacamar-core-impl" transitive="false"/>
-    <conf name="ironjacamar-core-spi" transitive="false"/>
-    <conf name="ironjacamar-depchain" transitive="false"/>
-    <conf name="ironjacamar-deployers-common" transitive="false"/>
-    <conf name="ironjacamar-deployers-fungal" transitive="false"/>
-    <conf name="ironjacamar-embedded" transitive="false"/>
-    <conf name="ironjacamar-embedded-arquillian" transitive="false"/>
-    <conf name="ironjacamar-jdbc" transitive="false"/>
-    <conf name="ironjacamar-spec-api" transitive="false"/>
-    <conf name="ironjacamar-validator" transitive="false"/>
-    <conf name="ironjacamar-validator-ant" transitive="false"/>
-    <conf name="ironjacamar-validator-cli" transitive="false"/>
-    <conf name="ironjacamar-validator-maven" transitive="false"/>
-    <conf name="jdbc-local" transitive="false"/>
-    <conf name="jdbc-xa" transitive="false"/>
-    <conf name="mail" transitive="false"/>
-  </configurations>
-
-  <publications>
-    <artifact name="ironjacamar-codegenerator" type="jar"/>
-    <artifact name="ironjacamar-common-api" type="jar"/>
-    <artifact name="ironjacamar-common-impl" type="jar"/>
-    <artifact name="ironjacamar-common-impl-papaki" type="jar"/>
-    <artifact name="ironjacamar-common-spi" type="jar"/>
-    <artifact name="ironjacamar-core-api" type="jar"/>
-    <artifact name="ironjacamar-core-impl" type="jar"/>
-    <artifact name="ironjacamar-core-spi" type="jar"/>
-    <artifact name="ironjacamar-depchain" type="pom"/>
-    <artifact name="ironjacamar-deployers-common" type="jar"/>
-    <artifact name="ironjacamar-deployers-fungal" type="jar"/>
-    <artifact name="ironjacamar-embedded-arquillian" type="jar"/>
-    <artifact name="ironjacamar-embedded" type="jar"/>
-    <artifact name="ironjacamar-jdbc" type="jar"/>
-    <artifact name="ironjacamar-spec-api" type="jar"/>
-    <artifact name="ironjacamar-validator" type="jar"/>
-    <artifact name="ironjacamar-validator-cli" type="jar"/>
-    <artifact name="ironjacamar-validator-ant" type="jar"/>
-    <artifact name="ironjacamar-validator-maven" type="jar"/>
-    <artifact name="jdbc-local" type="rar"/>
-    <artifact name="jdbc-xa" type="rar"/>
-    <artifact name="mail" type="rar"/>
-  </publications>
-
-  <dependencies>
-    <!-- Maven doesn't handle dependencies well, so logging has to be first -->
-    <dependency org="org.jboss.logging" name="jboss-logging" rev="${version.jboss.logging}" conf="common,ironjacamar-common-impl,ironjacamar-common-impl-papaki,ironjacamar-core-impl,ironjacamar-depchain,ironjacamar-deployers-common,ironjacamar-deployers-fungal"/>
-    <dependency org="org.jboss.logmanager" name="jboss-logmanager" rev="${version.jboss.logmanager}" conf="common,ironjacamar-depchain"/>
-
-    <!-- Keep these sorted -->
-    <dependency org="apache-logging" name="commons-logging" rev="${version.apache-logging}" conf="common,ironjacamar-depchain"/>
-    <dependency org="com.github.fungal" name="fungal" rev="${version.fungal}" conf="sjc,ironjacamar-depchain,ironjacamar-deployers-fungal,ironjacamar-embedded"/>
-    <dependency org="com.github.fungal" name="fungal-cli" rev="${version.fungal}" conf="sjc,ironjacamar-depchain"/>
-    <dependency org="com.h2database" name="h2" rev="${version.h2}" conf="test"/>
-    <dependency org="dom4j" name="dom4j" rev="${version.dom4j}" conf="jetty,tools"/>
-    <dependency org="javax.activation" name="activation" rev="${version.activation}" conf="rhq"/>
-    <dependency org="javax.mail" name="mail" rev="${version.mail-api}" conf="mail"/>
-    <dependency org="javax.persistence" name="persistence-api" rev="${version.jpa}" conf="rhq"/>
-    <dependency org="javax.validation" name="validation-api" rev="${version.validation-api}" conf="common,ironjacamar-core-impl,ironjacamar-depchain,ironjacamar-deployers-fungal"/>
-    <dependency org="javax.xml" name="jaxb-api" rev="${version.jaxb.api}" conf="rhq"/>
-    <dependency org="javax.xml" name="jaxb-impl" rev="${version.jaxb.impl}" conf="rhq"/>
-    <dependency org="jdepend" name="jdepend" rev="${version.jdepend}" conf="tools"/>
-    <dependency org="junit" name="junit" rev="${version.junit}" conf="test"/>
-    <dependency org="log4j" name="log4j" rev="${version.apache-log4j}" conf="common,ironjacamar-depchain"/>
-    <dependency org="org.apache" name="jasper" rev="${version.jasper}" conf="jetty"/>
-    <dependency org="org.apache.ant" name="ant" rev="${version.ant}" conf="tools,ironjacamar-validator-ant"/>
-    <dependency org="org.apache.maven" name="maven-plugin-api" rev="${version.maven}" conf="tools,ironjacamar-validator-maven"/>
-    <dependency org="org.eclipse.jdt.core.compiler" name="ecj" rev="${version.eclipse.ecj}" conf="jetty"/>
-    <dependency org="org.eclipse.jetty" name="jetty-continuation" rev="${version.jetty}" conf="jetty"/>
-    <dependency org="org.eclipse.jetty" name="jetty-http" rev="${version.jetty}" conf="jetty"/>
-    <dependency org="org.eclipse.jetty" name="jetty-io" rev="${version.jetty}" conf="jetty"/>
-    <dependency org="org.eclipse.jetty" name="jetty-jsp-2.1" rev="${version.jetty}" conf="jetty"/>
-    <dependency org="org.eclipse.jetty" name="jetty-nested" rev="${version.jetty}" conf="jetty"/>
-    <dependency org="org.eclipse.jetty" name="jetty-security" rev="${version.jetty}" conf="jetty"/>
-    <dependency org="org.eclipse.jetty" name="jetty-server" rev="${version.jetty}" conf="jetty"/>
-    <dependency org="org.eclipse.jetty" name="jetty-servlet" rev="${version.jetty}" conf="jetty"/>
-    <dependency org="org.eclipse.jetty" name="jetty-util" rev="${version.jetty}" conf="jetty"/>
-    <dependency org="org.eclipse.jetty" name="jetty-webapp" rev="${version.jetty}" conf="jetty"/>
-    <dependency org="org.eclipse.jetty" name="jetty-xml" rev="${version.jetty}" conf="jetty"/>
-    <dependency org="org.hibernate" name="hibernate-annotations" rev="${version.hibernate-annotations}" conf="rhq"/>
-    <dependency org="org.hibernate" name="hibernate-validator" rev="${version.hibernate-validator}" conf="common,ironjacamar-depchain"/>
-    <dependency org="org.hornetq" name="hornetq-core" rev="${version.hornetq}" conf="hornetq,ironjacamar-depchain"/>
-    <dependency org="org.hornetq" name="hornetq-core-client" rev="${version.hornetq}" conf="hornetq,ironjacamar-depchain"/>
-    <dependency org="org.hornetq" name="hornetq-jms" rev="${version.hornetq}" conf="hornetq,ironjacamar-depchain"/>
-    <dependency org="org.hornetq" name="hornetq-jms-client" rev="${version.hornetq}" conf="hornetq,ironjacamar-depchain"/>
-    <dependency org="org.hornetq" name="hornetq-ra" rev="${version.hornetq}" conf="hornetq">
-      <artifact name="hornetq-ra" type="jar" conf="hornetq"/>
-      <artifact name="hornetq-ra" type="rar" conf="hornetq"/>
-    </dependency>
-    <dependency org="org.javassist" name="javassist" rev="${version.javassist}" conf="common,ironjacamar-depchain"/>
-    <dependency org="org.jboss" name="jboss-common-core" rev="${version.jboss.common}" conf="common,ironjacamar-common-impl,ironjacamar-core-impl,ironjacamar-depchain"/>
-    <dependency org="org.jboss.apiviz" name="apiviz" rev="${version.apiviz}" conf="tools"/>
-    <dependency org="org.jboss.arquillian" name="arquillian-api" rev="${version.arquillian}" conf="arquillian,ironjacamar-depchain,ironjacamar-embedded-arquillian"/>
-    <dependency org="org.jboss.arquillian" name="arquillian-impl-base" rev="${version.arquillian}" conf="arquillian,ironjacamar-depchain,ironjacamar-embedded-arquillian"/>
-    <dependency org="org.jboss.arquillian" name="arquillian-junit" rev="${version.arquillian}" conf="arquillian,ironjacamar-depchain,ironjacamar-embedded-arquillian"/>
-    <dependency org="org.jboss.arquillian" name="arquillian-spi" rev="${version.arquillian}" conf="arquillian,ironjacamar-depchain,ironjacamar-embedded-arquillian"/>
-    <dependency org="org.jboss.arquillian.protocol" name="arquillian-protocol-local" rev="${version.arquillian}" conf="arquillian,ironjacamar-depchain,ironjacamar-embedded-arquillian"/>
-    <dependency org="org.jboss.arquillian.testenricher" name="arquillian-testenricher-resource" rev="${version.arquillian}" conf="arquillian,ironjacamar-depchain,ironjacamar-embedded-arquillian"/>
-    <dependency org="org.jboss.integration" name="jboss-transaction-spi" rev="${version.jboss.integration}" conf="common,ironjacamar-core-api,ironjacamar-core-impl,ironjacamar-depchain"/>
-    <dependency org="org.jboss.javaee" name="jboss-jaspi-api" rev="${version.jboss.jaspi.api}" conf="common,ironjacamar-core-impl,ironjacamar-depchain"/>
-    <dependency org="org.jboss.javaee" name="jboss-transaction-api" rev="${version.transaction.api}" conf="common,ironjacamar-core-api,ironjacamar-core-impl,ironjacamar-depchain,ironjacamar-deployers-fungal,ironjacamar-spec-api"/>
-    <dependency org="org.jboss.jbossts" name="jbossjts" rev="${version.jboss.ts}" conf="common,ironjacamar-depchain"/>
-    <dependency org="org.jboss.jbossts" name="jbossjts-integration" rev="${version.jboss.ts}" conf="common,ironjacamar-depchain"/>
-    <dependency org="org.jboss.naming" name="jnpserver" rev="${version.jboss.naming}" conf="common,ironjacamar-depchain"/>
-    <dependency org="org.jboss.netty" name="netty" rev="${version.jboss.netty}" conf="hornetq,ironjacamar-depchain"/>
-    <dependency org="org.jboss.papaki" name="papaki-core" rev="${version.jboss.papaki}" conf="common,ironjacamar-common-impl-papaki,ironjacamar-depchain"/>
-    <dependency org="org.jboss.shrinkwrap" name="shrinkwrap-api" rev="${version.jboss.shrinkwrap}" conf="embedded,ironjacamar-depchain,ironjacamar-embedded,ironjacamar-embedded-arquillian"/>
-    <dependency org="org.jboss.shrinkwrap" name="shrinkwrap-impl-base" rev="${version.jboss.shrinkwrap}" conf="embedded,ironjacamar-depchain"/>
-    <dependency org="org.jboss.shrinkwrap" name="shrinkwrap-spi" rev="${version.jboss.shrinkwrap}" conf="embedded,ironjacamar-depchain"/>
-    <dependency org="org.jboss.slf4j" name="slf4j-jboss-logmanager" rev="${version.jboss.slf4j.logmanager}" conf="common,ironjacamar-depchain"/>
-    <dependency org="org.jboss.spec.javax.jms" name="jboss-jms-api_1.1_spec" rev="${version.jboss.jms.api}" conf="hornetq,ironjacamar-depchain"/>
-    <dependency org="org.jboss.stdio" name="jboss-stdio" rev="${version.jboss.stdio}" conf="common,ironjacamar-depchain"/>
-    <dependency org="org.jboss.threads" name="jboss-threads" rev="${version.jboss.threads}" conf="common,ironjacamar-core-api,ironjacamar-core-impl,ironjacamar-depchain"/>
-    <dependency org="org.mockito" name="mockito-all" rev="${version.mockito}" conf="test"/>
-    <dependency org="org.mortbay.jetty" name="jsp-api-2.1-glassfish"  rev="${version.jetty.glassfish}" conf="jetty"/>
-    <dependency org="org.mortbay.jetty" name="servlet-api-2.5" rev="${version.jetty.servlet}" conf="jetty"/>
-    <dependency org="org.picketbox" name="picketbox" rev="${version.jboss.picketbox}" conf="common,ironjacamar-depchain"/>
-    <dependency org="org.rhq" name="rhq-core-plugin-api" rev="${version.rhq}" conf="rhq"/>
-    <dependency org="org.rhq" name="rhq-core-client-api" rev="${version.rhq}" conf="rhq"/>
-    <dependency org="org.rhq" name="rhq-core-domain" rev="${version.rhq}" conf="rhq"/>
-    <dependency org="org.rhq" name="rhq-core-native-system" rev="${version.rhq}" conf="rhq"/>
-    <dependency org="org.rhq" name="rhq-core-util" rev="${version.rhq}" conf="rhq"/>
-    <dependency org="org.rhq" name="rhq-core-plugin-container" rev="${version.rhq}" conf="rhq"/>
-    <dependency org="org.rhq" name="rhq-core-comm-api" rev="${version.rhq}" conf="rhq"/>
-    <dependency org="org.slf4j" name="jcl-over-slf4j" rev="${version.slf4j}" conf="common,ironjacamar-depchain"/>
-    <dependency org="org.slf4j" name="slf4j-api" rev="${version.slf4j}" conf="common,ironjacamar-depchain"/>
-  </dependencies>
-
-</ivy-module>

Copied: projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/ivy.xml (from rev 111242, projects/jboss-jca/trunk/ivy.xml)
===================================================================
--- projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/ivy.xml	                        (rev 0)
+++ projects/jboss-jca/tags/IRONJACAMAR_1_0_0_BETA6/ivy.xml	2011-04-25 14:41:10 UTC (rev 111243)
@@ -0,0 +1,179 @@
+<!--
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2008, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file 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.
+-->
+<ivy-module version="2.2" 
+            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+            xsi:noNamespaceSchemaLocation="http://ant.apache.org/ivy/schemas/ivy.xsd">
+
+  <info organisation="org.jboss.ironjacamar" 
+        module="ironjacamar"
+        revision="${version}">
+    <license name="lgpl" url="http://repository.jboss.org/licenses/lgpl.txt"/>
+    <repository name="jboss" url="http://repository.jboss.org"/>
+    <description homepage="http://www.jboss.org/ironjacamar">
+      The IronJacamar project implements the Java EE Connector Architecture 1.6 specification
+    </description>
+  </info>
+
+  <configurations defaultconfmapping="common->default;sjc->default;embedded->default;arquillian->default;jetty->default;test->default;mail->default;;tools->default;ironjacamar-codegenerator->default;ironjacamar-common-api->default;ironjacamar-common-impl->default;ironjacamar-common-impl-papaki->default;ironjacamar-common-spi->default;ironjacamar-core-api->default;ironjacamar-core-impl->default;ironjacamar-depchain->default;ironjacamar-deployers-common->default;ironjacamar-deployers-fungal->default;ironjacamar-embedded->default;ironjacamar-embedded-arquillian->default;ironjacamar.jdbc->default;ironjacamar-spec-api->default;ironjacamar-validator->default;ironjacamar-validator-ant->default;ironjacamar-validator-cli->default;ironjacamar-validator-maven->default;jdbc-local->default;jdbc-xa->default;rhq->default;hornetq->default">
+    <conf name="arquillian" transitive="false"/>
+    <conf name="common" transitive="false"/>
+    <conf name="embedded" transitive="false"/>
+    <conf name="hornetq" transitive="false"/>
+    <conf name="jetty" transitive="false"/>
+    <conf name="mail" transitive="false"/>
+    <conf name="sjc" transitive="false"/>
+    <conf name="test" transitive="false"/>
+    <conf name="tools" transitive="false"/>
+    <conf name="rhq" transitive="false"/>
+
+    <conf name="ironjacamar-codegenerator" transitive="false"/>
+    <conf name="ironjacamar-common-api" transitive="false"/>
+    <conf name="ironjacamar-common-impl" transitive="false"/>
+    <conf name="ironjacamar-common-impl-papaki" transitive="false"/>
+    <conf name="ironjacamar-common-spi" transitive="false"/>
+    <conf name="ironjacamar-core-api" transitive="false"/>
+    <conf name="ironjacamar-core-impl" transitive="false"/>
+    <conf name="ironjacamar-depchain" transitive="false"/>
+    <conf name="ironjacamar-deployers-common" transitive="false"/>
+    <conf name="ironjacamar-deployers-fungal" transitive="false"/>
+    <conf name="ironjacamar-embedded" transitive="false"/>
+    <conf name="ironjacamar-embedded-arquillian" transitive="false"/>
+    <conf name="ironjacamar-jdbc" transitive="false"/>
+    <conf name="ironjacamar-spec-api" transitive="false"/>
+    <conf name="ironjacamar-validator" transitive="false"/>
+    <conf name="ironjacamar-validator-ant" transitive="false"/>
+    <conf name="ironjacamar-validator-cli" transitive="false"/>
+    <conf name="ironjacamar-validator-maven" transitive="false"/>
+    <conf name="jdbc-local" transitive="false"/>
+    <conf name="jdbc-xa" transitive="false"/>
+    <conf name="mail" transitive="false"/>
+  </configurations>
+
+  <publications>
+    <artifact name="ironjacamar-codegenerator" type="jar"/>
+    <artifact name="ironjacamar-common-api" type="jar"/>
+    <artifact name="ironjacamar-common-impl" type="jar"/>
+    <artifact name="ironjacamar-common-impl-papaki" type="jar"/>
+    <artifact name="ironjacamar-common-spi" type="jar"/>
+    <artifact name="ironjacamar-core-api" type="jar"/>
+    <artifact name="ironjacamar-core-impl" type="jar"/>
+    <artifact name="ironjacamar-depchain" type="pom"/>
+    <artifact name="ironjacamar-deployers-common" type="jar"/>
+    <artifact name="ironjacamar-deployers-fungal" type="jar"/>
+    <artifact name="ironjacamar-embedded-arquillian" type="jar"/>
+    <artifact name="ironjacamar-embedded" type="jar"/>
+    <artifact name="ironjacamar-jdbc" type="jar"/>
+    <artifact name="ironjacamar-spec-api" type="jar"/>
+    <artifact name="ironjacamar-validator" type="jar"/>
+    <artifact name="ironjacamar-validator-cli" type="jar"/>
+    <artifact name="ironjacamar-validator-ant" type="jar"/>
+    <artifact name="ironjacamar-validator-maven" type="jar"/>
+    <artifact name="jdbc-local" type="rar"/>
+    <artifact name="jdbc-xa" type="rar"/>
+    <artifact name="mail" type="rar"/>
+  </publications>
+
+  <dependencies>
+    <!-- Maven doesn't handle dependencies well, so logging has to be first -->
+    <dependency org="org.jboss.logging" name="jboss-logging" rev="${version.jboss.logging}" conf="common,ironjacamar-common-impl,ironjacamar-common-impl-papaki,ironjacamar-core-impl,ironjacamar-depchain,ironjacamar-deployers-common,ironjacamar-deployers-fungal"/>
+    <dependency org="org.jboss.logmanager" name="jboss-logmanager" rev="${version.jboss.logmanager}" conf="common,ironjacamar-depchain"/>
+
+    <!-- Keep these sorted -->
+    <dependency org="apache-logging" name="commons-logging" rev="${version.apache-logging}" conf="common,ironjacamar-depchain"/>
+    <dependency org="com.github.fungal" name="fungal" rev="${version.fungal}" conf="sjc,ironjacamar-depchain,ironjacamar-deployers-fungal,ironjacamar-embedded"/>
+    <dependency org="com.github.fungal" name="fungal-cli" rev="${version.fungal}" conf="sjc,ironjacamar-depchain"/>
+    <dependency org="com.h2database" name="h2" rev="${version.h2}" conf="test"/>
+    <dependency org="dom4j" name="dom4j" rev="${version.dom4j}" conf="jetty,tools"/>
+    <dependency org="javax.activation" name="activation" rev="${version.activation}" conf="rhq"/>
+    <dependency org="javax.mail" name="mail" rev="${version.mail-api}" conf="mail"/>
+    <dependency org="javax.persistence" name="persistence-api" rev="${version.jpa}" conf="rhq"/>
+    <dependency org="javax.validation" name="validation-api" rev="${version.validation-api}" conf="common,ironjacamar-core-impl,ironjacamar-depchain,ironjacamar-deployers-fungal"/>
+    <dependency org="javax.xml" name="jaxb-api" rev="${version.jaxb.api}" conf="rhq"/>
+    <dependency org="javax.xml" name="jaxb-impl" rev="${version.jaxb.impl}" conf="rhq"/>
+    <dependency org="jdepend" name="jdepend" rev="${version.jdepend}" conf="tools"/>
+    <dependency org="junit" name="junit" rev="${version.junit}" conf="test"/>
+    <dependency org="log4j" name="log4j" rev="${version.apache-log4j}" conf="common,ironjacamar-depchain"/>
+    <dependency org="org.apache" name="jasper" rev="${version.jasper}" conf="jetty"/>
+    <dependency org="org.apache.ant" name="ant" rev="${version.ant}" conf="tools,ironjacamar-validator-ant"/>
+    <dependency org="org.apache.maven" name="maven-plugin-api" rev="${version.maven}" conf="tools,ironjacamar-validator-maven"/>
+    <dependency org="org.eclipse.jdt.core.compiler" name="ecj" rev="${version.eclipse.ecj}" conf="jetty"/>
+    <dependency org="org.eclipse.jetty" name="jetty-continuation" rev="${version.jetty}" conf="jetty"/>
+    <dependency org="org.eclipse.jetty" name="jetty-http" rev="${version.jetty}" conf="jetty"/>
+    <dependency org="org.eclipse.jetty" name="jetty-io" rev="${version.jetty}" conf="jetty"/>
+    <dependency org="org.eclipse.jetty" name="jetty-jsp-2.1" rev="${version.jetty}" conf="jetty"/>
+    <dependency org="org.eclipse.jetty" name="jetty-nested" rev="${version.jetty}" conf="jetty"/>
+    <dependency org="org.eclipse.jetty" name="jetty-security" rev="${version.jetty}" conf="jetty"/>
+    <dependency org="org.eclipse.jetty" name="jetty-server" rev="${version.jetty}" conf="jetty"/>
+    <dependency org="org.eclipse.jetty" name="jetty-servlet" rev="${version.jetty}" conf="jetty"/>
+    <dependency org="org.eclipse.jetty" name="jetty-util" rev="${version.jetty}" conf="jetty"/>
+    <dependency org="org.eclipse.jetty" name="jetty-webapp" rev="${version.jetty}" conf="jetty"/>
+    <dependency org="org.eclipse.jetty" name="jetty-xml" rev="${version.jetty}" conf="jetty"/>
+    <dependency org="org.hibernate" name="hibernate-annotations" rev="${version.hibernate-annotations}" conf="rhq"/>
+    <dependency org="org.hibernate" name="hibernate-validator" rev="${version.hibernate-validator}" conf="common,ironjacamar-depchain"/>
+    <dependency org="org.hornetq" name="hornetq-core" rev="${version.hornetq}" conf="hornetq,ironjacamar-depchain"/>
+    <dependency org="org.hornetq" name="hornetq-core-client" rev="${version.hornetq}" conf="hornetq,ironjacamar-depchain"/>
+    <dependency org="org.hornetq" name="hornetq-jms" rev="${version.hornetq}" conf="hornetq,ironjacamar-depchain"/>
+    <dependency org="org.hornetq" name="hornetq-jms-client" rev="${version.hornetq}" conf="hornetq,ironjacamar-depchain"/>
+    <dependency org="org.hornetq" name="hornetq-ra" rev="${version.hornetq}" conf="hornetq">
+      <artifact name="hornetq-ra" type="jar" conf="hornetq"/>
+      <artifact name="hornetq-ra" type="rar" conf="hornetq"/>
+    </dependency>
+    <dependency org="org.javassist" name="javassist" rev="${version.javassist}" conf="common,ironjacamar-depchain"/>
+    <dependency org="org.jboss" name="jboss-common-core" rev="${version.jboss.common}" conf="common,ironjacamar-common-impl,ironjacamar-core-impl,ironjacamar-depchain"/>
+    <dependency org="org.jboss.apiviz" name="apiviz" rev="${version.apiviz}" conf="tools"/>
+    <dependency org="org.jboss.arquillian" name="arquillian-api" rev="${version.arquillian}" conf="arquillian,ironjacamar-depchain,ironjacamar-embedded-arquillian"/>
+    <dependency org="org.jboss.arquillian" name="arquillian-impl-base" rev="${version.arquillian}" conf="arquillian,ironjacamar-depchain,ironjacamar-embedded-arquillian"/>
+    <dependency org="org.jboss.arquillian" name="arquillian-junit" rev="${version.arquillian}" conf="arquillian,ironjacamar-depchain,ironjacamar-embedded-arquillian"/>
+    <dependency org="org.jboss.arquillian" name="arquillian-spi" rev="${version.arquillian}" conf="arquillian,ironjacamar-depchain,ironjacamar-embedded-arquillian"/>
+    <dependency org="org.jboss.arquillian.protocol" name="arquillian-protocol-local" rev="${version.arquillian}" conf="arquillian,ironjacamar-depchain,ironjacamar-embedded-arquillian"/>
+    <dependency org="org.jboss.arquillian.testenricher" name="arquillian-testenricher-resource" rev="${version.arquillian}" conf="arquillian,ironjacamar-depchain,ironjacamar-embedded-arquillian"/>
+    <dependency org="org.jboss.integration" name="jboss-transaction-spi" rev="${version.jboss.integration}" conf="common,ironjacamar-core-api,ironjacamar-core-impl,ironjacamar-depchain"/>
+    <dependency org="org.jboss.javaee" name="jboss-jaspi-api" rev="${version.jboss.jaspi.api}" conf="common,ironjacamar-core-impl,ironjacamar-depchain"/>
+    <dependency org="org.jboss.javaee" name="jboss-transaction-api" rev="${version.transaction.api}" conf="common,ironjacamar-core-api,ironjacamar-core-impl,ironjacamar-depchain,ironjacamar-deployers-fungal,ironjacamar-spec-api"/>
+    <dependency org="org.jboss.jbossts" name="jbossjts" rev="${version.jboss.ts}" conf="common,ironjacamar-depchain"/>
+    <dependency org="org.jboss.jbossts" name="jbossjts-integration" rev="${version.jboss.ts}" conf="common,ironjacamar-depchain"/>
+    <dependency org="org.jboss.naming" name="jnpserver" rev="${version.jboss.naming}" conf="common,ironjacamar-depchain"/>
+    <dependency org="org.jboss.netty" name="netty" rev="${version.jboss.netty}" conf="hornetq,ironjacamar-depchain"/>
+    <dependency org="org.jboss.papaki" name="papaki-core" rev="${version.jboss.papaki}" conf="common,ironjacamar-common-impl-papaki,ironjacamar-depchain"/>
+    <dependency org="org.jboss.shrinkwrap" name="shrinkwrap-api" rev="${version.jboss.shrinkwrap}" conf="embedded,ironjacamar-depchain,ironjacamar-embedded,ironjacamar-embedded-arquillian"/>
+    <dependency org="org.jboss.shrinkwrap" name="shrinkwrap-impl-base" rev="${version.jboss.shrinkwrap}" conf="embedded,ironjacamar-depchain"/>
+    <dependency org="org.jboss.shrinkwrap" name="shrinkwrap-spi" rev="${version.jboss.shrinkwrap}" conf="embedded,ironjacamar-depchain"/>
+    <dependency org="org.jboss.slf4j" name="slf4j-jboss-logmanager" rev="${version.jboss.slf4j.logmanager}" conf="common,ironjacamar-depchain"/>
+    <dependency org="org.jboss.spec.javax.jms" name="jboss-jms-api_1.1_spec" rev="${version.jboss.jms.api}" conf="hornetq,ironjacamar-depchain"/>
+    <dependency org="org.jboss.stdio" name="jboss-stdio" rev="${version.jboss.stdio}" conf="common,ironjacamar-depchain"/>
+    <dependency org="org.jboss.threads" name="jboss-threads" rev="${version.jboss.threads}" conf="common,ironjacamar-core-api,ironjacamar-core-impl,ironjacamar-depchain"/>
+    <dependency org="org.mockito" name="mockito-all" rev="${version.mockito}" conf="test"/>
+    <dependency org="org.mortbay.jetty" name="jsp-api-2.1-glassfish"  rev="${version.jetty.glassfish}" conf="jetty"/>
+    <dependency org="org.mortbay.jetty" name="servlet-api-2.5" rev="${version.jetty.servlet}" conf="jetty"/>
+    <dependency org="org.picketbox" name="picketbox" rev="${version.jboss.picketbox}" conf="common,ironjacamar-depchain"/>
+    <dependency org="org.rhq" name="rhq-core-plugin-api" rev="${version.rhq}" conf="rhq"/>
+    <dependency org="org.rhq" name="rhq-core-client-api" rev="${version.rhq}" conf="rhq"/>
+    <dependency org="org.rhq" name="rhq-core-domain" rev="${version.rhq}" conf="rhq"/>
+    <dependency org="org.rhq" name="rhq-core-native-system" rev="${version.rhq}" conf="rhq"/>
+    <dependency org="org.rhq" name="rhq-core-util" rev="${version.rhq}" conf="rhq"/>
+    <dependency org="org.rhq" name="rhq-core-plugin-container" rev="${version.rhq}" conf="rhq"/>
+    <dependency org="org.rhq" name="rhq-core-comm-api" rev="${version.rhq}" conf="rhq"/>
+    <dependency org="org.slf4j" name="jcl-over-slf4j" rev="${version.slf4j}" conf="common,ironjacamar-depchain"/>
+    <dependency org="org.slf4j" name="slf4j-api" rev="${version.slf4j}" conf="common,ironjacamar-depchain"/>
+  </dependencies>
+
+</ivy-module>



More information about the jboss-cvs-commits mailing list