[jboss-cvs] JBossAS SVN: r73399 - in projects/ejb3/trunk: common/src/main/java/org and 9 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Wed May 14 18:47:19 EDT 2008
Author: ALRubinger
Date: 2008-05-14 18:47:19 -0400 (Wed, 14 May 2008)
New Revision: 73399
Added:
projects/ejb3/trunk/common/src/main/java/org/
projects/ejb3/trunk/common/src/main/java/org/jboss/
projects/ejb3/trunk/common/src/main/java/org/jboss/ejb3/
projects/ejb3/trunk/common/src/main/java/org/jboss/ejb3/common/
projects/ejb3/trunk/common/src/main/java/org/jboss/ejb3/common/lang/
projects/ejb3/trunk/common/src/main/java/org/jboss/ejb3/common/lang/ClassHelper.java
Removed:
projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/lang/ClassHelper.java
Modified:
projects/ejb3/trunk/core/.classpath
projects/ejb3/trunk/core/.project
projects/ejb3/trunk/core/.settings/org.eclipse.jdt.core.prefs
projects/ejb3/trunk/core/pom.xml
projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/Ejb3Deployment.java
projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/Ejb3DescriptorHandler.java
projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/proxy/factory/ProxyFactoryHelper.java
Log:
[EJBTHREE-1363] Move ClassHelper to new EJB3 Commons
Copied: projects/ejb3/trunk/common/src/main/java/org/jboss/ejb3/common/lang/ClassHelper.java (from rev 73384, projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/lang/ClassHelper.java)
===================================================================
--- projects/ejb3/trunk/common/src/main/java/org/jboss/ejb3/common/lang/ClassHelper.java (rev 0)
+++ projects/ejb3/trunk/common/src/main/java/org/jboss/ejb3/common/lang/ClassHelper.java 2008-05-14 22:47:19 UTC (rev 73399)
@@ -0,0 +1,194 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2007, Red Hat Middleware LLC, and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.ejb3.common.lang;
+
+import java.lang.reflect.Method;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+
+/**
+ * Usefull methods for classes.
+ *
+ * @author <a href="mailto:carlo.dewolf at jboss.com">Carlo de Wolf</a>
+ * @version $Revision$
+ */
+public class ClassHelper
+{
+ /**
+ * Casts an object to the class or interface represented
+ * by the targetClass <tt>Class</tt> object.
+ * The ClassCastException thrown is more descriptive than
+ * the original.
+ *
+ * @param obj the object to be cast
+ * @return the object after casting, or null if obj is null
+ *
+ * @throws ClassCastException if the object is not
+ * null and is not assignable to the type T.
+ */
+ public static <T> T cast(Class<T> targetClass, Object obj)
+ {
+ try
+ {
+ return targetClass.cast(obj);
+ }
+ catch(ClassCastException e)
+ {
+ assert obj != null : "a null can always be cast, it should never throw a ClassCastException";
+ throw new ClassCastException("Unable to cast " + obj.getClass() + " to " + targetClass);
+ }
+ }
+
+ /**
+ * @see Class#argumentTypesToString
+ */
+ private static String argumentTypesToString(Class<?>[] argTypes)
+ {
+ StringBuilder buf = new StringBuilder();
+ buf.append("(");
+ if (argTypes != null)
+ {
+ for (int i = 0; i < argTypes.length; i++)
+ {
+ if (i > 0)
+ {
+ buf.append(", ");
+ }
+ Class<?> c = argTypes[i];
+ buf.append((c == null) ? "null" : c.getName());
+ }
+ }
+ buf.append(")");
+ return buf.toString();
+ }
+
+ private static Method findPrivateMethod(Class<?> target, String methodName, Class<?>... paramTypes)
+ {
+ // Top of the world
+ if(target == null)
+ return null;
+
+ // TODO: what is faster? scan or catch exception?
+ for(Method method : target.getDeclaredMethods())
+ {
+ if(method.getName().equals(methodName))
+ {
+ if(paramTypes == null)
+ return method;
+
+ if(Arrays.equals(method.getParameterTypes(), paramTypes))
+ return method;
+ }
+ }
+
+ return findPrivateMethod(target.getSuperclass(), methodName, paramTypes);
+ }
+
+ /**
+ * Find all methods with a specific name on a class and it's super classes
+ * regardless of parameter signature.
+ *
+ * @param cls the class to scan
+ * @param methodName the name of the methods to find
+ * @return a list of methods found, or empty
+ */
+ public static List<Method> getAllMethodsByName(Class<?> cls, String methodName)
+ {
+ List<Method> methods = new ArrayList<Method>();
+ populateWithMethodsByName(methods, cls, methodName);
+ return methods;
+ }
+
+ /**
+ * Find all methods starting with the specified prefix on the specified
+ * class
+ *
+ * @param clazz
+ * @param methodNamePrefix
+ * @return
+ */
+ public static List<Method> getAllMethodsByPrefix(Class<?> clazz, String methodNamePrefix)
+ {
+ List<Method> methods = new ArrayList<Method>();
+ ClassHelper.populateWithMethodsByPrefix(methods, clazz, methodNamePrefix);
+ return methods;
+ }
+
+ /**
+ * Returns the <code>Method</code> with the given attributes of either this class
+ * or one of it's super classes.
+ *
+ * TODO: return type specifics are not considered
+ * FIXME: rename method (it must return all modifiers)
+ *
+ * @param cls class to scan
+ * @param methodName the name of the method
+ * @param paramTypes the parameter types
+ * @return the <code>Method</code> matching the method name and parameters
+ * @throws NoSuchMethodException if no method can be found
+ */
+ public static Method getPrivateMethod(Class<?> cls, String methodName, Class<?>... paramTypes) throws NoSuchMethodException
+ {
+ assert cls != null : "cls is null";
+ assert methodName != null : "methodName is null";
+
+ Method result = findPrivateMethod(cls, methodName, paramTypes);
+ if(result == null)
+ throw new NoSuchMethodException(cls.getName() + "." + methodName + argumentTypesToString(paramTypes));
+
+ return result;
+ }
+
+ private static void populateWithMethodsByName(List<Method> methods, Class<?> cls, String methodName)
+ {
+ // Top of the world
+ if(cls == null)
+ return;
+
+ for(Method method : cls.getDeclaredMethods())
+ {
+ if(method.getName().equals(methodName))
+ methods.add(method);
+ }
+
+ populateWithMethodsByName(methods, cls.getSuperclass(), methodName);
+ }
+
+ private static void populateWithMethodsByPrefix(List<Method> methods, Class<?> clazz, String methodNamePrefix)
+ {
+ // Exit Condition
+ if (clazz == null)
+ {
+ return;
+ }
+
+ // For all declared methods
+ for (Method method : clazz.getDeclaredMethods())
+ {
+ if (method.getName().startsWith(methodNamePrefix))
+ methods.add(method);
+ }
+
+ populateWithMethodsByPrefix(methods, clazz.getSuperclass(), methodNamePrefix);
+ }
+}
Modified: projects/ejb3/trunk/core/.classpath
===================================================================
--- projects/ejb3/trunk/core/.classpath 2008-05-14 22:32:05 UTC (rev 73398)
+++ projects/ejb3/trunk/core/.classpath 2008-05-14 22:47:19 UTC (rev 73399)
@@ -1,10 +1,160 @@
-<?xml version="1.0" encoding="UTF-8"?>
<classpath>
- <classpathentry kind="src" path="src/main/java"/>
- <classpathentry excluding="**/*.java" kind="src" path="src/main/resources"/>
- <classpathentry kind="src" output="eclipse-target/tests-classes" path="src/test/java"/>
- <classpathentry excluding="**/*.java" kind="src" output="eclipse-target/tests-classes" path="src/test/resources"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
- <classpathentry kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER"/>
- <classpathentry kind="output" path="eclipse-target/classes"/>
-</classpath>
+ <classpathentry kind="src" path="src/main/java"/>
+ <classpathentry kind="src" path="src/main/resources" excluding="**/*.java"/>
+ <classpathentry kind="src" path="src/test/java" output="target/tests-classes"/>
+ <classpathentry kind="src" path="src/test/resources" output="target/tests-classes" excluding="**/*.java"/>
+ <classpathentry kind="output" path="target/classes"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+ <classpathentry kind="var" path="M2_REPO/javax/activation/activation/1.0.2/activation-1.0.2.jar"/>
+ <classpathentry kind="var" path="M2_REPO/ant/ant/1.6.5/ant-1.6.5.jar" sourcepath="M2_REPO/ant/ant/1.6.5/ant-1.6.5-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/apache/ant/ant/1.7.0/ant-1.7.0.jar"/>
+ <classpathentry kind="var" path="M2_REPO/ant/ant-junit/1.6.5/ant-junit-1.6.5.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/apache/ant/ant-junit/1.7.0/ant-junit-1.7.0.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/apache/ant/ant-launcher/1.7.0/ant-launcher-1.7.0.jar"/>
+ <classpathentry kind="var" path="M2_REPO/antlr/antlr/2.7.6/antlr-2.7.6.jar" sourcepath="M2_REPO/antlr/antlr/2.7.6/antlr-2.7.6-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/asm/asm/1.5.3/asm-1.5.3.jar"/>
+ <classpathentry kind="var" path="M2_REPO/asm/asm-attrs/1.5.3/asm-attrs-1.5.3.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/security/authorization-spi/2.0.2.Beta4/authorization-spi-2.0.2.Beta4.jar" sourcepath="M2_REPO/org/jboss/security/authorization-spi/2.0.2.Beta4/authorization-spi-2.0.2.Beta4-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/bcel/bcel/5.1/bcel-5.1.jar" sourcepath="M2_REPO/bcel/bcel/5.1/bcel-5.1-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/bsh/bsh/1.3.0/bsh-1.3.0.jar"/>
+ <classpathentry kind="var" path="M2_REPO/cglib/cglib/2.1_3/cglib-2.1_3.jar" sourcepath="M2_REPO/cglib/cglib/2.1_3/cglib-2.1_3-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/commons-collections/commons-collections/2.1.1/commons-collections-2.1.1.jar" sourcepath="M2_REPO/commons-collections/commons-collections/2.1.1/commons-collections-2.1.1-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/apache-httpclient/commons-httpclient/2.0.2/commons-httpclient-2.0.2.jar"/>
+ <classpathentry kind="var" path="M2_REPO/commons-logging/commons-logging/1.0.4/commons-logging-1.0.4.jar" sourcepath="M2_REPO/commons-logging/commons-logging/1.0.4/commons-logging-1.0.4-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/oswego-concurrent/concurrent/1.3.4-jboss-update1/concurrent-1.3.4-jboss-update1.jar" sourcepath="M2_REPO/oswego-concurrent/concurrent/1.3.4-jboss-update1/concurrent-1.3.4-jboss-update1-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/dom4j/dom4j/1.6.1/dom4j-1.6.1.jar" sourcepath="M2_REPO/dom4j/dom4j/1.6.1/dom4j-1.6.1-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/wutka-dtdparser/dtdparser121/1.2.1/dtdparser121-1.2.1.jar"/>
+ <classpathentry kind="var" path="M2_REPO/net/sf/ehcache/ehcache/1.2.3/ehcache-1.2.3.jar" sourcepath="M2_REPO/net/sf/ehcache/ehcache/1.2.3/ehcache-1.2.3-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/hibernate/ejb3-persistence/1.0.1.GA/ejb3-persistence-1.0.1.GA.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate/3.2.6.ga/hibernate-3.2.6.ga.jar" sourcepath="M2_REPO/org/hibernate/hibernate/3.2.6.ga/hibernate-3.2.6.ga-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-annotations/3.3.1.GA/hibernate-annotations-3.3.1.GA.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-commons-annotations/3.0.0.ga/hibernate-commons-annotations-3.0.0.ga.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/hibernate/hibernate-entitymanager/3.3.2.GA/hibernate-entitymanager-3.3.2.GA.jar"/>
+ <classpathentry kind="var" path="M2_REPO/hsqldb/hsqldb/1.8.0.7/hsqldb-1.8.0.7.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/security/identity-spi/2.0.2.Beta4/identity-spi-2.0.2.Beta4.jar" sourcepath="M2_REPO/org/jboss/security/identity-spi/2.0.2.Beta4/identity-spi-2.0.2.Beta4-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/javax/security/jaas/1.0.01/jaas-1.0.01.jar"/>
+ <classpathentry kind="var" path="M2_REPO/javax/security/jacc/1.0/jacc-1.0.jar"/>
+ <classpathentry kind="var" path="M2_REPO/urbanophile/java-getopt/1.0.9/java-getopt-1.0.9.jar"/>
+ <classpathentry kind="var" path="M2_REPO/javassist/javassist/3.4.GA/javassist-3.4.GA.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/javassist/3.6.0.GA/javassist-3.6.0.GA.jar" sourcepath="M2_REPO/org/jboss/javassist/3.6.0.GA/javassist-3.6.0.GA-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/javax/xml/bind/jaxb-api/2.0/jaxb-api-2.0.jar"/>
+ <classpathentry kind="var" path="M2_REPO/sun-jaxb/jaxb-api/2.0.5/jaxb-api-2.0.5.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/aop/jboss-aop/2.0.0.CR7/jboss-aop-2.0.0.CR7.jar" sourcepath="M2_REPO/org/jboss/aop/jboss-aop/2.0.0.CR7/jboss-aop-2.0.0.CR7-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/aop/jboss-aop-aspects/2.0.0.CR7/jboss-aop-aspects-2.0.0.CR7.jar" sourcepath="M2_REPO/org/jboss/aop/jboss-aop-aspects/2.0.0.CR7/jboss-aop-aspects-2.0.0.CR7-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/microcontainer/jboss-aop-mc-int/2.0.0.Beta10/jboss-aop-mc-int-2.0.0.Beta10.jar" sourcepath="M2_REPO/org/jboss/microcontainer/jboss-aop-mc-int/2.0.0.Beta10/jboss-aop-mc-int-2.0.0.Beta10-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/jbossas/jboss-as-bootstrap/5.0.0.Beta4/jboss-as-bootstrap-5.0.0.Beta4.jar" sourcepath="M2_REPO/org/jboss/jbossas/jboss-as-bootstrap/5.0.0.Beta4/jboss-as-bootstrap-5.0.0.Beta4-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/jbossas/jboss-as-j2se/5.0.0.Beta4/jboss-as-j2se-5.0.0.Beta4.jar" sourcepath="M2_REPO/org/jboss/jbossas/jboss-as-j2se/5.0.0.Beta4/jboss-as-j2se-5.0.0.Beta4-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/jbossas/jboss-as-j2se/5.0.0.Beta4/jboss-as-j2se-5.0.0.Beta4-tests.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/jbossas/jboss-as-jmx/5.0.0.Beta4/jboss-as-jmx-5.0.0.Beta4.jar" sourcepath="M2_REPO/org/jboss/jbossas/jboss-as-jmx/5.0.0.Beta4/jboss-as-jmx-5.0.0.Beta4-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/jbossas/jboss-as-main/5.0.0.Beta4/jboss-as-main-5.0.0.Beta4.jar" sourcepath="M2_REPO/org/jboss/jbossas/jboss-as-main/5.0.0.Beta4/jboss-as-main-5.0.0.Beta4-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/jbossas/jboss-as-mbeans/5.0.0.Beta4/jboss-as-mbeans-5.0.0.Beta4.jar" sourcepath="M2_REPO/org/jboss/jbossas/jboss-as-mbeans/5.0.0.Beta4/jboss-as-mbeans-5.0.0.Beta4-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/jbossas/jboss-as-naming/5.0.0.Beta4/jboss-as-naming-5.0.0.Beta4.jar" sourcepath="M2_REPO/org/jboss/jbossas/jboss-as-naming/5.0.0.Beta4/jboss-as-naming-5.0.0.Beta4-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/jbossas/jboss-as-server/5.0.0.Beta4/jboss-as-server-5.0.0.Beta4.jar" sourcepath="M2_REPO/org/jboss/jbossas/jboss-as-server/5.0.0.Beta4/jboss-as-server-5.0.0.Beta4-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/jbossas/jboss-as-system/5.0.0.Beta4/jboss-as-system-5.0.0.Beta4.jar" sourcepath="M2_REPO/org/jboss/jbossas/jboss-as-system/5.0.0.Beta4/jboss-as-system-5.0.0.Beta4-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/jbossas/jboss-as-system-jmx/5.0.0.Beta4/jboss-as-system-jmx-5.0.0.Beta4.jar" sourcepath="M2_REPO/org/jboss/jbossas/jboss-as-system-jmx/5.0.0.Beta4/jboss-as-system-jmx-5.0.0.Beta4-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/cl/jboss-classloader/2.0.0.Beta11/jboss-classloader-2.0.0.Beta11.jar" sourcepath="M2_REPO/org/jboss/cl/jboss-classloader/2.0.0.Beta11/jboss-classloader-2.0.0.Beta11-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/microcontainer/jboss-classloader/2.0.0.Beta10/jboss-classloader-2.0.0.Beta10.jar" sourcepath="M2_REPO/org/jboss/microcontainer/jboss-classloader/2.0.0.Beta10/jboss-classloader-2.0.0.Beta10-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/cl/jboss-classloading/2.0.0.Beta11/jboss-classloading-2.0.0.Beta11.jar" sourcepath="M2_REPO/org/jboss/cl/jboss-classloading/2.0.0.Beta11/jboss-classloading-2.0.0.Beta11-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/jboss-classloading-spi/5.0.0.Beta4/jboss-classloading-spi-5.0.0.Beta4.jar" sourcepath="M2_REPO/org/jboss/jboss-classloading-spi/5.0.0.Beta4/jboss-classloading-spi-5.0.0.Beta4-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/cl/jboss-classloading-vfs/2.0.0.Beta11/jboss-classloading-vfs-2.0.0.Beta11.jar" sourcepath="M2_REPO/org/jboss/cl/jboss-classloading-vfs/2.0.0.Beta11/jboss-classloading-vfs-2.0.0.Beta11-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/jboss/jboss-common-core/2.0.2.GA/jboss-common-core-2.0.2.GA.jar" sourcepath="M2_REPO/jboss/jboss-common-core/2.0.2.GA/jboss-common-core-2.0.2.GA-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/jboss-common-core/2.2.5.GA/jboss-common-core-2.2.5.GA.jar" sourcepath="M2_REPO/org/jboss/jboss-common-core/2.2.5.GA/jboss-common-core-2.2.5.GA-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/jboss/jboss-common-logging-log4j/2.0.4.GA/jboss-common-logging-log4j-2.0.4.GA.jar" sourcepath="M2_REPO/jboss/jboss-common-logging-log4j/2.0.4.GA/jboss-common-logging-log4j-2.0.4.GA-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/jboss/jboss-common-logging-spi/2.0.4.GA/jboss-common-logging-spi-2.0.4.GA.jar" sourcepath="M2_REPO/jboss/jboss-common-logging-spi/2.0.4.GA/jboss-common-logging-spi-2.0.4.GA-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/microcontainer/jboss-container/2.0.0.Beta10/jboss-container-2.0.0.Beta10.jar" sourcepath="M2_REPO/org/jboss/microcontainer/jboss-container/2.0.0.Beta10/jboss-container-2.0.0.Beta10-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/aspects/jboss-current-invocation-aspects/1.0.0.Beta1/jboss-current-invocation-aspects-1.0.0.Beta1.jar" sourcepath="M2_REPO/org/jboss/aspects/jboss-current-invocation-aspects/1.0.0.Beta1/jboss-current-invocation-aspects-1.0.0.Beta1-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/microcontainer/jboss-dependency/2.0.0.Beta10/jboss-dependency-2.0.0.Beta10.jar" sourcepath="M2_REPO/org/jboss/microcontainer/jboss-dependency/2.0.0.Beta10/jboss-dependency-2.0.0.Beta10-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/deployers/jboss-deployers-client/2.0.0.Beta14/jboss-deployers-client-2.0.0.Beta14.jar" sourcepath="M2_REPO/org/jboss/deployers/jboss-deployers-client/2.0.0.Beta14/jboss-deployers-client-2.0.0.Beta14-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/microcontainer/jboss-deployers-client/2.0.0.Beta10/jboss-deployers-client-2.0.0.Beta10.jar" sourcepath="M2_REPO/org/jboss/microcontainer/jboss-deployers-client/2.0.0.Beta10/jboss-deployers-client-2.0.0.Beta10-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/deployers/jboss-deployers-client-spi/2.0.0.Beta14/jboss-deployers-client-spi-2.0.0.Beta14.jar" sourcepath="M2_REPO/org/jboss/deployers/jboss-deployers-client-spi/2.0.0.Beta14/jboss-deployers-client-spi-2.0.0.Beta14-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/microcontainer/jboss-deployers-client-spi/2.0.0.Beta10/jboss-deployers-client-spi-2.0.0.Beta10.jar" sourcepath="M2_REPO/org/jboss/microcontainer/jboss-deployers-client-spi/2.0.0.Beta10/jboss-deployers-client-spi-2.0.0.Beta10-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/deployers/jboss-deployers-core/2.0.0.Beta14/jboss-deployers-core-2.0.0.Beta14.jar" sourcepath="M2_REPO/org/jboss/deployers/jboss-deployers-core/2.0.0.Beta14/jboss-deployers-core-2.0.0.Beta14-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/microcontainer/jboss-deployers-core/2.0.0.Beta10/jboss-deployers-core-2.0.0.Beta10.jar" sourcepath="M2_REPO/org/jboss/microcontainer/jboss-deployers-core/2.0.0.Beta10/jboss-deployers-core-2.0.0.Beta10-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/deployers/jboss-deployers-core-spi/2.0.0.Beta14/jboss-deployers-core-spi-2.0.0.Beta14.jar" sourcepath="M2_REPO/org/jboss/deployers/jboss-deployers-core-spi/2.0.0.Beta14/jboss-deployers-core-spi-2.0.0.Beta14-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/microcontainer/jboss-deployers-core-spi/2.0.0.Beta10/jboss-deployers-core-spi-2.0.0.Beta10.jar" sourcepath="M2_REPO/org/jboss/microcontainer/jboss-deployers-core-spi/2.0.0.Beta10/jboss-deployers-core-spi-2.0.0.Beta10-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/deployers/jboss-deployers-impl/2.0.0.Beta14/jboss-deployers-impl-2.0.0.Beta14.jar" sourcepath="M2_REPO/org/jboss/deployers/jboss-deployers-impl/2.0.0.Beta14/jboss-deployers-impl-2.0.0.Beta14-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/microcontainer/jboss-deployers-impl/2.0.0.Beta10/jboss-deployers-impl-2.0.0.Beta10.jar" sourcepath="M2_REPO/org/jboss/microcontainer/jboss-deployers-impl/2.0.0.Beta10/jboss-deployers-impl-2.0.0.Beta10-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/deployers/jboss-deployers-spi/2.0.0.Beta14/jboss-deployers-spi-2.0.0.Beta14.jar" sourcepath="M2_REPO/org/jboss/deployers/jboss-deployers-spi/2.0.0.Beta14/jboss-deployers-spi-2.0.0.Beta14-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/microcontainer/jboss-deployers-spi/2.0.0.Beta10/jboss-deployers-spi-2.0.0.Beta10.jar" sourcepath="M2_REPO/org/jboss/microcontainer/jboss-deployers-spi/2.0.0.Beta10/jboss-deployers-spi-2.0.0.Beta10-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/deployers/jboss-deployers-structure-spi/2.0.0.Beta14/jboss-deployers-structure-spi-2.0.0.Beta14.jar" sourcepath="M2_REPO/org/jboss/deployers/jboss-deployers-structure-spi/2.0.0.Beta14/jboss-deployers-structure-spi-2.0.0.Beta14-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/microcontainer/jboss-deployers-structure-spi/2.0.0.Beta10/jboss-deployers-structure-spi-2.0.0.Beta10.jar" sourcepath="M2_REPO/org/jboss/microcontainer/jboss-deployers-structure-spi/2.0.0.Beta10/jboss-deployers-structure-spi-2.0.0.Beta10-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/deployers/jboss-deployers-vfs/2.0.0.Beta14/jboss-deployers-vfs-2.0.0.Beta14.jar" sourcepath="M2_REPO/org/jboss/deployers/jboss-deployers-vfs/2.0.0.Beta14/jboss-deployers-vfs-2.0.0.Beta14-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/microcontainer/jboss-deployers-vfs/2.0.0.Beta10/jboss-deployers-vfs-2.0.0.Beta10.jar" sourcepath="M2_REPO/org/jboss/microcontainer/jboss-deployers-vfs/2.0.0.Beta10/jboss-deployers-vfs-2.0.0.Beta10-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/deployers/jboss-deployers-vfs-spi/2.0.0.Beta14/jboss-deployers-vfs-spi-2.0.0.Beta14.jar" sourcepath="M2_REPO/org/jboss/deployers/jboss-deployers-vfs-spi/2.0.0.Beta14/jboss-deployers-vfs-spi-2.0.0.Beta14-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/microcontainer/jboss-deployers-vfs-spi/2.0.0.Beta10/jboss-deployers-vfs-spi-2.0.0.Beta10.jar" sourcepath="M2_REPO/org/jboss/microcontainer/jboss-deployers-vfs-spi/2.0.0.Beta10/jboss-deployers-vfs-spi-2.0.0.Beta10-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/javaee/jboss-ejb-api/3.0.0.CR1/jboss-ejb-api-3.0.0.CR1.jar" sourcepath="M2_REPO/org/jboss/javaee/jboss-ejb-api/3.0.0.CR1/jboss-ejb-api-3.0.0.CR1-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/ejb3/jboss-ejb3-async/0.1.0/jboss-ejb3-async-0.1.0.jar" sourcepath="M2_REPO/org/jboss/ejb3/jboss-ejb3-async/0.1.0/jboss-ejb3-async-0.1.0-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/ejb3/jboss-ejb3-cache/0.13.0/jboss-ejb3-cache-0.13.0.jar" sourcepath="M2_REPO/org/jboss/ejb3/jboss-ejb3-cache/0.13.0/jboss-ejb3-cache-0.13.0-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/ejb3/jboss-ejb3-common/0.1.0-SNAPSHOT/jboss-ejb3-common-0.1.0-SNAPSHOT.jar" sourcepath="M2_REPO/org/jboss/ejb3/jboss-ejb3-common/0.1.0-SNAPSHOT/jboss-ejb3-common-0.1.0-SNAPSHOT-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/ejb3/jboss-ejb3-ext-api/0.4/jboss-ejb3-ext-api-0.4.jar" sourcepath="M2_REPO/org/jboss/ejb3/jboss-ejb3-ext-api/0.4/jboss-ejb3-ext-api-0.4-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/ejb3/jboss-ejb3-ext-api-impl/0.4/jboss-ejb3-ext-api-impl-0.4.jar" sourcepath="M2_REPO/org/jboss/ejb3/jboss-ejb3-ext-api-impl/0.4/jboss-ejb3-ext-api-impl-0.4-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/ejb3/jboss-ejb3-interceptors/0.13.0/jboss-ejb3-interceptors-0.13.0.jar" sourcepath="M2_REPO/org/jboss/ejb3/jboss-ejb3-interceptors/0.13.0/jboss-ejb3-interceptors-0.13.0-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/ejb3/jboss-ejb3-metadata/0.12.1/jboss-ejb3-metadata-0.12.1.jar" sourcepath="M2_REPO/org/jboss/ejb3/jboss-ejb3-metadata/0.12.1/jboss-ejb3-metadata-0.12.1-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/ejb3/jboss-ejb3-security/0.13.0/jboss-ejb3-security-0.13.0.jar" sourcepath="M2_REPO/org/jboss/ejb3/jboss-ejb3-security/0.13.0/jboss-ejb3-security-0.13.0-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/ejb3/jboss-ejb3-transactions/0.13.0/jboss-ejb3-transactions-0.13.0.jar" sourcepath="M2_REPO/org/jboss/ejb3/jboss-ejb3-transactions/0.13.0/jboss-ejb3-transactions-0.13.0-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/embedded/jboss-embedded/beta3/jboss-embedded-beta3.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/cluster/jboss-ha-client/1.1.0.Beta1/jboss-ha-client-1.1.0.Beta1.jar" sourcepath="M2_REPO/org/jboss/cluster/jboss-ha-client/1.1.0.Beta1/jboss-ha-client-1.1.0.Beta1-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/cluster/jboss-ha-server-api/1.1.0.Beta1/jboss-ha-server-api-1.1.0.Beta1.jar" sourcepath="M2_REPO/org/jboss/cluster/jboss-ha-server-api/1.1.0.Beta1/jboss-ha-server-api-1.1.0.Beta1-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/javaee/jboss-jacc-api/1.1.0.CR1/jboss-jacc-api-1.1.0.CR1.jar" sourcepath="M2_REPO/org/jboss/javaee/jboss-jacc-api/1.1.0.CR1/jboss-jacc-api-1.1.0.CR1-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/javaee/jboss-jaspi-api/1.0.0.CR1/jboss-jaspi-api-1.0.0.CR1.jar" sourcepath="M2_REPO/org/jboss/javaee/jboss-jaspi-api/1.0.0.CR1/jboss-jaspi-api-1.0.0.CR1-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/javaee/jboss-javaee/5.0.0.Beta3/jboss-javaee-5.0.0.Beta3.jar" sourcepath="M2_REPO/org/jboss/javaee/jboss-javaee/5.0.0.Beta3/jboss-javaee-5.0.0.Beta3-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/jboss/jbossws/jboss-jaxrpc/1.0.4.GA/jboss-jaxrpc-1.0.4.GA.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/jboss-jaxws/2.0.1.GA/jboss-jaxws-2.0.1.GA.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/javaee/jboss-jca-api/1.5.0.CR1/jboss-jca-api-1.5.0.CR1.jar" sourcepath="M2_REPO/org/jboss/javaee/jboss-jca-api/1.5.0.CR1/jboss-jca-api-1.5.0.CR1-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/javaee/jboss-jms-api/1.1.0.CR1/jboss-jms-api-1.1.0.CR1.jar" sourcepath="M2_REPO/org/jboss/javaee/jboss-jms-api/1.1.0.CR1/jboss-jms-api-1.1.0.CR1-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/microcontainer/jboss-kernel/2.0.0.Beta14/jboss-kernel-2.0.0.Beta14.jar" sourcepath="M2_REPO/org/jboss/microcontainer/jboss-kernel/2.0.0.Beta14/jboss-kernel-2.0.0.Beta14-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/jboss/jboss-logging-log4j/2.0.2.GA/jboss-logging-log4j-2.0.2.GA.jar" sourcepath="M2_REPO/jboss/jboss-logging-log4j/2.0.2.GA/jboss-logging-log4j-2.0.2.GA-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/logging/jboss-logging-log4j/2.0.5.GA/jboss-logging-log4j-2.0.5.GA.jar" sourcepath="M2_REPO/org/jboss/logging/jboss-logging-log4j/2.0.5.GA/jboss-logging-log4j-2.0.5.GA-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/jboss/jboss-logging-spi/2.0.2.GA/jboss-logging-spi-2.0.2.GA.jar" sourcepath="M2_REPO/jboss/jboss-logging-spi/2.0.2.GA/jboss-logging-spi-2.0.2.GA-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/logging/jboss-logging-spi/2.0.5.GA/jboss-logging-spi-2.0.5.GA.jar" sourcepath="M2_REPO/org/jboss/logging/jboss-logging-spi/2.0.5.GA/jboss-logging-spi-2.0.5.GA-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/man/jboss-managed/2.0.0.Beta12/jboss-managed-2.0.0.Beta12.jar" sourcepath="M2_REPO/org/jboss/man/jboss-managed/2.0.0.Beta12/jboss-managed-2.0.0.Beta12-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/microcontainer/jboss-managed/2.0.0.Beta10/jboss-managed-2.0.0.Beta10.jar" sourcepath="M2_REPO/org/jboss/microcontainer/jboss-managed/2.0.0.Beta10/jboss-managed-2.0.0.Beta10-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/jboss-mdr/2.0.0.Beta15/jboss-mdr-2.0.0.Beta15.jar" sourcepath="M2_REPO/org/jboss/jboss-mdr/2.0.0.Beta15/jboss-mdr-2.0.0.Beta15-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/jboss-metadata/1.0.0.Beta6/jboss-metadata-1.0.0.Beta6.jar" sourcepath="M2_REPO/org/jboss/jboss-metadata/1.0.0.Beta6/jboss-metadata-1.0.0.Beta6-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/metadata/jboss-metadata/1.0.0.Beta15/jboss-metadata-1.0.0.Beta15.jar" sourcepath="M2_REPO/org/jboss/metadata/jboss-metadata/1.0.0.Beta15/jboss-metadata-1.0.0.Beta15-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/man/jboss-metatype/2.0.0.Beta12/jboss-metatype-2.0.0.Beta12.jar" sourcepath="M2_REPO/org/jboss/man/jboss-metatype/2.0.0.Beta12/jboss-metatype-2.0.0.Beta12-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/microcontainer/jboss-metatype/2.0.0.Beta10/jboss-metatype-2.0.0.Beta10.jar" sourcepath="M2_REPO/org/jboss/microcontainer/jboss-metatype/2.0.0.Beta10/jboss-metatype-2.0.0.Beta10-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/javaee/jboss-persistence-api/3.0.0.CR1/jboss-persistence-api-3.0.0.CR1.jar" sourcepath="M2_REPO/org/jboss/javaee/jboss-persistence-api/3.0.0.CR1/jboss-persistence-api-3.0.0.CR1-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/jboss/profiler/jvmti/jboss-profiler-jvmti/1.0.0.CR5/jboss-profiler-jvmti-1.0.0.CR5.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/jboss-reflect/2.0.0.Beta12/jboss-reflect-2.0.0.Beta12.jar" sourcepath="M2_REPO/org/jboss/jboss-reflect/2.0.0.Beta12/jboss-reflect-2.0.0.Beta12-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/jboss/jboss-remoting/2.2.1.GA/jboss-remoting-2.2.1.GA.jar"/>
+ <classpathentry kind="var" path="M2_REPO/jboss/remoting/jboss-remoting/2.4.0.CR1/jboss-remoting-2.4.0.CR1.jar" sourcepath="M2_REPO/jboss/remoting/jboss-remoting/2.4.0.CR1/jboss-remoting-2.4.0.CR1-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/aspects/jboss-remoting-aspects/1.0.0.Beta1/jboss-remoting-aspects-1.0.0.Beta1.jar" sourcepath="M2_REPO/org/jboss/aspects/jboss-remoting-aspects/1.0.0.Beta1/jboss-remoting-aspects-1.0.0.Beta1-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/jboss/jbossws/jboss-saaj/1.0.4.GA/jboss-saaj-1.0.4.GA.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/aspects/jboss-security-aspects/1.0.0.Beta1/jboss-security-aspects-1.0.0.Beta1.jar" sourcepath="M2_REPO/org/jboss/aspects/jboss-security-aspects/1.0.0.Beta1/jboss-security-aspects-1.0.0.Beta1-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/security/jboss-security-spi/2.0.2.Beta6/jboss-security-spi-2.0.2.Beta6.jar" sourcepath="M2_REPO/org/jboss/security/jboss-security-spi/2.0.2.Beta6/jboss-security-spi-2.0.2.Beta6-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/security/jboss-security-spi-bare/2.0.2.Beta4/jboss-security-spi-bare-2.0.2.Beta4.jar" sourcepath="M2_REPO/org/jboss/security/jboss-security-spi-bare/2.0.2.Beta4/jboss-security-spi-bare-2.0.2.Beta4-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/jboss/jboss-serialization/1.0.3.GA/jboss-serialization-1.0.3.GA.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/jbossas/jboss-server-manager/0.1.0.GA/jboss-server-manager-0.1.0.GA.jar" sourcepath="M2_REPO/org/jboss/jbossas/jboss-server-manager/0.1.0.GA/jboss-server-manager-0.1.0.GA-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/javaee/jboss-servlet-api/2.5.0.CR1/jboss-servlet-api-2.5.0.CR1.jar" sourcepath="M2_REPO/org/jboss/javaee/jboss-servlet-api/2.5.0.CR1/jboss-servlet-api-2.5.0.CR1-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/jboss/jboss-test/1.0.3.GA/jboss-test-1.0.3.GA.jar" sourcepath="M2_REPO/jboss/jboss-test/1.0.3.GA/jboss-test-1.0.3.GA-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/jboss-test/1.0.4.GA/jboss-test-1.0.4.GA.jar" sourcepath="M2_REPO/org/jboss/jboss-test/1.0.4.GA/jboss-test-1.0.4.GA-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/test/jboss-test/1.1.0.GA/jboss-test-1.1.0.GA.jar" sourcepath="M2_REPO/org/jboss/test/jboss-test/1.1.0.GA/jboss-test-1.1.0.GA-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/javaee/jboss-transaction-api/1.0.1.20070913080910/jboss-transaction-api-1.0.1.20070913080910.jar" sourcepath="M2_REPO/org/jboss/javaee/jboss-transaction-api/1.0.1.20070913080910/jboss-transaction-api-1.0.1.20070913080910-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/aspects/jboss-transaction-aspects/1.0.0.Beta1/jboss-transaction-aspects-1.0.0.Beta1.jar" sourcepath="M2_REPO/org/jboss/aspects/jboss-transaction-aspects/1.0.0.Beta1/jboss-transaction-aspects-1.0.0.Beta1-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/jboss-transaction-spi/5.0.0.Beta4/jboss-transaction-spi-5.0.0.Beta4.jar" sourcepath="M2_REPO/org/jboss/jboss-transaction-spi/5.0.0.Beta4/jboss-transaction-spi-5.0.0.Beta4-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/jboss-vfs/2.0.0.Beta11/jboss-vfs-2.0.0.Beta11.jar" sourcepath="M2_REPO/org/jboss/jboss-vfs/2.0.0.Beta11/jboss-vfs-2.0.0.Beta11-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/cache/jbosscache-core/2.1.1.GA/jbosscache-core-2.1.1.GA.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/security/jbosssx/2.0.2.Beta6/jbosssx-2.0.2.Beta6.jar" sourcepath="M2_REPO/org/jboss/security/jbosssx/2.0.2.Beta6/jbosssx-2.0.2.Beta6-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/security/jbosssx-client/2.0.2.Beta4/jbosssx-client-2.0.2.Beta4.jar" sourcepath="M2_REPO/org/jboss/security/jbosssx-client/2.0.2.Beta4/jbosssx-client-2.0.2.Beta4-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/jbossws-spi/1.0.0.GA/jbossws-spi-1.0.0.GA.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/ws/jbossws-spi/1.0.3.GA/jbossws-spi-1.0.3.GA.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/jbossxb/2.0.0.CR5/jbossxb-2.0.0.CR5.jar" sourcepath="M2_REPO/org/jboss/jbossxb/2.0.0.CR5/jbossxb-2.0.0.CR5-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/jgroups/jgroups/2.6.2/jgroups-2.6.2.jar"/>
+ <classpathentry kind="var" path="M2_REPO/org/jboss/naming/jnpserver/5.0.0.CR1/jnpserver-5.0.0.CR1.jar" sourcepath="M2_REPO/org/jboss/naming/jnpserver/5.0.0.CR1/jnpserver-5.0.0.CR1-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/jpl-pattern/jpl-pattern/1.0/jpl-pattern-1.0.jar"/>
+ <classpathentry kind="var" path="M2_REPO/jpl-util/jpl-util/1.0/jpl-util-1.0.jar"/>
+ <classpathentry kind="var" path="M2_REPO/javax/xml/bind/jsr173_api/1.0/jsr173_api-1.0.jar"/>
+ <classpathentry kind="var" path="M2_REPO/javax/transaction/jta/1.0.1B/jta-1.0.1B.jar"/>
+ <classpathentry kind="var" path="M2_REPO/junit/junit/4.4/junit-4.4.jar" sourcepath="M2_REPO/junit/junit/4.4/junit-4.4-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/apache-log4j/log4j/1.2.14/log4j-1.2.14.jar" sourcepath="M2_REPO/apache-log4j/log4j/1.2.14/log4j-1.2.14-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/log4j/log4j/1.2.14/log4j-1.2.14.jar" sourcepath="M2_REPO/log4j/log4j/1.2.14/log4j-1.2.14-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/javax/mail/mail/1.4/mail-1.4.jar" sourcepath="M2_REPO/javax/mail/mail/1.4/mail-1.4-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/qdox/qdox/1.6/qdox-1.6.jar" sourcepath="M2_REPO/qdox/qdox/1.6/qdox-1.6-sources.jar"/>
+ <classpathentry kind="var" path="M2_REPO/quartz/quartz/1.6.0/quartz-1.6.0.jar"/>
+ <classpathentry kind="var" path="M2_REPO/javax/xml/soap/saaj-api/1.3/saaj-api-1.3.jar"/>
+ <classpathentry kind="var" path="M2_REPO/trove/trove/1.0.2/trove-1.0.2.jar"/>
+ <classpathentry kind="var" path="M2_REPO/apache-slide/webdavlib/2.0/webdavlib-2.0.jar"/>
+ <classpathentry kind="var" path="M2_REPO/apache-xerces/xercesImpl/2.7.1/xercesImpl-2.7.1.jar"/>
+ <classpathentry kind="var" path="M2_REPO/apache-xerces/xml-apis/2.7.1/xml-apis-2.7.1.jar"/>
+</classpath>
\ No newline at end of file
Modified: projects/ejb3/trunk/core/.project
===================================================================
--- projects/ejb3/trunk/core/.project 2008-05-14 22:32:05 UTC (rev 73398)
+++ projects/ejb3/trunk/core/.project 2008-05-14 22:47:19 UTC (rev 73399)
@@ -1,22 +1,13 @@
<projectDescription>
- <name>jboss-ejb3-core</name>
- <comment>JBoss EJB 3.0 Core</comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.maven.ide.eclipse.maven2Builder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>org.maven.ide.eclipse.maven2Nature</nature>
- </natures>
-</projectDescription>
+ <name>jboss-ejb3-core</name>
+ <comment>JBoss EJB 3.0 Core</comment>
+ <projects/>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
\ No newline at end of file
Modified: projects/ejb3/trunk/core/.settings/org.eclipse.jdt.core.prefs
===================================================================
--- projects/ejb3/trunk/core/.settings/org.eclipse.jdt.core.prefs 2008-05-14 22:32:05 UTC (rev 73398)
+++ projects/ejb3/trunk/core/.settings/org.eclipse.jdt.core.prefs 2008-05-14 22:47:19 UTC (rev 73399)
@@ -1,4 +1,4 @@
-#Wed Apr 23 16:07:04 GMT-05:00 2008
+#Wed May 14 18:44:22 EDT 2008
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.source=1.5
Modified: projects/ejb3/trunk/core/pom.xml
===================================================================
--- projects/ejb3/trunk/core/pom.xml 2008-05-14 22:32:05 UTC (rev 73398)
+++ projects/ejb3/trunk/core/pom.xml 2008-05-14 22:47:19 UTC (rev 73399)
@@ -440,6 +440,12 @@
<artifactId>jboss-ejb3-cache</artifactId>
<version>0.13.0</version>
</dependency>
+
+ <dependency>
+ <groupId>org.jboss.ejb3</groupId>
+ <artifactId>jboss-ejb3-common</artifactId>
+ <version>0.1.0-SNAPSHOT</version>
+ </dependency>
<dependency>
<groupId>org.jboss.ejb3</groupId>
Modified: projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/Ejb3Deployment.java
===================================================================
--- projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/Ejb3Deployment.java 2008-05-14 22:32:05 UTC (rev 73398)
+++ projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/Ejb3Deployment.java 2008-05-14 22:47:19 UTC (rev 73399)
@@ -21,11 +21,31 @@
*/
package org.jboss.ejb3;
+import java.io.BufferedInputStream;
+import java.io.DataInputStream;
+import java.io.InputStream;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+
import javassist.bytecode.ClassFile;
+
+import javax.management.MBeanServer;
+import javax.management.ObjectName;
+import javax.naming.InitialContext;
+import javax.naming.NameNotFoundException;
+import javax.naming.NamingException;
+import javax.persistence.Entity;
+import javax.security.jacc.PolicyConfiguration;
+
import org.hibernate.ejb.packaging.PersistenceMetadata;
import org.jboss.deployers.spi.DeploymentException;
import org.jboss.ejb3.cache.CacheFactoryRegistry;
import org.jboss.ejb3.cache.persistence.PersistenceManagerFactoryRegistry;
+import org.jboss.ejb3.common.lang.ClassHelper;
import org.jboss.ejb3.enc.EjbModulePersistenceUnitResolver;
import org.jboss.ejb3.enc.MessageDestinationResolver;
import org.jboss.ejb3.entity.PersistenceUnitDeployment;
@@ -34,7 +54,6 @@
import org.jboss.ejb3.javaee.JavaEEComponent;
import org.jboss.ejb3.javaee.JavaEEComponentHelper;
import org.jboss.ejb3.javaee.JavaEEModule;
-import org.jboss.ejb3.lang.ClassHelper;
import org.jboss.ejb3.metadata.JBossSessionGenericWrapper;
import org.jboss.ejb3.metadata.jpa.spec.PersistenceUnitMetaData;
import org.jboss.ejb3.metadata.jpa.spec.PersistenceUnitsMetaData;
@@ -42,23 +61,16 @@
import org.jboss.ejb3.proxy.factory.ProxyFactoryHelper;
import org.jboss.ejb3.proxy.factory.RemoteProxyFactoryRegistry;
import org.jboss.logging.Logger;
-import org.jboss.metadata.ejb.jboss.*;
+import org.jboss.metadata.ejb.jboss.JBossEnterpriseBeanMetaData;
+import org.jboss.metadata.ejb.jboss.JBossGenericBeanMetaData;
+import org.jboss.metadata.ejb.jboss.JBossMessageDrivenBeanGenericWrapper;
+import org.jboss.metadata.ejb.jboss.JBossMessageDrivenBeanMetaData;
+import org.jboss.metadata.ejb.jboss.JBossMetaData;
+import org.jboss.metadata.ejb.jboss.JBossSessionBeanMetaData;
import org.jboss.metadata.javaee.spec.MessageDestinationsMetaData;
import org.jboss.system.ServiceMBeanSupport;
import org.jboss.virtual.VirtualFile;
-import javax.management.MBeanServer;
-import javax.management.ObjectName;
-import javax.naming.InitialContext;
-import javax.naming.NameNotFoundException;
-import javax.naming.NamingException;
-import javax.persistence.Entity;
-import javax.security.jacc.PolicyConfiguration;
-import java.io.BufferedInputStream;
-import java.io.DataInputStream;
-import java.io.InputStream;
-import java.util.*;
-
/**
* An EjbModule represents a collection of beans that are deployed as a unit.
*
Modified: projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/Ejb3DescriptorHandler.java
===================================================================
--- projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/Ejb3DescriptorHandler.java 2008-05-14 22:32:05 UTC (rev 73398)
+++ projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/Ejb3DescriptorHandler.java 2008-05-14 22:47:19 UTC (rev 73399)
@@ -131,8 +131,8 @@
import org.jboss.ejb3.annotation.impl.TransactionAttributeImpl;
import org.jboss.ejb3.annotation.impl.TransactionManagementImpl;
import org.jboss.ejb3.annotation.impl.TransactionTimeoutImpl;
+import org.jboss.ejb3.common.lang.ClassHelper;
import org.jboss.ejb3.interceptor.InterceptorInfoRepository;
-import org.jboss.ejb3.lang.ClassHelper;
import org.jboss.ejb3.mdb.ConsumerContainer;
import org.jboss.ejb3.mdb.MDB;
import org.jboss.ejb3.proxy.factory.ProxyFactoryHelper;
Deleted: projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/lang/ClassHelper.java
===================================================================
--- projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/lang/ClassHelper.java 2008-05-14 22:32:05 UTC (rev 73398)
+++ projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/lang/ClassHelper.java 2008-05-14 22:47:19 UTC (rev 73399)
@@ -1,194 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2007, Red Hat Middleware LLC, and individual contributors as indicated
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.ejb3.lang;
-
-import java.lang.reflect.Method;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-
-/**
- * Usefull methods for classes.
- *
- * @author <a href="mailto:carlo.dewolf at jboss.com">Carlo de Wolf</a>
- * @version $Revision$
- */
-public class ClassHelper
-{
- /**
- * Casts an object to the class or interface represented
- * by the targetClass <tt>Class</tt> object.
- * The ClassCastException thrown is more descriptive than
- * the original.
- *
- * @param obj the object to be cast
- * @return the object after casting, or null if obj is null
- *
- * @throws ClassCastException if the object is not
- * null and is not assignable to the type T.
- */
- public static <T> T cast(Class<T> targetClass, Object obj)
- {
- try
- {
- return targetClass.cast(obj);
- }
- catch(ClassCastException e)
- {
- assert obj != null : "a null can always be cast, it should never throw a ClassCastException";
- throw new ClassCastException("Unable to cast " + obj.getClass() + " to " + targetClass);
- }
- }
-
- /**
- * @see Class#argumentTypesToString
- */
- private static String argumentTypesToString(Class<?>[] argTypes)
- {
- StringBuilder buf = new StringBuilder();
- buf.append("(");
- if (argTypes != null)
- {
- for (int i = 0; i < argTypes.length; i++)
- {
- if (i > 0)
- {
- buf.append(", ");
- }
- Class<?> c = argTypes[i];
- buf.append((c == null) ? "null" : c.getName());
- }
- }
- buf.append(")");
- return buf.toString();
- }
-
- private static Method findPrivateMethod(Class<?> target, String methodName, Class<?>... paramTypes)
- {
- // Top of the world
- if(target == null)
- return null;
-
- // TODO: what is faster? scan or catch exception?
- for(Method method : target.getDeclaredMethods())
- {
- if(method.getName().equals(methodName))
- {
- if(paramTypes == null)
- return method;
-
- if(Arrays.equals(method.getParameterTypes(), paramTypes))
- return method;
- }
- }
-
- return findPrivateMethod(target.getSuperclass(), methodName, paramTypes);
- }
-
- /**
- * Find all methods with a specific name on a class and it's super classes
- * regardless of parameter signature.
- *
- * @param cls the class to scan
- * @param methodName the name of the methods to find
- * @return a list of methods found, or empty
- */
- public static List<Method> getAllMethodsByName(Class<?> cls, String methodName)
- {
- List<Method> methods = new ArrayList<Method>();
- populateWithMethodsByName(methods, cls, methodName);
- return methods;
- }
-
- /**
- * Find all methods starting with the specified prefix on the specified
- * class
- *
- * @param clazz
- * @param methodNamePrefix
- * @return
- */
- public static List<Method> getAllMethodsByPrefix(Class<?> clazz, String methodNamePrefix)
- {
- List<Method> methods = new ArrayList<Method>();
- ClassHelper.populateWithMethodsByPrefix(methods, clazz, methodNamePrefix);
- return methods;
- }
-
- /**
- * Returns the <code>Method</code> with the given attributes of either this class
- * or one of it's super classes.
- *
- * TODO: return type specifics are not considered
- * FIXME: rename method (it must return all modifiers)
- *
- * @param cls class to scan
- * @param methodName the name of the method
- * @param paramTypes the parameter types
- * @return the <code>Method</code> matching the method name and parameters
- * @throws NoSuchMethodException if no method can be found
- */
- public static Method getPrivateMethod(Class<?> cls, String methodName, Class<?>... paramTypes) throws NoSuchMethodException
- {
- assert cls != null : "cls is null";
- assert methodName != null : "methodName is null";
-
- Method result = findPrivateMethod(cls, methodName, paramTypes);
- if(result == null)
- throw new NoSuchMethodException(cls.getName() + "." + methodName + argumentTypesToString(paramTypes));
-
- return result;
- }
-
- private static void populateWithMethodsByName(List<Method> methods, Class<?> cls, String methodName)
- {
- // Top of the world
- if(cls == null)
- return;
-
- for(Method method : cls.getDeclaredMethods())
- {
- if(method.getName().equals(methodName))
- methods.add(method);
- }
-
- populateWithMethodsByName(methods, cls.getSuperclass(), methodName);
- }
-
- private static void populateWithMethodsByPrefix(List<Method> methods, Class<?> clazz, String methodNamePrefix)
- {
- // Exit Condition
- if (clazz == null)
- {
- return;
- }
-
- // For all declared methods
- for (Method method : clazz.getDeclaredMethods())
- {
- if (method.getName().startsWith(methodNamePrefix))
- methods.add(method);
- }
-
- populateWithMethodsByPrefix(methods, clazz.getSuperclass(), methodNamePrefix);
- }
-}
Modified: projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/proxy/factory/ProxyFactoryHelper.java
===================================================================
--- projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/proxy/factory/ProxyFactoryHelper.java 2008-05-14 22:32:05 UTC (rev 73398)
+++ projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/proxy/factory/ProxyFactoryHelper.java 2008-05-14 22:47:19 UTC (rev 73399)
@@ -56,8 +56,8 @@
import org.jboss.ejb3.annotation.RemoteHomeBinding;
import org.jboss.ejb3.annotation.impl.LocalImpl;
import org.jboss.ejb3.annotation.impl.RemoteImpl;
+import org.jboss.ejb3.common.lang.ClassHelper;
import org.jboss.ejb3.jndipolicy.impl.PackagingBasedJndiBindingPolicy;
-import org.jboss.ejb3.lang.ClassHelper;
import org.jboss.ejb3.service.ServiceContainer;
import org.jboss.ejb3.session.SessionContainer;
import org.jboss.ejb3.stateful.StatefulContainer;
More information about the jboss-cvs-commits
mailing list