You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by mb...@apache.org on 2007/05/04 17:18:19 UTC
svn commit: r535288 - in /incubator/uima/uimaj/trunk/uimaj-core/src/main:
java/org/apache/uima/ java/org/apache/uima/analysis_engine/impl/
java/org/apache/uima/impl/ java/org/apache/uima/pear/tools/
java/org/apache/uima/resource/ java/org/apache/uima/r...
Author: mbaessler
Date: Fri May 4 08:18:18 2007
New Revision: 535288
URL: http://svn.apache.org/viewvc?view=rev&rev=535288
Log:
UIMA-351
add new pearSpecifier descriptor resource
create automatically a pearSpecifier when a pear file is installed
JIRA ticket https://issues.apache.org/jira/browse/UIMA-351
Added:
incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/PearSpecifier.java
incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/impl/PearSpecifier_impl.java
Modified:
incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/ResourceSpecifierFactory.java
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/impl/ResourceSpecifierFactory_impl.java
incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/pear/tools/InstallationController.java
incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/pear/tools/PackageBrowser.java
incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/util/XMLParser.java
incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/util/impl/XMLParser_impl.java
incubator/uima/uimaj/trunk/uimaj-core/src/main/resources/org/apache/uima/impl/factoryConfig.xml
incubator/uima/uimaj/trunk/uimaj-core/src/main/resources/org/apache/uima/impl/log_messages.properties
Modified: incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/ResourceSpecifierFactory.java
URL: http://svn.apache.org/viewvc/incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/ResourceSpecifierFactory.java?view=diff&rev=535288&r1=535287&r2=535288
==============================================================================
--- incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/ResourceSpecifierFactory.java (original)
+++ incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/ResourceSpecifierFactory.java Fri May 4 08:18:18 2007
@@ -56,6 +56,7 @@
import org.apache.uima.resource.MQMessagingSpecifier;
import org.apache.uima.resource.MailMessagingSpecifier;
import org.apache.uima.resource.Parameter;
+import org.apache.uima.resource.PearSpecifier;
import org.apache.uima.resource.URISpecifier;
import org.apache.uima.resource.metadata.AllowedValue;
import org.apache.uima.resource.metadata.Capability;
@@ -426,7 +427,14 @@
* @return an instance of an object implementing <code>CustomResourceSpecifier</code>.
*/
public CustomResourceSpecifier createCustomResourceSpecifier();
-
+
+ /**
+ * Creates a <code>PearSpecifier</code>.
+ *
+ * @return an instance of an object implementing <code>PearSpecifier</code>.
+ */
+ public PearSpecifier createPearSpecifier();
+
/**
* Creates a <code>FlowControllerDescription</code>
*
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?view=diff&rev=535288&r1=535287&r2=535288
==============================================================================
--- 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 Fri May 4 08:18:18 2007
@@ -18,8 +18,6 @@
*/
package org.apache.uima.analysis_engine.impl;
-import java.io.BufferedInputStream;
-import java.io.BufferedOutputStream;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.File;
@@ -34,12 +32,9 @@
import org.apache.uima.analysis_engine.CasIterator;
import org.apache.uima.analysis_engine.metadata.AnalysisEngineMetaData;
import org.apache.uima.cas.CAS;
-import org.apache.uima.cas.impl.CASImpl;
-import org.apache.uima.cas.impl.CASSerializer;
import org.apache.uima.cas.impl.Serialization;
import org.apache.uima.pear.tools.PackageBrowser;
-import org.apache.uima.resource.CustomResourceSpecifier;
-import org.apache.uima.resource.Parameter;
+import org.apache.uima.resource.PearSpecifier;
import org.apache.uima.resource.ResourceInitializationException;
import org.apache.uima.resource.ResourceManager;
import org.apache.uima.resource.ResourceSpecifier;
@@ -58,11 +53,6 @@
*/
public class PearAnalysisEngineWrapper extends AnalysisEngineImplBase {
- /**
- * installed pear root directory parameter key
- */
- public static final String INSTALLED_PEAR_ROOT_DIR_PARAMETER = "installedPearRoot";
-
private AnalysisEngine ae = null;
private CAS cas = null;
@@ -78,32 +68,17 @@
public boolean initialize(ResourceSpecifier aSpecifier, Map aAdditionalParams)
throws ResourceInitializationException {
- // aSpecifier must be a CustomResourceSpecifier
- if (!(aSpecifier instanceof CustomResourceSpecifier)) {
+ // aSpecifier must be a pearSpecifier
+ if (!(aSpecifier instanceof PearSpecifier)) {
return false;
}
- CustomResourceSpecifier customSpec = (CustomResourceSpecifier) aSpecifier;
-
- // get custom resource specifier parameters
- Parameter[] params = customSpec.getParameters();
- String pearRootDirPath = null;
- for (int i = 0; i < params.length; i++) {
- if (params[i].getName().equals(INSTALLED_PEAR_ROOT_DIR_PARAMETER)) {
- pearRootDirPath = params[i].getValue();
- }
- }
-
- // if INSTALLED_PEAR_ROOT_DIR_PARAMETER was not available, return false.
- // The Wrapper cannot start the pear file wihtout knowing the installed pear root directory.
- if (pearRootDirPath == null) {
- // log that INSTALLED_PEAR_ROOT_DIR_PARAMETER parameter is missing in the descriptor
- UIMAFramework.getLogger(this.getClass()).logrb(Level.SEVERE, this.getClass().getName(),
- "initialize", LOG_RESOURCE_BUNDLE, "UIMA_pear_runtime_param_not_available__SEVERE",
- new Object[] { INSTALLED_PEAR_ROOT_DIR_PARAMETER });
- return false;
- }
+ //cast resource specifier to a pear specifier
+ PearSpecifier pearSpec = (PearSpecifier) aSpecifier;
+ // get pear path
+ String pearRootDirPath = pearSpec.getPearPath();
+
try {
// get installed pear root directory - specified as URI of the descriptor
File pearRootDir = new File(pearRootDirPath);
Modified: incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/impl/ResourceSpecifierFactory_impl.java
URL: http://svn.apache.org/viewvc/incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/impl/ResourceSpecifierFactory_impl.java?view=diff&rev=535288&r1=535287&r2=535288
==============================================================================
--- incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/impl/ResourceSpecifierFactory_impl.java (original)
+++ incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/impl/ResourceSpecifierFactory_impl.java Fri May 4 08:18:18 2007
@@ -65,6 +65,7 @@
import org.apache.uima.resource.MQMessagingSpecifier;
import org.apache.uima.resource.MailMessagingSpecifier;
import org.apache.uima.resource.Parameter;
+import org.apache.uima.resource.PearSpecifier;
import org.apache.uima.resource.URISpecifier;
import org.apache.uima.resource.metadata.AllowedValue;
import org.apache.uima.resource.metadata.Capability;
@@ -444,6 +445,10 @@
public CustomResourceSpecifier createCustomResourceSpecifier() {
return (CustomResourceSpecifier) createObject(CustomResourceSpecifier.class);
+ }
+
+ public PearSpecifier createPearSpecifier() {
+ return (PearSpecifier) createObject(PearSpecifier.class);
}
public CpeCollectionReaderCasInitializer createCasInitializer() {
Modified: incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/pear/tools/InstallationController.java
URL: http://svn.apache.org/viewvc/incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/pear/tools/InstallationController.java?view=diff&rev=535288&r1=535287&r2=535288
==============================================================================
--- incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/pear/tools/InstallationController.java (original)
+++ incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/pear/tools/InstallationController.java Fri May 4 08:18:18 2007
@@ -43,10 +43,15 @@
import java.util.Set;
import java.util.jar.JarFile;
+import org.apache.uima.UIMAFramework;
+import org.apache.uima.analysis_engine.impl.PearAnalysisEngineWrapper;
import org.apache.uima.internal.util.SystemEnvReader;
import org.apache.uima.pear.util.FileUtil;
import org.apache.uima.pear.util.MessageRouter;
import org.apache.uima.pear.util.StringUtil;
+import org.apache.uima.resource.Parameter;
+import org.apache.uima.resource.PearSpecifier;
+import org.xml.sax.SAXException;
/**
* The <code>InstallationController</code> class allows installing PEAR files that contain UIMA
@@ -231,6 +236,8 @@
// file generated at the end of local installation
public static final String SET_ENV_FILE = "metadata/setenv.txt";
+
+ public static final String PEAR_DESC_FILE_POSTFIX = "_pear.xml";
// UIMA constants
protected static final String UIMA_HOME_ENV = "UIMA_HOME";
@@ -252,7 +259,7 @@
protected static final String LOCAL_OPT = "-local";
protected static final String INSTALL_IN_ROOT_OPT = "-root";
-
+
// static attributes
private static boolean __inLocalMode = false;
@@ -1640,6 +1647,7 @@
generatePackageConfigFile();
// generate 'setenv.bat' file
generateSetEnvFile();
+ generatePearSpecifier(_mainComponentRootPath, _mainComponentId);
getOutMsgWriter().println(
"[InstallationController]: " + "the " + SET_ENV_FILE + " file contains required "
+ "environment variables for this component");
@@ -1789,6 +1797,27 @@
_installationTable.put(componentId, componentRootPath);
_installationInsDs.put(componentId, dlgInsdObject);
}
+ }
+
+ /**
+ * generates the pearSpecifier to run the installed pear component. The descriptor that is created has
+ * the filename <componentID>_pear.xml and is created in the main component root directory.
+ * If the file already exist, it will be overridden.
+ *
+ * @param mainComponentRootPath
+ * main component root path where the pear was installed to
+ *
+ * @param mainComponentId
+ * main component ID of the installed pear file
+ *
+ * @throws IOException
+ * @throws SAXException
+ */
+ protected static synchronized void generatePearSpecifier(String mainComponentRootPath, String mainComponentId) throws IOException, SAXException{
+ PearSpecifier pearSpec = UIMAFramework.getResourceSpecifierFactory().createPearSpecifier();
+ pearSpec.setPearPath(mainComponentRootPath);
+ File outputFile = new File(mainComponentRootPath, mainComponentId + PEAR_DESC_FILE_POSTFIX);
+ pearSpec.toXML(new FileOutputStream(outputFile));
}
/**
Modified: incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/pear/tools/PackageBrowser.java
URL: http://svn.apache.org/viewvc/incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/pear/tools/PackageBrowser.java?view=diff&rev=535288&r1=535287&r2=535288
==============================================================================
--- incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/pear/tools/PackageBrowser.java (original)
+++ incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/pear/tools/PackageBrowser.java Fri May 4 08:18:18 2007
@@ -385,46 +385,69 @@
}
/**
- * Returns the UIMA datapath setting for the component.
+ * returns the pear component pearSpecifier file path.
*
- * The datapath of the component must be specified as environment variable with the key
+ * @return returns the pear component pearSpecifier file path or null if an archived package was
+ * used.
+ *
+ * @throws IOException
+ */
+ public String getComponentPearDescPath() throws IOException {
+
+ // if the package is not installed, return null
+ if (_archived) {
+ return null;
+ } else {
+ // get pear descriptor file and return it as file path
+ File pearDescFile = new File(this._rootDir, this.getInstallationDescriptor()
+ .getMainComponentId()
+ + InstallationController.PEAR_DESC_FILE_POSTFIX);
+ return pearDescFile.getAbsolutePath();
+ }
+ }
+
+ /**
+ * Returns the UIMA datapath setting for the component.
+ *
+ * The datapath of the component must be specified as environment variable with the key
* <code>uima.datapath</code>.
*
* @return the datapath setting for the component or null if the datapath is not specified.
*
* @throws IOException
- * If any I/O exception occurred while reading the component meta data.
+ * If any I/O exception occurred while reading the component meta data.
*/
public String getComponentDataPath() throws IOException {
- //get all environment variables that are specified for the current pear file
+ // get all environment variables that are specified for the current pear file
Properties pearEnvProps = InstallationController.buildTableOfEnvVars(this
.getInstallationDescriptor());
- //return the uima datapath setting if available. If not return null
+ // return the uima datapath setting if available. If not return null
return (String) pearEnvProps.get(RelativePathResolver.UIMA_DATAPATH_PROP);
}
-
+
/**
- * Returns the environment variable settings for the component. The variable settings does not contain
- * the <code>classpath</code> and <code>uima.datapath</code> settings for the component.
+ * Returns the environment variable settings for the component. The variable settings does not
+ * contain the <code>classpath</code> and <code>uima.datapath</code> settings for the
+ * component.
*
* @return returns the environment variable settings for the component
*
* @throws IOException
- * If any I/O exception occurred while reading the component meta data.
+ * If any I/O exception occurred while reading the component meta data.
*/
public Properties getComponentEnvVars() throws IOException {
- //get all environment variables that are specified for the current pear file
+ // get all environment variables that are specified for the current pear file
Properties pearEnvProps = InstallationController.buildTableOfEnvVars(this
.getInstallationDescriptor());
- //removes the UIMA datapath setting if available since it is already returned with the
- //getComponentDataPath() method.
+ // removes the UIMA datapath setting if available since it is already returned with the
+ // getComponentDataPath() method.
pearEnvProps.remove(RelativePathResolver.UIMA_DATAPATH_PROP);
-
- //return the environment variables specified for the component
+
+ // return the environment variables specified for the component
return pearEnvProps;
}
Added: incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/PearSpecifier.java
URL: http://svn.apache.org/viewvc/incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/PearSpecifier.java?view=auto&rev=535288
==============================================================================
--- incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/PearSpecifier.java (added)
+++ incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/PearSpecifier.java Fri May 4 08:18:18 2007
@@ -0,0 +1,58 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * 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.
+ */
+
+package org.apache.uima.resource;
+
+/**
+ * A type of <code>ResourceSpecifier</code> that locate an installed pear <code>Resource</code>.
+ *
+ */
+public interface PearSpecifier extends ResourceServiceSpecifier {
+
+ /**
+ * Retrieves the PEAR path at which the pear Resource is located.
+ *
+ * @return a string
+ */
+ public String getPearPath();
+
+ /**
+ * Sets the PEAR path at which a Resource is located.
+ *
+ * @param aPearPath
+ * a pear path string
+ */
+ public void setPearPath(String aPearPath);
+
+ /**
+ * Gets parameters that may be read by the pear resource class when it is initialized.
+ *
+ * @return an array of parameters. This will never return <code>null</code>.
+ */
+ public Parameter[] getParameters();
+
+ /**
+ * Sets parameters that may be read by the pear resource class when it is initialized.
+ *
+ * @param parameters the Parameters to set.
+ */
+ public void setParameters(Parameter[] parameters);
+
+
+}
Added: incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/impl/PearSpecifier_impl.java
URL: http://svn.apache.org/viewvc/incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/impl/PearSpecifier_impl.java?view=auto&rev=535288
==============================================================================
--- incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/impl/PearSpecifier_impl.java (added)
+++ incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/resource/impl/PearSpecifier_impl.java Fri May 4 08:18:18 2007
@@ -0,0 +1,83 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * 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.
+ */
+
+package org.apache.uima.resource.impl;
+
+import org.apache.uima.resource.Parameter;
+import org.apache.uima.resource.PearSpecifier;
+import org.apache.uima.resource.metadata.impl.MetaDataObject_impl;
+import org.apache.uima.resource.metadata.impl.PropertyXmlInfo;
+import org.apache.uima.resource.metadata.impl.XmlizationInfo;
+
+/**
+ * Reference implementation of {@link org.apache.uima.resource.PearSpecifier}.
+ *
+ *
+ */
+public class PearSpecifier_impl extends MetaDataObject_impl implements PearSpecifier {
+
+ static final long serialVersionUID = -7910540167197537337L;
+
+ /** PEAR path setting */
+ private String mPearPath;
+
+ private Parameter[] mParameters;
+
+ /**
+ * Creates a new <code>PearSpecifier_impl</code>.
+ */
+ public PearSpecifier_impl() {
+ }
+
+ /**
+ * @return Returns the Parameters.
+ */
+ public Parameter[] getParameters() {
+ return this.mParameters;
+ }
+
+ /**
+ * @param parameters
+ * The Parameters to set.
+ */
+ public void setParameters(Parameter[] parameters) {
+ this.mParameters = parameters;
+ }
+
+ /* (non-Javadoc)
+ * @see org.apache.uima.resource.PearSpecifier#getPearPath()
+ */
+ public String getPearPath() {
+ return this.mPearPath;
+ }
+
+ /* (non-Javadoc)
+ * @see org.apache.uima.resource.PearSpecifier#setPearPath(java.lang.String)
+ */
+ public void setPearPath(String aPearPath) {
+ this.mPearPath = aPearPath;
+ }
+
+ protected XmlizationInfo getXmlizationInfo() {
+ return XMLIZATION_INFO;
+ }
+
+ static final private XmlizationInfo XMLIZATION_INFO = new XmlizationInfo("pearSpecifier",
+ new PropertyXmlInfo[] { new PropertyXmlInfo("pearPath"), new PropertyXmlInfo("parameters") });
+}
Modified: incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/util/XMLParser.java
URL: http://svn.apache.org/viewvc/incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/util/XMLParser.java?view=diff&rev=535288&r1=535287&r2=535288
==============================================================================
--- incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/util/XMLParser.java (original)
+++ incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/util/XMLParser.java Fri May 4 08:18:18 2007
@@ -30,6 +30,7 @@
import org.apache.uima.collection.metadata.CpeDescription;
import org.apache.uima.flow.FlowControllerDescription;
import org.apache.uima.resource.CustomResourceSpecifier;
+import org.apache.uima.resource.PearSpecifier;
import org.apache.uima.resource.ResourceSpecifier;
import org.apache.uima.resource.URISpecifier;
import org.apache.uima.resource.metadata.FsIndexCollection;
@@ -621,6 +622,36 @@
* if the input XML is not valid or does not specify a valid CustomResourceSpecifier
*/
public CustomResourceSpecifier parseCustomResourceSpecifier(XMLInputSource aInput,
+ ParsingOptions aOptions) throws InvalidXMLException;
+
+ /**
+ * Parses a PearSpecifier from an XML input stream.
+ *
+ * @param aInput
+ * the input source from which to read the XML document
+ *
+ * @return a <code>PearSpecifier</code> object constructed from the XML document
+ *
+ * @throws InvalidXMLException
+ * if the input XML is not valid or does not specify a valid PearSpecifier
+ */
+ public PearSpecifier parsePearSpecifier(XMLInputSource aInput)
+ throws InvalidXMLException;
+
+ /**
+ * Parses a PearSpecifier from an XML input stream.
+ *
+ * @param aInput
+ * the input source from which to read the XML document
+ * @param aOptions
+ * option settings
+ *
+ * @return a <code>PearSpecifier</code> object constructed from the XML document
+ *
+ * @throws InvalidXMLException
+ * if the input XML is not valid or does not specify a valid PearSpecifier
+ */
+ public PearSpecifier parsePearSpecifier(XMLInputSource aInput,
ParsingOptions aOptions) throws InvalidXMLException;
/**
Modified: incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/util/impl/XMLParser_impl.java
URL: http://svn.apache.org/viewvc/incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/util/impl/XMLParser_impl.java?view=diff&rev=535288&r1=535287&r2=535288
==============================================================================
--- incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/util/impl/XMLParser_impl.java (original)
+++ incubator/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/util/impl/XMLParser_impl.java Fri May 4 08:18:18 2007
@@ -42,6 +42,7 @@
import org.apache.uima.flow.FlowControllerDescription;
import org.apache.uima.internal.util.XMLUtils;
import org.apache.uima.resource.CustomResourceSpecifier;
+import org.apache.uima.resource.PearSpecifier;
import org.apache.uima.resource.ResourceSpecifier;
import org.apache.uima.resource.URISpecifier;
import org.apache.uima.resource.metadata.FsIndexCollection;
@@ -57,7 +58,6 @@
import org.apache.uima.util.XMLInputSource;
import org.apache.uima.util.XMLParser;
import org.apache.uima.util.XMLizable;
-import org.apache.uima.util.XMLParser.ParsingOptions;
import org.w3c.dom.Element;
import org.xml.sax.InputSource;
import org.xml.sax.SAXNotRecognizedException;
@@ -811,6 +811,30 @@
CustomResourceSpecifier.class.getName(), object.getClass().getName() });
}
}
+
+ /* (non-Javadoc)
+ * @see org.apache.uima.util.XMLParser#parsePearSpecifier(org.apache.uima.util.XMLInputSource)
+ */
+ public PearSpecifier parsePearSpecifier(XMLInputSource aInput) throws InvalidXMLException {
+ return parsePearSpecifier(aInput, DEFAULT_PARSING_OPTIONS);
+ }
+
+ /* (non-Javadoc)
+ * @see org.apache.uima.util.XMLParser#parsePearSpecifier(org.apache.uima.util.XMLInputSource, org.apache.uima.util.XMLParser.ParsingOptions)
+ */
+ public PearSpecifier parsePearSpecifier(XMLInputSource aInput, ParsingOptions aOptions) throws InvalidXMLException {
+ // attempt to locate resource specifier schema
+ URL schemaURL = getResourceSpecifierSchemaUrl();
+ XMLizable object = parse(aInput, RESOURCE_SPECIFIER_NAMESPACE, schemaURL, aOptions);
+
+ if (object instanceof PearSpecifier) {
+ return (PearSpecifier) object;
+ } else {
+ throw new InvalidXMLException(InvalidXMLException.INVALID_CLASS, new Object[] {
+ PearSpecifier.class.getName(), object.getClass().getName() });
+ }
+ }
+
/*
* (non-Javadoc)
*
Modified: incubator/uima/uimaj/trunk/uimaj-core/src/main/resources/org/apache/uima/impl/factoryConfig.xml
URL: http://svn.apache.org/viewvc/incubator/uima/uimaj/trunk/uimaj-core/src/main/resources/org/apache/uima/impl/factoryConfig.xml?view=diff&rev=535288&r1=535287&r2=535288
==============================================================================
--- incubator/uima/uimaj/trunk/uimaj-core/src/main/resources/org/apache/uima/impl/factoryConfig.xml (original)
+++ incubator/uima/uimaj/trunk/uimaj-core/src/main/resources/org/apache/uima/impl/factoryConfig.xml Fri May 4 08:18:18 2007
@@ -36,6 +36,8 @@
resource="org.apache.uima.adapter.vinci.VinciAnalysisEngineServiceAdapter"/>
<binding specifier="org.apache.uima.resource.URISpecifier"
resource="org.apache.uima.adapter.soap.SoapAnalysisEngineServiceAdapter"/>
+ <binding specifier="org.apache.uima.resource.PearSpecifier"
+ resource="org.apache.uima.analysis_engine.impl.PearAnalysisEngineWrapper"/>
<binding specifier="org.apache.uima.resource.FileResourceSpecifier"
resource="org.apache.uima.resource.impl.DataResource_impl"/>
<binding specifier="org.apache.uima.resource.FileLanguageResourceSpecifier"
@@ -107,7 +109,8 @@
<binding element="typeDescription" interface="org.apache.uima.resource.metadata.TypeDescription" class="org.apache.uima.resource.metadata.impl.TypeDescription_impl"/>
<binding element="typePriorities" interface="org.apache.uima.resource.metadata.TypePriorities" class="org.apache.uima.resource.metadata.impl.TypePriorities_impl"/>
<binding element="typeSystemDescription" interface="org.apache.uima.resource.metadata.TypeSystemDescription" class="org.apache.uima.resource.metadata.impl.TypeSystemDescription_impl"/>
- <binding element="uriSpecifier" interface="org.apache.uima.resource.URISpecifier" class="org.apache.uima.resource.impl.URISpecifier_impl"/>
+ <binding element="uriSpecifier" interface="org.apache.uima.resource.URISpecifier" class="org.apache.uima.resource.impl.URISpecifier_impl"/>
+ <binding element="pearSpecifier" interface="org.apache.uima.resource.PearSpecifier" class="org.apache.uima.resource.impl.PearSpecifier_impl"/>
<binding element="value" interface="org.apache.uima.resource.metadata.AllowedValue" class="org.apache.uima.resource.metadata.impl.AllowedValue_impl"/>
<binding element="sofaMapping" interface="org.apache.uima.analysis_engine.metadata.SofaMapping" class="org.apache.uima.analysis_engine.metadata.impl.SofaMapping_impl"/>
Modified: incubator/uima/uimaj/trunk/uimaj-core/src/main/resources/org/apache/uima/impl/log_messages.properties
URL: http://svn.apache.org/viewvc/incubator/uima/uimaj/trunk/uimaj-core/src/main/resources/org/apache/uima/impl/log_messages.properties?view=diff&rev=535288&r1=535287&r2=535288
==============================================================================
--- incubator/uima/uimaj/trunk/uimaj-core/src/main/resources/org/apache/uima/impl/log_messages.properties (original)
+++ incubator/uima/uimaj/trunk/uimaj-core/src/main/resources/org/apache/uima/impl/log_messages.properties Fri May 4 08:18:18 2007
@@ -96,8 +96,6 @@
UIMA_continuing_after_exception__FINE = An exception occurred, but the Flow Controller decided that processing can continue.
-UIMA_pear_runtime_param_not_available__SEVERE = UIMA pear runtime parameter "{0}" not available in the customResourceSpecifier.
-
UIMA_pear_runtime_system_var_already_set__WARNING = UIMA pear runtime: System environment variable "{0}" already set, but was replace with "{1}" by UIMA component {2}.
UIMA_pear_runtime_set_system_var__CONFIG = UIMA pear runtime set system environment variable "{0}" for UIMA component {1}.