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 2007/12/03 17:29:36 UTC

svn commit: r600587 - in /incubator/uima/uimaj/trunk/uimaj-core/src/main: java/org/apache/uima/impl/ java/org/apache/uima/resource/ resources/org/apache/uima/

Author: schor
Date: Mon Dec  3 08:29:35 2007
New Revision: 600587

URL: http://svn.apache.org/viewvc?rev=600587&view=rev
Log:
[UIMA-664] add 2 messages and a try / catch for CustomResourceFactory to catch Errors and Exceptions when invoking the "initialize()" method of the custom resource.  The catcher wraps the throwable into a ResourceInitializationException.

Modified:
    incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/impl/CustomResourceFactory_impl.java
    incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/ResourceInitializationException.java
    incubator/uima/uimaj/trunk/uimaj-core/src/main/resources/org/apache/uima/UIMAException_Messages.properties

Modified: incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/impl/CustomResourceFactory_impl.java
URL: http://svn.apache.org/viewvc/incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/impl/CustomResourceFactory_impl.java?rev=600587&r1=600586&r2=600587&view=diff
==============================================================================
--- incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/impl/CustomResourceFactory_impl.java (original)
+++ incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/impl/CustomResourceFactory_impl.java Mon Dec  3 08:29:35 2007
@@ -87,7 +87,21 @@
                     aSpecifier.getSourceUrlString() }, e);
       }
       // attempt to initialize it
-      if (resource.initialize(aSpecifier, aAdditionalParams)) {
+      boolean initializeOK = false;
+      try {
+        initializeOK = resource.initialize(aSpecifier, aAdditionalParams);
+      } catch (Exception e) {
+        throw new ResourceInitializationException(
+            ResourceInitializationException.EXCEPTION_WHEN_INITIALIZING_CUSTOM_RESOURCE, 
+            new Object[] { className, aSpecifier.getSourceUrlString() },
+            e);
+      } catch (Throwable e) {
+        throw new ResourceInitializationException(
+            ResourceInitializationException.THROWABLE_WHEN_INITIALIZING_CUSTOM_RESOURCE, 
+            new Object[] { className, aSpecifier.getSourceUrlString() },
+            e);
+      }
+      if (initializeOK) {
         // success!
         return resource;
       } else

Modified: incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/ResourceInitializationException.java
URL: http://svn.apache.org/viewvc/incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/ResourceInitializationException.java?rev=600587&r1=600586&r2=600587&view=diff
==============================================================================
--- incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/ResourceInitializationException.java (original)
+++ incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/ResourceInitializationException.java Mon Dec  3 08:29:35 2007
@@ -456,6 +456,18 @@
   public static final String FLOW_CONTROLLER_REQUIRES_FLOW_CONSTRAINTS = "flow_controller_requires_flow_constraints";
 
   /**
+   * Message key for a standard UIMA exception message: 
+   * Unexpected Exception thrown when initializing Custom Resource "{0}" from descriptor "{1}". 
+   */
+  public static final String EXCEPTION_WHEN_INITIALIZING_CUSTOM_RESOURCE = "exception_when_initializing_custom_resource";
+
+  /**
+   * Message key for a standard UIMA exception message: 
+   * Unexpected Throwable or Error thrown when initializing Custom Resource "{0}" from descriptor "{1}". 
+   */
+  public static final String THROWABLE_WHEN_INITIALIZING_CUSTOM_RESOURCE = "throwable_when_initializing_custom_resource";
+
+  /**
    * Creates a new exception with a null message.
    */
   public ResourceInitializationException() {

Modified: incubator/uima/uimaj/trunk/uimaj-core/src/main/resources/org/apache/uima/UIMAException_Messages.properties
URL: http://svn.apache.org/viewvc/incubator/uima/uimaj/trunk/uimaj-core/src/main/resources/org/apache/uima/UIMAException_Messages.properties?rev=600587&r1=600586&r2=600587&view=diff
==============================================================================
--- incubator/uima/uimaj/trunk/uimaj-core/src/main/resources/org/apache/uima/UIMAException_Messages.properties (original)
+++ incubator/uima/uimaj/trunk/uimaj-core/src/main/resources/org/apache/uima/UIMAException_Messages.properties Mon Dec  3 08:29:35 2007
@@ -347,6 +347,12 @@
 
 not_a_flow_controller_descriptor = An Aggregate Analysis Engine specified a Flow Controller descriptor \
 	{0} of an invalid type ({1})).  A FlowControllerDescription is required. 
+	
+exception_when_initializing_custom_resource = Unexpected Exception thrown when initializing \
+ Custom Resource "{0}" from descriptor "{1}".
+
+throwable_when_initializing_custom_resource = Unexpected Throwable or Error thrown when initializing \
+ Custom Resource "{0}" from descriptor "{1}".
 
 unsupported_framework_implementation = {0} is not a supported framework implementation (Descriptor: {1})