You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by to...@apache.org on 2011/02/12 20:41:25 UTC

svn commit: r1070141 - in /uima/sandbox/trunk/Solrcas: desc/ src/main/java/org/apache/uima/solrcas/ src/test/java/org/apache/uima/solrcas/ src/test/resources/

Author: tommaso
Date: Sat Feb 12 19:41:25 2011
New Revision: 1070141

URL: http://svn.apache.org/viewvc?rev=1070141&view=rev
Log:
[UIMA-2047] - removed default solrmapping.xml and introduced FileUtils for retrieving files from classpath or URL

Added:
    uima/sandbox/trunk/Solrcas/src/main/java/org/apache/uima/solrcas/FileUtils.java
    uima/sandbox/trunk/Solrcas/src/test/resources/solrmapping.xml
Removed:
    uima/sandbox/trunk/Solrcas/desc/solrmapping.xml
Modified:
    uima/sandbox/trunk/Solrcas/src/main/java/org/apache/uima/solrcas/FieldMappingReader.java
    uima/sandbox/trunk/Solrcas/src/test/java/org/apache/uima/solrcas/EmbeddedSolrCASConsumer.java
    uima/sandbox/trunk/Solrcas/src/test/java/org/apache/uima/solrcas/FieldMappingReaderTest.java
    uima/sandbox/trunk/Solrcas/src/test/resources/TestSolrcasAE.xml

