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 2008/08/20 22:19:12 UTC
svn commit: r687450 - in
/incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima:
analysis_engine/impl/PearAnalysisEngineWrapper.java
resource/Resource_ImplBase.java
Author: schor
Date: Wed Aug 20 13:19:11 2008
New Revision: 687450
URL: http://svn.apache.org/viewvc?rev=687450&view=rev
Log:
[UIMA-1150] fixes for Pear Wrapper. Resource_implBase just has comment typo fixes
Modified:
incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/analysis_engine/impl/PearAnalysisEngineWrapper.java
incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/Resource_ImplBase.java
Modified: incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/analysis_engine/impl/PearAnalysisEngineWrapper.java
URL: http://svn.apache.org/viewvc/incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/analysis_engine/impl/PearAnalysisEngineWrapper.java?rev=687450&r1=687449&r2=687450&view=diff
==============================================================================
--- incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/analysis_engine/impl/PearAnalysisEngineWrapper.java (original)
+++ incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/analysis_engine/impl/PearAnalysisEngineWrapper.java Wed Aug 20 13:19:11 2008
@@ -29,17 +29,17 @@
import java.util.WeakHashMap;
import org.apache.uima.UIMAFramework;
+import org.apache.uima.UimaContextAdmin;
import org.apache.uima.analysis_engine.AnalysisEngine;
import org.apache.uima.analysis_engine.AnalysisEngineProcessException;
import org.apache.uima.analysis_engine.CasIterator;
-import org.apache.uima.analysis_engine.JCasIterator;
import org.apache.uima.analysis_engine.ResultSpecification;
import org.apache.uima.analysis_engine.metadata.AnalysisEngineMetaData;
import org.apache.uima.cas.CAS;
import org.apache.uima.cas.TypeSystem;
-import org.apache.uima.jcas.JCas;
import org.apache.uima.pear.tools.PackageBrowser;
import org.apache.uima.resource.PearSpecifier;
+import org.apache.uima.resource.Resource;
import org.apache.uima.resource.ResourceInitializationException;
import org.apache.uima.resource.ResourceManager;
import org.apache.uima.resource.ResourceProcessException;
@@ -60,7 +60,7 @@
// a hash map where the entries will be reclaimed when the keys are no longer
// referenced by anything (other than this hash map)
- // key = resourceManager instance associated with to this class
+ // key = resourceManager instance associated with this call
// value = map <String_Pair, ResourceManager>
// value = resourceManager instance created by this class
@@ -173,7 +173,19 @@
pkgBrowser.getRootDirectory().getName() });
}
- ResourceManager applicationRM = this.getResourceManager();
+
+ // Caller's Resource Manager obtained from the additional parameters
+ // Note: UimaContext can be null for a top level call to produceAnalysisEngine,
+ // where the descriptor is a Pear Resource.
+
+ ResourceManager applicationRM = (ResourceManager) aAdditionalParams.get(Resource.PARAM_RESOURCE_MANAGER);
+ if (null == applicationRM) {
+ UimaContextAdmin uimaContext = (UimaContextAdmin)aAdditionalParams.get(Resource.PARAM_UIMA_CONTEXT);
+ if (null != uimaContext) {
+ applicationRM = uimaContext.getResourceManager();
+ }
+ }
+
String classPath = pkgBrowser.buildComponentClassPath();
String dataPath = pkgBrowser.getComponentDataPath();
StringPair sp = new StringPair(classPath, dataPath);
@@ -204,14 +216,18 @@
.parseResourceSpecifier(in);
// create analysis engine
+ Map clonedAdditionalParameters = new HashMap(aAdditionalParams);
+ clonedAdditionalParameters.remove(Resource.PARAM_UIMA_CONTEXT);
+ clonedAdditionalParameters.remove(Resource.PARAM_RESOURCE_MANAGER);
this.ae = UIMAFramework
- .produceAnalysisEngine(specifier, innerRM, aAdditionalParams);
+ .produceAnalysisEngine(specifier, innerRM, clonedAdditionalParameters);
} catch (IOException ex) {
throw new ResourceInitializationException(ex);
} catch (InvalidXMLException ex) {
throw new ResourceInitializationException(ex);
}
+ // note - this call must follow the setting of this.ae to a non-null value.
super.initialize(aSpecifier, aAdditionalParams);
UIMAFramework.getLogger(this.getClass()).logrb(Level.CONFIG,
Modified: incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/Resource_ImplBase.java
URL: http://svn.apache.org/viewvc/incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/Resource_ImplBase.java?rev=687450&r1=687449&r2=687450&view=diff
==============================================================================
--- incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/Resource_ImplBase.java (original)
+++ incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/Resource_ImplBase.java Wed Aug 20 13:19:11 2008
@@ -109,7 +109,7 @@
mUimaContextAdmin.setLogger(logger);
}
- // if this is a local resource (instantaited from a ResourceCreationSpedcifier),
+ // if this is a local resource (instantaited from a ResourceCreationSpecifier),
// initialize the ResourceManager and UIMA Context.
if (aSpecifier instanceof ResourceCreationSpecifier) {
// resolve imports in the metadata
@@ -120,7 +120,7 @@
} catch (InvalidXMLException e) {
throw new ResourceInitializationException(e);
}
- // store Resoure metadata so it can be retrieved via getMetaData() method
+ // store Resource metadata so it can be retrieved via getMetaData() method
setMetaData(metadata);
// initialize configuration