You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by sc...@apache.org on 2016/09/01 17:50:42 UTC

svn commit: r1758821 - in /uima/uimaj/branches/experiment-v3-jcas/uimaj-core: ./ src/main/java/ src/main/java/org/apache/uima/cas/ src/main/java/org/apache/uima/cas/impl/ src/main/resources/org/apache/uima/

Author: schor
Date: Thu Sep  1 17:50:42 2016
New Revision: 1758821

URL: http://svn.apache.org/viewvc?rev=1758821&view=rev
Log:
[UIMA-5056] merge catchup throw exception if multiply nested class loader switches - not supported.

Modified:
    uima/uimaj/branches/experiment-v3-jcas/uimaj-core/   (props changed)
    uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/   (props changed)
    uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/cas/CASRuntimeException.java
    uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/cas/impl/CASImpl.java   (contents, props changed)
    uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/resources/org/apache/uima/UIMAException_Messages.properties

Propchange: uima/uimaj/branches/experiment-v3-jcas/uimaj-core/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Sep  1 17:50:42 2016
@@ -4,4 +4,4 @@
 /uima/uimaj/branches/depend-on-parent-pom-4/uimaj-core:961329-961745
 /uima/uimaj/branches/filteredCompress-uima-2498/uimaj-core:1436573-1462257
 /uima/uimaj/branches/mavenAlign/uimaj-core:933273-944396
-/uima/uimaj/trunk/uimaj-core:1690273-1693269,1756914,1757094,1757287-1757385,1757523
+/uima/uimaj/trunk/uimaj-core:1690273-1693269,1756659,1756914,1757094,1757287-1757385,1757523

Propchange: uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Sep  1 17:50:42 2016
@@ -5,4 +5,4 @@
 /uima/uimaj/branches/filteredCompress-uima-2498/uimaj-core/src/main/java:1436573-1462257
 /uima/uimaj/branches/mavenAlign/uimaj-core/src/main/java:933273-944396
 /uima/uimaj/branches/test-parent-pom-6/uimaj-core/src/main/java:1024030
-/uima/uimaj/trunk/uimaj-core/src/main/java:1690273-1693269,1756914,1757094,1757287-1757385,1757523
+/uima/uimaj/trunk/uimaj-core/src/main/java:1690273-1693269,1756659,1756914,1757094,1757287-1757385,1757523

Modified: uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/cas/CASRuntimeException.java
URL: http://svn.apache.org/viewvc/uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/cas/CASRuntimeException.java?rev=1758821&r1=1758820&r2=1758821&view=diff
==============================================================================
--- uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/cas/CASRuntimeException.java (original)
+++ uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/cas/CASRuntimeException.java Thu Sep  1 17:50:42 2016
@@ -290,6 +290,9 @@ public class CASRuntimeException extends
   /** Illegal operation - cannot add Feature Structure {0} to base Cas {1}.*/
   public static final String ILLEGAL_ADD_TO_INDEX_IN_BASE_CAS = "ILLEGAL_ADD_TO_INDEX_IN_BASE_CAS";
   
+  /** Multiply nested classloaders not supported.  Original base loader: {0}, current nested loader: {1}, trying to switch to loader: {2}.*/
+  public static final String SWITCH_CLASS_LOADER_NESTED = "SWITCH_CLASS_LOADER_NESTED";
+    
   /**
    * The constructors are organized
    * 

Modified: uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/cas/impl/CASImpl.java
URL: http://svn.apache.org/viewvc/uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/cas/impl/CASImpl.java?rev=1758821&r1=1758820&r2=1758821&view=diff
==============================================================================
--- uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/cas/impl/CASImpl.java (original)
+++ uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/cas/impl/CASImpl.java Thu Sep  1 17:50:42 2016
@@ -610,6 +610,11 @@ public class CASImpl extends AbstractCas
         return;
       }
       if (newClassLoader != jcasClassLoader) {
+        if (jcasClassLoader != previousJCasClassLoader) {
+          /** Multiply nested classloaders not supported.  Original base loader: {0}, current nested loader: {1}, trying to switch to loader: {2}.*/
+          throw new CASRuntimeException(CASRuntimeException.SWITCH_CLASS_LOADER_NESTED, 
+                                        previousJCasClassLoader, jcasClassLoader, newClassLoader);
+        }
         // System.out.println("Switching to new class loader");
         previousJCasClassLoader = jcasClassLoader;
         jcasClassLoader = newClassLoader;

Propchange: uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/java/org/apache/uima/cas/impl/CASImpl.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Sep  1 17:50:42 2016
@@ -5,4 +5,4 @@
 /uima/uimaj/branches/filteredCompress-uima-2498/uimaj-core/src/main/java/org/apache/uima/cas/impl/CASImpl.java:1436573-1462257
 /uima/uimaj/branches/mavenAlign/uimaj-core/src/main/java/org/apache/uima/cas/impl/CASImpl.java:933273-944396
 /uima/uimaj/branches/test-parent-pom-6/uimaj-core/src/main/java/org/apache/uima/cas/impl/CASImpl.java:1024030
-/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/cas/impl/CASImpl.java:1690273-1694331
+/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/cas/impl/CASImpl.java:1690273-1694331,1756659

Modified: uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/resources/org/apache/uima/UIMAException_Messages.properties
URL: http://svn.apache.org/viewvc/uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/resources/org/apache/uima/UIMAException_Messages.properties?rev=1758821&r1=1758820&r2=1758821&view=diff
==============================================================================
--- uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/resources/org/apache/uima/UIMAException_Messages.properties (original)
+++ uima/uimaj/branches/experiment-v3-jcas/uimaj-core/src/main/resources/org/apache/uima/UIMAException_Messages.properties Thu Sep  1 17:50:42 2016
@@ -592,6 +592,7 @@ ILLEGAL_TYPE_CHANGE = ll_setIntValue cal
 ILLEGAL_TYPE_CHANGE_IN_INDEX = ll_setIntValue call to change the type, but the Feature Structure is in an index. New type: "{0}", existing type "{1}".
 ILLEGAL_SOFAREF_MODIFICATION = Sofa reference in AnnotationBase may not be modified.
 LENIENT_NOT_SUPPORTED = Lenient deserialization not support for input of type {0}.
+SWITCH_CLASS_LOADER_NESTED = Multiply nested classloaders not supported.  Original base loader: {0}, current nested loader: {1}, trying to switch to loader: {2}.
 NOT_SUPPORTED_NO_HEAP_IN_UIMA_V3 = This method depends on having a CAS Heap design, and is not support in UIMA Version 3 and later.
 CREATE_FS_BEFORE_TS_COMMITTED = Cannot create FS of type "{0}" until the type system has been committed.
 GET_CLASS_FOR_TYPE_BEFORE_TS_COMMIT = Cannot request the Java Class for a UIMA type before type system commit.