Modified: uima/sandbox/trunk/Solrcas/src/main/java/org/apache/uima/solrcas/FieldMappingReader.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/Solrcas/src/main/java/org/apache/uima/solrcas/FieldMappingReader.java?rev=1070141&r1=1070140&r2=1070141&view=diff
==============================================================================
--- uima/sandbox/trunk/Solrcas/src/main/java/org/apache/uima/solrcas/FieldMappingReader.java (original)
+++ uima/sandbox/trunk/Solrcas/src/main/java/org/apache/uima/solrcas/FieldMappingReader.java Sat Feb 12 19:41:25 2011
@@ -36,7 +36,7 @@ public class FieldMappingReader {
 
   public SolrMappingConfiguration getConf(String path) throws Exception {
 
-    InputStream input = this.getClass().getResourceAsStream(path);
+    InputStream input = FileUtils.getStream(path);
 
     SAXParser parser = SAXParserFactory.newInstance().newSAXParser();
 

Added: uima/sandbox/trunk/Solrcas/src/main/java/org/apache/uima/solrcas/FileUtils.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/Solrcas/src/main/java/org/apache/uima/solrcas/FileUtils.java?rev=1070141&view=auto
==============================================================================
--- uima/sandbox/trunk/Solrcas/src/main/java/org/apache/uima/solrcas/FileUtils.java (added)
+++ uima/sandbox/trunk/Solrcas/src/main/java/org/apache/uima/solrcas/FileUtils.java Sat Feb 12 19:41:25 2011
@@ -0,0 +1,57 @@
+/*
+ * 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.solrcas;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.net.MalformedURLException;
+import java.net.URI;
+import java.net.URL;
+
+/**
+ * Utility class to retrieve resources both from classpath and URIs
+ */
+public class FileUtils {
+
+  private static final String CLASSPATH = "classpath:";
+  private static final String EMPTY_STRING = "";
+
+  public static InputStream getStream(String path) throws IOException {
+    InputStream input;
+    if (path.startsWith(CLASSPATH)) {
+      input = System.class.getResourceAsStream(path.replaceFirst(CLASSPATH, EMPTY_STRING));
+    } else {
+      input = URI.create(path).toURL().openStream();
+    }
+    return input;
+  }
+
+  public static URL getURL(String path) throws MalformedURLException {
+    URL solrURL;
+    if (path.startsWith(CLASSPATH)) {
+      path = path.replaceFirst(CLASSPATH, EMPTY_STRING);
+      solrURL = System.class.getResource(path);
+    } else {
+      solrURL = URI.create(path).toURL();
+    }
+    return solrURL;
+  }
+
+}

Modified: uima/sandbox/trunk/Solrcas/src/test/java/org/apache/uima/solrcas/EmbeddedSolrCASConsumer.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/Solrcas/src/test/java/org/apache/uima/solrcas/EmbeddedSolrCASConsumer.java?rev=1070141&r1=1070140&r2=1070141&view=diff
==============================================================================
--- uima/sandbox/trunk/Solrcas/src/test/java/org/apache/uima/solrcas/EmbeddedSolrCASConsumer.java (original)
+++ uima/sandbox/trunk/Solrcas/src/test/java/org/apache/uima/solrcas/EmbeddedSolrCASConsumer.java Sat Feb 12 19:41:25 2011
@@ -19,28 +19,21 @@
 
 package org.apache.uima.solrcas;
 
-import java.net.URI;
-import java.net.URL;
-
 import org.apache.solr.client.solrj.SolrServer;
 import org.apache.solr.client.solrj.embedded.EmbeddedSolrServer;
 import org.apache.solr.core.CoreContainer;
 
+import java.net.URL;
+
 public class EmbeddedSolrCASConsumer extends SolrCASConsumer {
 
   @Override
   protected SolrServer createServer(String solrInstanceTypeParam,
-      String solrPathParam) throws Exception {
+                                    String solrPathParam) throws Exception {
     SolrServer solrServer = null;
-    
+
     if (solrInstanceTypeParam.equals("embedded")) {
-      URL solrURL;
-      if (solrPathParam.startsWith("classpath:")) {
-        solrPathParam = solrPathParam.replaceFirst("classpath:", "");
-        solrURL = this.getClass().getResource(solrPathParam);
-      } else {
-        solrURL = URI.create(solrPathParam).toURL();
-      }
+      URL solrURL = FileUtils.getURL(solrPathParam);
       System.setProperty("solr.solr.home", solrURL.getFile());
       CoreContainer.Initializer initializer = new CoreContainer.Initializer();
       CoreContainer coreContainer = initializer.initialize();

Modified: uima/sandbox/trunk/Solrcas/src/test/java/org/apache/uima/solrcas/FieldMappingReaderTest.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/Solrcas/src/test/java/org/apache/uima/solrcas/FieldMappingReaderTest.java?rev=1070141&r1=1070140&r2=1070141&view=diff
==============================================================================
--- uima/sandbox/trunk/Solrcas/src/test/java/org/apache/uima/solrcas/FieldMappingReaderTest.java (original)
+++ uima/sandbox/trunk/Solrcas/src/test/java/org/apache/uima/solrcas/FieldMappingReaderTest.java Sat Feb 12 19:41:25 2011
@@ -23,10 +23,7 @@ import org.junit.Test;
 
 import java.util.Map;
 
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
+import static org.junit.Assert.*;
 
 /**
  * TestCase for FieldMappingReader object
@@ -37,7 +34,7 @@ public class FieldMappingReaderTest {
   public void testConfReader() {
     try {
       FieldMappingReader fieldMappingReader = new FieldMappingReader();
-      SolrMappingConfiguration mapping = fieldMappingReader.getConf("/solrmapping.xml");
+      SolrMappingConfiguration mapping = fieldMappingReader.getConf("classpath:/solrmapping.xml");
       assertNotNull(mapping);
       
       Map<String, Map<String, String>> featureStructuresMapping = mapping.getFeatureStructuresMapping();

Modified: uima/sandbox/trunk/Solrcas/src/test/resources/TestSolrcasAE.xml
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/Solrcas/src/test/resources/TestSolrcasAE.xml?rev=1070141&r1=1070140&r2=1070141&view=diff
==============================================================================
--- uima/sandbox/trunk/Solrcas/src/test/resources/TestSolrcasAE.xml (original)
+++ uima/sandbox/trunk/Solrcas/src/test/resources/TestSolrcasAE.xml Sat Feb 12 19:41:25 2011
@@ -56,7 +56,7 @@
       <nameValuePair>
         <name>mappingFile</name>
         <value>
-          <string>/solrmapping.xml</string>
+          <string>classpath:/solrmapping.xml</string>
         </value>
       </nameValuePair>
       <nameValuePair>

Added: uima/sandbox/trunk/Solrcas/src/test/resources/solrmapping.xml
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/Solrcas/src/test/resources/solrmapping.xml?rev=1070141&view=auto
==============================================================================
--- uima/sandbox/trunk/Solrcas/src/test/resources/solrmapping.xml (added)
+++ uima/sandbox/trunk/Solrcas/src/test/resources/solrmapping.xml Sat Feb 12 19:41:25 2011
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+   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.
+-->
+
+<solrMapping>
+  <cas>id</cas>
+  <documentText>text</documentText>
+  <documentLanguage>language</documentLanguage>
+  <fsMapping>
+    <type name="uima.tcas.Annotation">
+      <map feature="coveredText" field="annotation"/>
+    </type>
+  </fsMapping>
+</solrMapping>
\ No newline at end of file