Author: rwesten
Date: Tue Nov 11 08:44:47 2014
New Revision: 1638048

URL: http://svn.apache.org/r1638048
Log:
merged implementation of STANBOL-1402 to trunk

Added:
    
stanbol/trunk/enhancement-engines/lucenefstlinking/src/main/java/org/apache/stanbol/enhancer/engines/lucenefstlinking/LinkingModeEnum.java
      - copied unchanged from r1638045, 
stanbol/branches/release-0.12/enhancement-engines/lucenefstlinking/src/main/java/org/apache/stanbol/enhancer/engines/lucenefstlinking/LinkingModeEnum.java
Modified:
    
stanbol/trunk/enhancement-engines/lucenefstlinking/src/main/java/org/apache/stanbol/enhancer/engines/lucenefstlinking/ChainedTagClusterReducer.java
    
stanbol/trunk/enhancement-engines/lucenefstlinking/src/main/java/org/apache/stanbol/enhancer/engines/lucenefstlinking/FstLinkingEngine.java
    
stanbol/trunk/enhancement-engines/lucenefstlinking/src/main/java/org/apache/stanbol/enhancer/engines/lucenefstlinking/FstLinkingEngineComponent.java
    
stanbol/trunk/enhancement-engines/lucenefstlinking/src/main/resources/OSGI-INF/metatype/metatype.properties
    
stanbol/trunk/enhancement-engines/lucenefstlinking/src/test/java/org/apache/stanbol/enhancer/engines/lucenefstlinking/FstLinkingEngineTest.java

Modified: 
stanbol/trunk/enhancement-engines/lucenefstlinking/src/main/java/org/apache/stanbol/enhancer/engines/lucenefstlinking/ChainedTagClusterReducer.java
URL: 
http://svn.apache.org/viewvc/stanbol/trunk/enhancement-engines/lucenefstlinking/src/main/java/org/apache/stanbol/enhancer/engines/lucenefstlinking/ChainedTagClusterReducer.java?rev=1638048&r1=1638047&r2=1638048&view=diff
==============================================================================
--- 
stanbol/trunk/enhancement-engines/lucenefstlinking/src/main/java/org/apache/stanbol/enhancer/engines/lucenefstlinking/ChainedTagClusterReducer.java
 (original)
+++ 
stanbol/trunk/enhancement-engines/lucenefstlinking/src/main/java/org/apache/stanbol/enhancer/engines/lucenefstlinking/ChainedTagClusterReducer.java
 Tue Nov 11 08:44:47 2014
@@ -16,6 +16,8 @@
 */
 package org.apache.stanbol.enhancer.engines.lucenefstlinking;
 
+import java.util.Arrays;
+
 import org.apache.commons.lang.ArrayUtils;
 import org.opensextant.solrtexttagger.TagClusterReducer;
 import org.opensextant.solrtexttagger.TagLL;
@@ -50,4 +52,8 @@ public class ChainedTagClusterReducer im
 
     }
 
+    @Override
+    public String toString() {
+        return new 
StringBuilder(getClass().getSimpleName()).append(Arrays.toString(reducers)).toString();
+    }
 }

Modified: 
stanbol/trunk/enhancement-engines/lucenefstlinking/src/main/java/org/apache/stanbol/enhancer/engines/lucenefstlinking/FstLinkingEngine.java
URL: 
http://svn.apache.org/viewvc/stanbol/trunk/enhancement-engines/lucenefstlinking/src/main/java/org/apache/stanbol/enhancer/engines/lucenefstlinking/FstLinkingEngine.java?rev=1638048&r1=1638047&r2=1638048&view=diff
==============================================================================
--- 
stanbol/trunk/enhancement-engines/lucenefstlinking/src/main/java/org/apache/stanbol/enhancer/engines/lucenefstlinking/FstLinkingEngine.java
 (original)
