You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stanbol.apache.org by bd...@apache.org on 2011/04/06 17:51:55 UTC
svn commit: r1089506 - in /incubator/stanbol/trunk:
commons/stanboltools/datafileprovider/src/main/java/org/apache/stanbol/commons/stanboltools/datafileprovider/
commons/stanboltools/datafileprovider/src/main/java/org/apache/stanbol/commons/stanboltool...
Author: bdelacretaz
Date: Wed Apr 6 15:51:55 2011
New Revision: 1089506
URL: http://svn.apache.org/viewvc?rev=1089506&view=rev
Log:
STANBOL-146 - allow for several comments per data file
Modified:
incubator/stanbol/trunk/commons/stanboltools/datafileprovider/src/main/java/org/apache/stanbol/commons/stanboltools/datafileprovider/DataFileProvider.java
incubator/stanbol/trunk/commons/stanboltools/datafileprovider/src/main/java/org/apache/stanbol/commons/stanboltools/datafileprovider/DataFileProviderEvent.java
incubator/stanbol/trunk/commons/stanboltools/datafileprovider/src/main/java/org/apache/stanbol/commons/stanboltools/datafileprovider/impl/MainDataFileProvider.java
incubator/stanbol/trunk/commons/stanboltools/datafileprovider/src/main/java/org/apache/stanbol/commons/stanboltools/datafileprovider/impl/WebConsolePlugin.java
incubator/stanbol/trunk/enhancer/engines/opennlp-ner/src/main/java/org/apache/stanbol/enhancer/engines/opennlp/impl/ClasspathDataFileProvider.java
incubator/stanbol/trunk/enhancer/engines/opennlp-ner/src/main/java/org/apache/stanbol/enhancer/engines/opennlp/impl/EngineCore.java
Modified: incubator/stanbol/trunk/commons/stanboltools/datafileprovider/src/main/java/org/apache/stanbol/commons/stanboltools/datafileprovider/DataFileProvider.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/commons/stanboltools/datafileprovider/src/main/java/org/apache/stanbol/commons/stanboltools/datafileprovider/DataFileProvider.java?rev=1089506&r1=1089505&r2=1089506&view=diff
==============================================================================
--- incubator/stanbol/trunk/commons/stanboltools/datafileprovider/src/main/java/org/apache/stanbol/commons/stanboltools/datafileprovider/DataFileProvider.java (original)
+++ incubator/stanbol/trunk/commons/stanboltools/datafileprovider/src/main/java/org/apache/stanbol/commons/stanboltools/datafileprovider/DataFileProvider.java Wed Apr 6 15:51:55 2011
@@ -18,6 +18,7 @@ package org.apache.stanbol.commons.stanb
import java.io.IOException;
import java.io.InputStream;
+import java.util.Map;
/**
* Used to provide read-only data files (indexes, models etc.) from various
@@ -34,9 +35,8 @@ public interface DataFileProvider {
* @param bundleSymbolicName can be used to differentiate
* between files which have the same name
* @param filename name of the file to open
- * @param downloadExplanation explains how to get the "full"
- * version of the data file, in case we don't find it or in
- * case we supply a default small variant.
+ * @param comments Optional - how to get a more complete version
+ * of the data file, licensing information, etc.
* @return InputStream to read the file, must be closed by
* caller when done
* @throws IOException problem finding or reading the file
@@ -44,5 +44,5 @@ public interface DataFileProvider {
InputStream getInputStream(
String bundleSymbolicName,
String filename,
- String downloadExplanation) throws IOException;
+ Map<String, String> comments) throws IOException;
}
Modified: incubator/stanbol/trunk/commons/stanboltools/datafileprovider/src/main/java/org/apache/stanbol/commons/stanboltools/datafileprovider/DataFileProviderEvent.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/commons/stanboltools/datafileprovider/src/main/java/org/apache/stanbol/commons/stanboltools/datafileprovider/DataFileProviderEvent.java?rev=1089506&r1=1089505&r2=1089506&view=diff
==============================================================================
--- incubator/stanbol/trunk/commons/stanboltools/datafileprovider/src/main/java/org/apache/stanbol/commons/stanboltools/datafileprovider/DataFileProviderEvent.java (original)
+++ incubator/stanbol/trunk/commons/stanboltools/datafileprovider/src/main/java/org/apache/stanbol/commons/stanboltools/datafileprovider/DataFileProviderEvent.java Wed Apr 6 15:51:55 2011
@@ -17,6 +17,8 @@
package org.apache.stanbol.commons.stanboltools.datafileprovider;
import java.util.Date;
+import java.util.HashMap;
+import java.util.Map;
/** Used to record a log of {@link DataFileProvider} operations */
@@ -24,15 +26,17 @@ public class DataFileProviderEvent {
private final Date timestamp;
private final String bundleSymbolicName;
private final String filename;
- private final String downloadExplanation;
+ private final Map<String, String> comments;
private final String actualFileLocation;
- public DataFileProviderEvent(String bundleSymbolicName, String filename, String downloadExplanation,
+ private static final Map<String, String> EMPTY_COMMENTS = new HashMap<String, String>();
+
+ public DataFileProviderEvent(String bundleSymbolicName, String filename, Map<String, String> comments,
String actualFileLocation) {
this.timestamp = new Date();
this.bundleSymbolicName = bundleSymbolicName;
this.filename = filename;
- this.downloadExplanation = downloadExplanation;
+ this.comments = comments == null ? EMPTY_COMMENTS : comments;
this.actualFileLocation = actualFileLocation;
}
@@ -69,9 +73,9 @@ public class DataFileProviderEvent {
return filename;
}
- /** @return the download explanation that was passed to the DataFileProvider */
- public String getDownloadExplanation() {
- return downloadExplanation;
+ /** @return the optional comments about this file */
+ public Map<String, String> getComments() {
+ return comments;
}
/** @return the actual location of the file that was loaded,
@@ -79,4 +83,4 @@ public class DataFileProviderEvent {
public String getActualFileLocation() {
return actualFileLocation;
}
-}
+}
\ No newline at end of file
Modified: incubator/stanbol/trunk/commons/stanboltools/datafileprovider/src/main/java/org/apache/stanbol/commons/stanboltools/datafileprovider/impl/MainDataFileProvider.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/commons/stanboltools/datafileprovider/src/main/java/org/apache/stanbol/commons/stanboltools/datafileprovider/impl/MainDataFileProvider.java?rev=1089506&r1=1089505&r2=1089506&view=diff
==============================================================================
--- incubator/stanbol/trunk/commons/stanboltools/datafileprovider/src/main/java/org/apache/stanbol/commons/stanboltools/datafileprovider/impl/MainDataFileProvider.java (original)
+++ incubator/stanbol/trunk/commons/stanboltools/datafileprovider/src/main/java/org/apache/stanbol/commons/stanboltools/datafileprovider/impl/MainDataFileProvider.java Wed Apr 6 15:51:55 2011
@@ -26,6 +26,7 @@ import java.util.Dictionary;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
+import java.util.Map;
import org.apache.felix.scr.annotations.Activate;
import org.apache.felix.scr.annotations.Component;
@@ -129,7 +130,7 @@ public class MainDataFileProvider implem
@SuppressWarnings("unchecked")
@Override
public InputStream getInputStream(String bundleSymbolicName,
- String filename, String downloadExplanation) throws IOException {
+ String filename, Map<String, String> comments) throws IOException {
InputStream result = null;
String fileUrl = null;
@@ -162,7 +163,7 @@ public class MainDataFileProvider implem
continue;
}
final DataFileProvider dfp = (DataFileProvider)o;
- result = dfp.getInputStream(bundleSymbolicName, filename, downloadExplanation);
+ result = dfp.getInputStream(bundleSymbolicName, filename, comments);
if(result == null) {
log.debug("{} does not provide file {}", dfp, filename);
} else {
@@ -174,7 +175,7 @@ public class MainDataFileProvider implem
// Add event
final DataFileProviderEvent event = new DataFileProviderEvent(
bundleSymbolicName, filename,
- downloadExplanation, fileUrl);
+ comments, fileUrl);
synchronized (events) {
if(events.size() >= maxEvents) {
Modified: incubator/stanbol/trunk/commons/stanboltools/datafileprovider/src/main/java/org/apache/stanbol/commons/stanboltools/datafileprovider/impl/WebConsolePlugin.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/commons/stanboltools/datafileprovider/src/main/java/org/apache/stanbol/commons/stanboltools/datafileprovider/impl/WebConsolePlugin.java?rev=1089506&r1=1089505&r2=1089506&view=diff
==============================================================================
--- incubator/stanbol/trunk/commons/stanboltools/datafileprovider/src/main/java/org/apache/stanbol/commons/stanboltools/datafileprovider/impl/WebConsolePlugin.java (original)
+++ incubator/stanbol/trunk/commons/stanboltools/datafileprovider/src/main/java/org/apache/stanbol/commons/stanboltools/datafileprovider/impl/WebConsolePlugin.java Wed Apr 6 15:51:55 2011
@@ -19,6 +19,7 @@ package org.apache.stanbol.commons.stanb
import java.io.IOException;
import java.io.PrintWriter;
import java.text.SimpleDateFormat;
+import java.util.Map;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
@@ -77,9 +78,20 @@ public class WebConsolePlugin extends Ht
cell(pw,
null, e.getBundleSymbolicName(),
"b", e.getFilename());
+
+ final StringBuilder sb = new StringBuilder();
+ for(Map.Entry<String, String> comment : e.getComments().entrySet()) {
+ if(sb.length() > 0) {
+ sb.append("<br/>");
+ }
+ sb.append(comment.getKey());
+ sb.append(": ");
+ sb.append(comment.getValue());
+ }
+
cell(pw,
null, e.getActualFileLocation(),
- "i" , "Download info: " + e.getDownloadExplanation());
+ "i" , sb.toString());
pw.println("</tr>");
}
pw.println("</tbody></table>");
Modified: incubator/stanbol/trunk/enhancer/engines/opennlp-ner/src/main/java/org/apache/stanbol/enhancer/engines/opennlp/impl/ClasspathDataFileProvider.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/enhancer/engines/opennlp-ner/src/main/java/org/apache/stanbol/enhancer/engines/opennlp/impl/ClasspathDataFileProvider.java?rev=1089506&r1=1089505&r2=1089506&view=diff
==============================================================================
--- incubator/stanbol/trunk/enhancer/engines/opennlp-ner/src/main/java/org/apache/stanbol/enhancer/engines/opennlp/impl/ClasspathDataFileProvider.java (original)
+++ incubator/stanbol/trunk/enhancer/engines/opennlp-ner/src/main/java/org/apache/stanbol/enhancer/engines/opennlp/impl/ClasspathDataFileProvider.java Wed Apr 6 15:51:55 2011
@@ -18,6 +18,7 @@ package org.apache.stanbol.enhancer.engi
import java.io.IOException;
import java.io.InputStream;
+import java.util.Map;
import org.apache.stanbol.commons.stanboltools.datafileprovider.DataFileProvider;
@@ -26,7 +27,7 @@ public class ClasspathDataFileProvider i
@Override
public InputStream getInputStream(String bundleSymbolicName,
- String filename, String downloadExplanation)
+ String filename, Map<String, String> comments)
throws IOException {
// load default OpenNLP models from classpath (embedded in the defaultdata bundle)
final String resourcePath = "org/apache/stanbol/defaultdata/opennlp/" + filename;
Modified: incubator/stanbol/trunk/enhancer/engines/opennlp-ner/src/main/java/org/apache/stanbol/enhancer/engines/opennlp/impl/EngineCore.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/enhancer/engines/opennlp-ner/src/main/java/org/apache/stanbol/enhancer/engines/opennlp/impl/EngineCore.java?rev=1089506&r1=1089505&r2=1089506&view=diff
==============================================================================
--- incubator/stanbol/trunk/enhancer/engines/opennlp-ner/src/main/java/org/apache/stanbol/enhancer/engines/opennlp/impl/EngineCore.java (original)
+++ incubator/stanbol/trunk/enhancer/engines/opennlp-ner/src/main/java/org/apache/stanbol/enhancer/engines/opennlp/impl/EngineCore.java Wed Apr 6 15:51:55 2011
@@ -73,8 +73,12 @@ public class EngineCore implements Enhan
protected final TokenNameFinderModel organizationNameModel;
protected Map<String,Object[]> entityTypes = new HashMap<String,Object[]>();
- /** Explain where to get more models */
- public static final String MODEL_DOWNLOAD_EXPLANATION = "Ask on the Apache Stanbol mailing list";
+ /** Comments about our models */
+ public static final Map<String, String> DATA_FILE_COMMENTS;
+ static {
+ DATA_FILE_COMMENTS = new HashMap<String, String>();
+ DATA_FILE_COMMENTS.put("Default data files", "provided by the org.apache.stanbol.defaultdata bundle");
+ }
EngineCore(DataFileProvider dfp, String bundleSymbolicName) throws InvalidFormatException, IOException {
dataFileProvider = dfp;
@@ -86,7 +90,7 @@ public class EngineCore implements Enhan
}
protected InputStream lookupModelStream(String modelRelativePath) throws IOException {
- return dataFileProvider.getInputStream(bundleSymbolicName, modelRelativePath, MODEL_DOWNLOAD_EXPLANATION);
+ return dataFileProvider.getInputStream(bundleSymbolicName, modelRelativePath, DATA_FILE_COMMENTS);
}
protected TokenNameFinderModel buildNameModel(String name, UriRef typeUri) throws IOException {