uima-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From tomm...@apache.org
Subject svn commit: r999276 - in /uima/sandbox/trunk/AlchemyAPIAnnotator/src/main/java/org/apache/uima/alchemy: annotator/URLConceptTaggingAnnotator.java mapper/processor/RankedEntitiesProcessor.java
Date Tue, 21 Sep 2010 08:47:59 GMT
Author: tommaso
Date: Tue Sep 21 08:47:59 2010
New Revision: 999276

URL: http://svn.apache.org/viewvc?rev=999276&view=rev
Log:
[UIMA-1863] - fixed reflection based FeatureStructure building for RankedEntitiesProcessor,
added URLConceptTaggingAnnotator class

Added:
    uima/sandbox/trunk/AlchemyAPIAnnotator/src/main/java/org/apache/uima/alchemy/annotator/URLConceptTaggingAnnotator.java
Modified:
    uima/sandbox/trunk/AlchemyAPIAnnotator/src/main/java/org/apache/uima/alchemy/mapper/processor/RankedEntitiesProcessor.java

Added: uima/sandbox/trunk/AlchemyAPIAnnotator/src/main/java/org/apache/uima/alchemy/annotator/URLConceptTaggingAnnotator.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/AlchemyAPIAnnotator/src/main/java/org/apache/uima/alchemy/annotator/URLConceptTaggingAnnotator.java?rev=999276&view=auto
==============================================================================
--- uima/sandbox/trunk/AlchemyAPIAnnotator/src/main/java/org/apache/uima/alchemy/annotator/URLConceptTaggingAnnotator.java
(added)
+++ uima/sandbox/trunk/AlchemyAPIAnnotator/src/main/java/org/apache/uima/alchemy/annotator/URLConceptTaggingAnnotator.java
Tue Sep 21 08:47:59 2010
@@ -0,0 +1,60 @@
+/**
+ *  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.alchemy.annotator;
+
+import org.apache.uima.alchemy.digester.DigesterProvider;
+import org.apache.uima.alchemy.digester.concept.ConceptTaggingDigesterProvider;
+import org.apache.uima.analysis_engine.AnalysisEngineProcessException;
+import org.apache.uima.jcas.JCas;
+
+import java.io.UnsupportedEncodingException;
+import java.net.MalformedURLException;
+import java.net.URI;
+import java.net.URL;
+import java.net.URLEncoder;
+
+public class URLConceptTaggingAnnotator extends AbstractAlchemyAnnotator {
+  @Override
+  protected DigesterProvider createDigester() {
+    return new ConceptTaggingDigesterProvider();
+  }
+
+  @Override
+  protected URL createServiceURI() throws MalformedURLException {
+    return URI.create("http://access.alchemyapi.com/calls/url/URLGetRankedConcepts").toURL();
+  }
+
+  @Override
+  protected String[] getServiceParameters() {
+    return new String[]{"url", "maxRetrieve", "outputMode", "linkedData", "showSourceText"};
+  }
+
+  @Override
+  protected void initializeRuntimeParameters(JCas aJCas) throws AnalysisEngineProcessException
{
+    try {
+      StringBuffer serviceParamsBuf = new StringBuffer();
+      serviceParamsBuf.append("&url=");
+      serviceParamsBuf.append(URLEncoder.encode(aJCas.getDocumentText(), "UTF-8"));
+      this.serviceParams += (serviceParamsBuf.toString());
+      this.serviceParams += (serviceParamsBuf.toString());
+    } catch (UnsupportedEncodingException e) {
+      throw new AnalysisEngineProcessException(e);
+    }
+  }
+}

Modified: uima/sandbox/trunk/AlchemyAPIAnnotator/src/main/java/org/apache/uima/alchemy/mapper/processor/RankedEntitiesProcessor.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/AlchemyAPIAnnotator/src/main/java/org/apache/uima/alchemy/mapper/processor/RankedEntitiesProcessor.java?rev=999276&r1=999275&r2=999276&view=diff
==============================================================================
--- uima/sandbox/trunk/AlchemyAPIAnnotator/src/main/java/org/apache/uima/alchemy/mapper/processor/RankedEntitiesProcessor.java
(original)
+++ uima/sandbox/trunk/AlchemyAPIAnnotator/src/main/java/org/apache/uima/alchemy/mapper/processor/RankedEntitiesProcessor.java
Tue Sep 21 08:47:59 2010
@@ -126,16 +126,10 @@ public class RankedEntitiesProcessor imp
     Class<?> typeClass = getClassFromName(typeName);
     if (typeClass != null) {
       try {
-        /* usually jcas gen creates the constructor with jcas argument as the second one
*/
-        fsObject = (BaseEntity) typeClass.getConstructors()[1].newInstance(aJCas);
+        /* use reflection to build a BaseEntity object */
+        fsObject = (BaseEntity) typeClass.getConstructor(JCas.class).newInstance(aJCas);
       } catch (Exception e) {
-        /* for exceptional cases in which jcas parameter constructor is the first */
-        try {
-          fsObject = (BaseEntity) typeClass.getConstructors()[0].newInstance(aJCas);
-        } catch (Exception inner) {
-          /* could not instantiate a FS via reflection */
-          inner.printStackTrace();
-        }
+        // fsObject remains null
       }
     }
     return fsObject;



Mime
View raw message