+++ 
stanbol/trunk/enhancement-engines/lucenefstlinking/src/main/java/org/apache/stanbol/enhancer/engines/lucenefstlinking/FstLinkingEngine.java
 Tue Nov 11 08:44:47 2014
@@ -61,10 +61,14 @@ import org.apache.stanbol.enhancer.engin
 import org.apache.stanbol.enhancer.engines.entitylinking.impl.Suggestion;
 import 
org.apache.stanbol.enhancer.engines.lucenefstlinking.TaggingSession.Corpus;
 import org.apache.stanbol.enhancer.nlp.model.AnalysedText;
+import org.apache.stanbol.enhancer.nlp.model.AnalysedTextUtils;
+import org.apache.stanbol.enhancer.nlp.utils.NlpEngineHelper;
+import org.apache.stanbol.enhancer.servicesapi.Blob;
 import org.apache.stanbol.enhancer.servicesapi.ContentItem;
 import org.apache.stanbol.enhancer.servicesapi.EngineException;
 import org.apache.stanbol.enhancer.servicesapi.EnhancementEngine;
 import org.apache.stanbol.enhancer.servicesapi.ServiceProperties;
+import org.apache.stanbol.enhancer.servicesapi.helper.ContentItemHelper;
 import org.apache.stanbol.enhancer.servicesapi.helper.EnhancementEngineHelper;
 import org.apache.stanbol.enhancer.servicesapi.rdf.NamespaceEnum;
 import org.apache.stanbol.enhancer.servicesapi.rdf.Properties;
@@ -93,13 +97,15 @@ public class FstLinkingEngine implements
     
     protected final String name;
 
+    protected final LinkingModeEnum linkingMode;
+
     protected final TextProcessingConfig tpConfig;
     protected final EntityLinkerConfig elConfig;
 
     private IndexConfiguration indexConfig;
 
