You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by lr...@apache.org on 2010/08/29 10:53:26 UTC

svn commit: r990511 - /tuscany/sca-java-2.x/trunk/modules/extensibility/src/main/java/org/apache/tuscany/sca/extensibility/ClassLoaderContext.java

Author: lresende
Date: Sun Aug 29 08:53:26 2010
New Revision: 990511

URL: http://svn.apache.org/viewvc?rev=990511&view=rev
Log:
TUSCANY-3595 - Only add classloader if not already added previously

Modified:
    tuscany/sca-java-2.x/trunk/modules/extensibility/src/main/java/org/apache/tuscany/sca/extensibility/ClassLoaderContext.java

Modified: tuscany/sca-java-2.x/trunk/modules/extensibility/src/main/java/org/apache/tuscany/sca/extensibility/ClassLoaderContext.java
URL: http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/extensibility/src/main/java/org/apache/tuscany/sca/extensibility/ClassLoaderContext.java?rev=990511&r1=990510&r2=990511&view=diff
==============================================================================
--- tuscany/sca-java-2.x/trunk/modules/extensibility/src/main/java/org/apache/tuscany/sca/extensibility/ClassLoaderContext.java (original)
+++ tuscany/sca-java-2.x/trunk/modules/extensibility/src/main/java/org/apache/tuscany/sca/extensibility/ClassLoaderContext.java Sun Aug 29 08:53:26 2010
@@ -6,15 +6,15 @@
  * to you under the Apache License, Version 2.0 (the
  * "License"); you may not use this file except in compliance
  * with the License.  You may obtain a copy of the License at
- * 
+ *
  *   http://www.apache.org/licenses/LICENSE-2.0
- * 
+ *
  * Unless required by applicable law or agreed to in writing,
  * software distributed under the License is distributed on an
  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  * KIND, either express or implied.  See the License for the
  * specific language governing permissions and limitations
- * under the License.    
+ * under the License.
  */
 
 package org.apache.tuscany.sca.extensibility;
@@ -108,10 +108,10 @@ public class ClassLoaderContext {
 
     /**
      * Set the thread context classloader (TCCL) to a classloader that delegates to a collection
-     * of classloaders 
+     * of classloaders
      * @param parent The parent classloader
      * @param delegates A list of classloaders to try
-     * @return The existing TCCL 
+     * @return The existing TCCL
      */
     public static ClassLoader setContextClassLoader(ClassLoader parent, ClassLoader... delegates) {
         ClassLoaderContext context = new ClassLoaderContext(parent, delegates);
@@ -195,7 +195,7 @@ public class ClassLoaderContext {
         List<ClassLoader> loaders = new ArrayList<ClassLoader>();
         for (Class<?> serviceType : serviceTypes) {
             ClassLoader classLoader = getClassLoader(discovery, serviceType);
-            if (classLoader != null && loaders.contains(classLoader)) {
+            if (classLoader != null && !loaders.contains(classLoader)) {
                 loaders.add(classLoader);
             }
         }