-
-    public FstLinkingEngine(String name, IndexConfiguration indexConfig,
+    public FstLinkingEngine(String name, LinkingModeEnum linkingMode, 
+            IndexConfiguration indexConfig,
             TextProcessingConfig tpConfig, EntityLinkerConfig elConfig) {
         if (StringUtils.isBlank(name)) {
             throw new IllegalArgumentException("The parsed name MUST NOT be 
NULL nor blank!");
@@ -108,6 +114,7 @@ public class FstLinkingEngine implements
         if (indexConfig == null) {
             throw new IllegalArgumentException("The parsed IndexConfiguration 
MUST NOT be NULL!");
         }
+        this.linkingMode = linkingMode == null ? LinkingModeEnum.values()[0] : 
linkingMode;
         this.indexConfig = indexConfig;
         if (tpConfig == null) {
             throw new IllegalArgumentException("The parsed Text Processing 
configuration MUST NOT be NULL");
@@ -149,18 +156,53 @@ public class FstLinkingEngine implements
         // we need a detected language, the AnalyzedText contentPart with
         // Tokens.
         AnalysedText at = getAnalysedText(this, ci, false);
-        return at != null && at.getTokens().hasNext() ? ENHANCE_ASYNC : 
CANNOT_ENHANCE;
+        if(at == null && linkingMode == LinkingModeEnum.PLAIN){
+            return NlpEngineHelper.getPlainText(this, ci, false) != null ? 
ENHANCE_ASYNC : CANNOT_ENHANCE;
+        } else {
+            if(linkingMode == LinkingModeEnum.PLAIN){
+                return ENHANCE_ASYNC;
+            } else if(at.getTokens().hasNext()){
+                return ENHANCE_ASYNC;
+            } else {
+                log.warn("Unable to process {} with engine name={} and mode={} 
"
+                    + "as the AnalyzedText does not contain any Tokens!", 
+                    new Object[]{ci,name,linkingMode});
+                return at.getTokens().hasNext() ? ENHANCE_ASYNC : 
CANNOT_ENHANCE;
+            }
+        }
     }
 
     @Override
     public void computeEnhancements(ContentItem ci) throws EngineException {
-        AnalysedText at = getAnalysedText(this, ci, true);
+        AnalysedText at;
+        if(linkingMode != LinkingModeEnum.PLAIN){
+            //require AnalysedText contentPart
+            at = getAnalysedText(this, ci, true);
+        } else { //AnalysedText is optional in LinkingModeEnum.BASIC
+            try {
+                at = AnalysedTextUtils.getAnalysedText(ci);
+            } catch (ClassCastException e) {
+                //unexpected contentPart found under the URI expecting the 
AnalysedText
+                at = null;
+            }
+        }
+        final String content;
+        if(at != null){ //we can get the content from the Analyzed text
+            content = at.getSpan();
+        } else { //no analyzed text ... read is from the text/plain blob
+            try {
+                content = ContentItemHelper.getText(
+                    NlpEngineHelper.getPlainText(this, ci, true).getValue());
+            } catch (IOException e) {
+                throw new EngineException(this, ci, "Unable to access 
plain/text content!", e);
+            }
+        }
         log.debug("  > AnalysedText {}", at);
         String language = getLanguage(this, ci, true);
         log.debug("  > Language {}", language);
         if (log.isDebugEnabled()) {
             log.debug("computeEnhancements for ContentItem {} language {} 
text={}", new Object[] {
-                    ci.getUri().getUnicodeString(), language, 
StringUtils.abbreviate(at.getSpan(), 100)});
+                    ci.getUri().getUnicodeString(), language, 
StringUtils.abbreviate(content, 100)});
         }
         // TODO: we need to do the same for the the default matching language
         TaggingSession session;
@@ -177,7 +219,7 @@ public class FstLinkingEngine implements
             if(session.getLanguageCorpus() != null){
                 corpus = session.getLanguageCorpus();
                 long t = System.currentTimeMillis();
-                int d = tag(at, session,corpus,tags);
+                int d = tag(content, at, session,corpus,tags);
                 log.info(" - {}: fst: {}ms (callback: {}ms)", new Object[]{
                         corpus.getIndexedField(), 
System.currentTimeMillis()-t, d
                 });
@@ -187,7 +229,7 @@ public class FstLinkingEngine implements
                     corpus = session.getDefaultCorpus();
                 }
                 long t = System.currentTimeMillis();
-                int d = tag(at, session, session.getDefaultCorpus(),tags);
+                int d = tag(content, at, session, 
session.getDefaultCorpus(),tags);
                 log.info(" - {}: fst: {}ms (callback: {}ms)",new Object[]{
                         session.getDefaultCorpus().getIndexedField(), 
                         System.currentTimeMillis()-t, d});
@@ -201,7 +243,7 @@ public class FstLinkingEngine implements
                     log.info(" - sum fst: {} ms", taggingEnd - taggingStart);
                 }
             }
-            int matches = match(at,tags.values());
+            int matches = match(content,tags.values());
             log.debug(" - loaded {} ({} loaded, {} cached, {} appended) 
Matches in {} ms", 
                     new Object[]{matches, session.getSessionDocLoaded(),
                         session.getSessionDocCached(), 
session.getSessionDocAppended(),
@@ -223,7 +265,7 @@ public class FstLinkingEngine implements
         }
         ci.getLock().writeLock().lock();
         try {
-            writeEnhancements(ci,at.getSpan(),tags.values(),language, 
+            writeEnhancements(ci,content,tags.values(),language, 
                 elConfig.isWriteEntityRankings());
         } finally {
             ci.getLock().writeLock().unlock();
@@ -231,10 +273,9 @@ public class FstLinkingEngine implements
         tags.clear(); //help the GC
     }
 
-    private int match(AnalysedText at, Collection<Tag> tags) {
+    private int match(String text, Collection<Tag> tags) {
         log.trace("  ... process matches for {} extracted Tags:",tags.size());
         int matchCount = 0;
-        String text = at.getSpan();
         Iterator<Tag> tagIt = tags.iterator();
         while(tagIt.hasNext()){
             Tag tag = tagIt.next();
@@ -370,35 +411,54 @@ public class FstLinkingEngine implements
     /**
      * Uses the {@link Corpus} to tag the the {@link AnalysedText} and adds 
      * tagging results to the parsed tag map.
-     * @param at the AnalyzedText
+     * @param content the content to link
+     * @param at the AnalyzedText. not required if {@link 
LinkingModeEnum#PLAIN}
      * @param session the tagging session of the text
      * @param corpus the corpus o the session to tag the content with
      * @param tags the Tags map used to store the tagging results
      * @return the time in milliseconds spent in the tag callback.
      * @throws IOException on any error while accessing the {@link SolrCore}
      */
-    private int tag(final AnalysedText at, final TaggingSession session, 
-            final Corpus corpus, final Map<int[],Tag> tags) throws IOException 
{
+    private int tag(final String content, final AnalysedText at, final 
TaggingSession session, 
+            final Corpus corpus, final Map<int[],Tag> tags) throws IOException{
         final OpenBitSet matchDocIdsBS = new 
OpenBitSet(session.getSearcher().maxDoc());
         TokenStream baseTokenStream = 
corpus.getTaggingAnalyzer().tokenStream("", 
-            new CharSequenceReader(at.getText()));
-        LinkableTokenFilter linkableTokenFilter = new 
LinkableTokenFilter(baseTokenStream, 
-            at, session.getLanguage(), 
tpConfig.getConfiguration(session.getLanguage()),
-            elConfig.getMinChunkMatchScore(), elConfig.getMinFoundTokens());
+            new CharSequenceReader(content));
+        final TokenStream tokenStream;
+        final TagClusterReducer reducer;
+        log.debug(" ... set up TokenStream and TagClusterReducer for linking 
mode {}", linkingMode);
+        switch (linkingMode) {
+            case PLAIN: //will link all tokens and search longest dominant 
right
+                tokenStream = baseTokenStream;
+                reducer = TagClusterReducer.LONGEST_DOMINANT_RIGHT;
+                break;
+//            case NER:
+            case LINKABLE_TOKEN:
+                LinkableTokenFilter linkableTokenFilter = new 
LinkableTokenFilter(baseTokenStream, 
+                    at, session.getLanguage(), 
tpConfig.getConfiguration(session.getLanguage()),
+                    elConfig.getMinChunkMatchScore(), 
elConfig.getMinFoundTokens());
+                reducer = new ChainedTagClusterReducer(
+                    linkableTokenFilter,TagClusterReducer.ALL);
+                tokenStream = linkableTokenFilter;
+                break;
+            default:
+                throw new IllegalStateException("Unrecognized LinkingMode '"
+                    + linkingMode + "! Please adapt implementation to changed 
Enumeration!");
+        }
+        log.debug(" - tokenStream: {}", tokenStream);
+        log.debug(" - reducer: {}", reducer);
         //we use two TagClusterReducer implementations.
         // (1) the linkableTokenFilter filters all tags that do not overlap any
         //     linkable Token
         // (2) the LONGEST_DOMINANT_RIGHT reducer (TODO: make configurable)
-        TagClusterReducer reducer = new ChainedTagClusterReducer(
-            linkableTokenFilter,TagClusterReducer.ALL);
         final long[] time = new long[]{0};
-        new Tagger(corpus.getFst(), linkableTokenFilter, 
reducer,session.isSkipAltTokens()) {
+        new Tagger(corpus.getFst(), tokenStream, 
reducer,session.isSkipAltTokens()) {
             
             @Override
             protected void tagCallback(int startOffset, int endOffset, long 
docIdsKey) {
                 long start = System.nanoTime();
                 if(log.isTraceEnabled()){
-                    log.trace(" > tagCallback for {}", 
at.getText().subSequence(startOffset, endOffset));
+                    log.trace(" > tagCallback for {}", 
content.subSequence(startOffset, endOffset));
                 }
                 int[] span = new int[]{startOffset,endOffset};
                 Tag tag = tags.get(span);

Modified: 
stanbol/trunk/enhancement-engines/lucenefstlinking/src/main/java/org/apache/stanbol/enhancer/engines/lucenefstlinking/FstLinkingEngineComponent.java
URL: 
http://svn.apache.org/viewvc/stanbol/trunk/enhancement-engines/lucenefstlinking/src/main/java/org/apache/stanbol/enhancer/engines/lucenefstlinking/FstLinkingEngineComponent.java?rev=1638048&r1=1638047&r2=1638048&view=diff
==============================================================================
--- 
stanbol/trunk/enhancement-engines/lucenefstlinking/src/main/java/org/apache/stanbol/enhancer/engines/lucenefstlinking/FstLinkingEngineComponent.java
 (original)
+++ 
stanbol/trunk/enhancement-engines/lucenefstlinking/src/main/java/org/apache/stanbol/enhancer/engines/lucenefstlinking/FstLinkingEngineComponent.java
 Tue Nov 11 08:44:47 2014
@@ -37,11 +37,8 @@ import java.net.URI;
 import java.net.URISyntaxException;
 import java.util.Arrays;
 import java.util.Dictionary;
-import java.util.HashMap;
 import java.util.HashSet;
 import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.Map;
 import java.util.Set;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
@@ -52,7 +49,6 @@ import org.apache.clerezza.rdf.core.UriR
 import org.apache.clerezza.rdf.core.impl.PlainLiteralImpl;
 import org.apache.commons.io.FileUtils;
 import org.apache.commons.io.FilenameUtils;
-import org.apache.commons.io.filefilter.WildcardFileFilter;
 import org.apache.commons.lang.StringUtils;
 import org.apache.commons.lang.text.StrLookup;
 import org.apache.commons.lang.text.StrSubstitutor;
@@ -64,17 +60,9 @@ import org.apache.felix.scr.annotations.
 import org.apache.felix.scr.annotations.PropertyOption;
 import org.apache.felix.scr.annotations.Reference;
 import org.apache.felix.scr.annotations.ReferenceCardinality;
-import org.apache.lucene.document.Document;
-import org.apache.lucene.index.AtomicReader;
-import org.apache.lucene.index.FieldInfo;
-import org.apache.lucene.index.FieldInfos;
 import org.apache.solr.client.solrj.SolrServer;
 import org.apache.solr.client.solrj.embedded.EmbeddedSolrServer;
 import org.apache.solr.core.SolrCore;
-import org.apache.solr.schema.FieldType;
-import org.apache.solr.schema.IndexSchema;
-import org.apache.solr.search.SolrIndexSearcher;
-import org.apache.solr.util.RefCounted;
 import org.apache.stanbol.commons.namespaceprefix.NamespacePrefixService;
 import org.apache.stanbol.commons.solr.IndexReference;
 import org.apache.stanbol.commons.solr.RegisteredSolrServerTracker;
@@ -109,8 +97,7 @@ import com.google.common.util.concurrent
     policy = ConfigurationPolicy.REQUIRE, // the baseUri is required!
     specVersion = "1.1", 
     metatype = true, 
-    immediate = true,
-    inherit = true)
+    immediate = true)
 @org.apache.felix.scr.annotations.Properties(value={
     @Property(name=PROPERTY_NAME), //the name of the engine
     @Property(name=FstLinkingEngineComponent.SOLR_CORE),
@@ -163,6 +150,17 @@ import com.google.common.util.concurrent
         intValue=FstLinkingEngineComponent.DEFAULT_ENTITY_CACHE_SIZE),
     @Property(name=SUGGESTIONS, intValue=DEFAULT_SUGGESTIONS),
     @Property(name=INCLUDE_SIMILAR_SCORE, 
boolValue=DEFAULT_INCLUDE_SIMILAR_SCORE),
+    @Property(name=FstLinkingEngineComponent.LINKING_MODE,  options={
+            @PropertyOption(
+                
value='%'+FstLinkingEngineComponent.LINKING_MODE+".option.plain",
+                name="PLAIN"),
+            @PropertyOption(
+                
value='%'+FstLinkingEngineComponent.LINKING_MODE+".option.linkableToken",
+                name="LINKABLE_TOKEN") //,
+            //@PropertyOption(
+            //    
value='%'+FstLinkingEngineComponent.LINKING_MODE+".option.ner",
+            //    name="NER")
+        },value="LINKABLE_TOKEN"),
     
@Property(name=CASE_SENSITIVE,boolValue=DEFAULT_CASE_SENSITIVE_MATCHING_STATE),
     @Property(name=PROCESS_ONLY_PROPER_NOUNS_STATE, 
boolValue=DEFAULT_PROCESS_ONLY_PROPER_NOUNS_STATE),
     @Property(name=PROCESSED_LANGUAGES, cardinality=Integer.MAX_VALUE,
@@ -202,6 +200,10 @@ public class FstLinkingEngineComponent {
      * a {@link Literal} is parsed.
      */
     public static final String ORIGIN = 
"enhancer.engines.linking.lucenefst.origin";
+    /**
+     * Property used to configure the {@link LinkingModeEnum}.
+     */
+    public static final String LINKING_MODE = 
"enhancer.engines.linking.lucenefst.mode";
     
     /**
      * The size of the thread pool used to create FST models (default=1). 
Creating
@@ -268,6 +270,10 @@ public class FstLinkingEngineComponent {
      */
     private String fstFolder;
     /**
+     * The {@link LinkingModeEnum linking mode}
+     */
+    private LinkingModeEnum linkingMode;
+    /**
      * Holds the {@link TextProcessingConfig} parsed from the configuration of
      * this engine. <p>
      * NOTE: that by far not all configurations are supported. See 
documentation
@@ -370,11 +376,27 @@ public class FstLinkingEngineComponent {
         } else {
             this.engineName = value.toString();
         }
+        log.info(" - engine name: {}", engineName);
         engineMetadata = new Hashtable<String,Object>();
         engineMetadata.put(PROPERTY_NAME, this.engineName);
         value = properties.get(Constants.SERVICE_RANKING);
         engineMetadata.put(Constants.SERVICE_RANKING, value == null ? 
Integer.valueOf(0) : value);
-
+        //(0) parse the linking mode
+        value = properties.get(LINKING_MODE);
+        if(value == null || StringUtils.isBlank(value.toString())){
+            this.linkingMode = LinkingModeEnum.LINKABLE_TOKEN;
+        } else {
+            try {
+                this.linkingMode = LinkingModeEnum.valueOf(value.toString());
+            } catch(IllegalArgumentException e){
+                throw new ConfigurationException(LINKING_MODE, "The parsed 
value '"
+                    +value+"' (type: "+value.getClass().getName()+") is not a 
member "
+                    + "of the enum (members: "+ 
Arrays.toString(LinkingModeEnum.values())
+                    + ")!",e);
+            }
+        }
+        log.info(" - linking mode: {}",linkingMode);
+        
         //(1) parse the TextProcessing configuration
         //TODO: decide if we should use the TextProcessingConfig for this 
engine
         textProcessingConfig = TextProcessingConfig.createInstance(properties);
@@ -692,7 +714,8 @@ public class FstLinkingEngineComponent {
             }
             //set the index configuration to the field;
             this.indexConfig = indexConfig;
-            FstLinkingEngine engine = new FstLinkingEngine(engineName, 
indexConfig,
+            FstLinkingEngine engine = new FstLinkingEngine(engineName, 
+                linkingMode, indexConfig,
                 textProcessingConfig, entityLinkerConfig);
             String[] services = new String [] {
                     EnhancementEngine.class.getName(),

Modified: 
stanbol/trunk/enhancement-engines/lucenefstlinking/src/main/resources/OSGI-INF/metatype/metatype.properties
URL: 
http://svn.apache.org/viewvc/stanbol/trunk/enhancement-engines/lucenefstlinking/src/main/resources/OSGI-INF/metatype/metatype.properties?rev=1638048&r1=1638047&r2=1638048&view=diff
==============================================================================
--- 
stanbol/trunk/enhancement-engines/lucenefstlinking/src/main/resources/OSGI-INF/metatype/metatype.properties
 (original)
+++ 
stanbol/trunk/enhancement-engines/lucenefstlinking/src/main/resources/OSGI-INF/metatype/metatype.properties
 Tue Nov 11 08:44:47 2014
@@ -155,3 +155,13 @@ based on the types of Entities. Use '!{u
 listing. Include '*' to force white listing (e.g. to allow Entities without 
any type). \
 Rules are processed based on their oder. 
 
+enhancer.engines.linking.lucenefst.mode.name=Linking Mode
+enhancer.engines.linking.lucenefst.mode.description=The linking mode allows to 
switch the \
+operation mode of the FST linking engine: PLAIN will link every single word 
with the \
+vocabulary. No NLP processing is required in this mode; LINKABLE_TOKEN will 
use NLP \
+processing results to determine what tokens should be linked (typically all 
Nouns or \
+only ProperNouns - configurable via the TextProcessing configuration); 
+#finally the NER mode will only link Named Entities detected by a NER 
component.
+enhancer.engines.linking.lucenefst.mode.option.plain=Plain
+enhancer.engines.linking.lucenefst.mode.option.linkableToken=Linkable Tokens
+#enhancer.engines.linking.lucenefst.mode.option.ner=NER (not yet implemented)

Modified: 
stanbol/trunk/enhancement-engines/lucenefstlinking/src/test/java/org/apache/stanbol/enhancer/engines/lucenefstlinking/FstLinkingEngineTest.java
URL: 
http://svn.apache.org/viewvc/stanbol/trunk/enhancement-engines/lucenefstlinking/src/test/java/org/apache/stanbol/enhancer/engines/lucenefstlinking/FstLinkingEngineTest.java?rev=1638048&r1=1638047&r2=1638048&view=diff
==============================================================================
--- 
stanbol/trunk/enhancement-engines/lucenefstlinking/src/test/java/org/apache/stanbol/enhancer/engines/lucenefstlinking/FstLinkingEngineTest.java
 (original)
+++ 
stanbol/trunk/enhancement-engines/lucenefstlinking/src/test/java/org/apache/stanbol/enhancer/engines/lucenefstlinking/FstLinkingEngineTest.java
 Tue Nov 11 08:44:47 2014
@@ -301,7 +301,7 @@ public class FstLinkingEngineTest {
         elc.setMinFoundTokens(2);//this is assumed by this test
         elc.setRedirectProcessingMode(RedirectProcessingMode.FOLLOW);
         FstLinkingEngine engine = new FstLinkingEngine("proper-noun-linking", 
-            fstConfig, tpc, elc);
+            LinkingModeEnum.LINKABLE_TOKEN, fstConfig, tpc, elc);
         processConentItem(engine);
         validateEnhancements(
             Arrays.asList(
@@ -322,7 +322,7 @@ public class FstLinkingEngineTest {
         elc.setMinFoundTokens(2);//this is assumed by this test
         elc.setRedirectProcessingMode(RedirectProcessingMode.FOLLOW);
         FstLinkingEngine engine = new FstLinkingEngine("proper-noun-linking", 
-            fstConfig, tpc, elc);
+            LinkingModeEnum.LINKABLE_TOKEN, fstConfig, tpc, elc);
         processConentItem(engine);
         validateEnhancements(
             Arrays.asList(


Reply via email to