Author: rwesten
Date: Tue Dec 17 19:56:40 2013
New Revision: 1551673
URL: http://svn.apache.org/r1551673
Log:
merged fixes for STANBOL-1240, STANBOL-1241 and STANBOL-1242 from 0.12 to 1.0.0
Modified:
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
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=1551673&r1=1551672&r2=1551673&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 Dec 17 19:56:40 2013
@@ -136,11 +136,19 @@ public class FstLinkingEngine implements
public int canEnhance(ContentItem ci) throws EngineException {
log.trace("canEnhancer {}", ci.getUri());
String language = getLanguage(this, ci, false);
+ //(1) check if the language is enabled by the config
if (language == null ||
!indexConfig.getFstConfig().isLanguage(language)) {
log.debug("Engine {} ignores ContentItem {} becuase language {} is
not condigured.",
new Object[] {getName(), ci.getUri(), language});
return CANNOT_ENHANCE;
}
+ //(2) check if we have a FST model for the language
+ if(indexConfig.getCorpus(language) == null && //for the language
+ indexConfig.getDefaultCorpus() == null){ //a default
model
+ log.debug("Engine {} ignores ContentItem {} becuase no FST modles
for language {} "
+ + "are available", new Object[] {getName(),
ci.getUri(), language});
+ return CANNOT_ENHANCE;
+ }
// we need a detected language, the AnalyzedText contentPart with
// Tokens.
AnalysedText at = getAnalysedText(this, ci, false);
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=1551673&r1=1551672&r2=1551673&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 Dec 17 19:56:40 2013
@@ -493,6 +493,7 @@ public class FstLinkingEngineComponent {
@Override
public void removedService(ServiceReference reference, Object
service) {
+ log.info(" ... SolrCore for {} was removed!",
indexReference);
updateEngineRegistration(solrServerTracker.getServiceReference(), null);
super.removedService(reference, service);
}
@@ -500,6 +501,7 @@ public class FstLinkingEngineComponent {
@Override
public void modifiedService(ServiceReference reference, Object
service) {
+ log.info(" ... SolrCore for {} was updated!",
indexReference);
updateEngineRegistration(solrServerTracker.getServiceReference(), null);
super.modifiedService(reference, service);
}
@@ -511,6 +513,7 @@ public class FstLinkingEngineComponent {
log.warn("Multiple SolrServer for IndexLocation {}
available!",
indexReference);
} else {
+ log.info(" ... SolrCore for {} becomes available!",
indexReference);
updateEngineRegistration(reference, server);
}
return server;
@@ -561,7 +564,8 @@ public class FstLinkingEngineComponent {
core = null;
}
if(core == null){ //no SolrCore
- log.info(" - SolrCore not yet present");
+ log.info(" - SolrCore {} present", this.solrCore == null
?
+ "not yet" : "no longer");
return; //NOTE: unregistering is done in finally block
} //else - we do have a SolrCore
//File fstDir = new File(dataDir,"fst");
@@ -583,12 +587,11 @@ public class FstLinkingEngineComponent {
}
//create a new searcher for creating FSTs
if(!indexConfig.activate()){
- unregisterEngine(); //unregister current engine and clean
up
- log.error("Processing of the FST configuration was not
successfull "
+ log.warn("Processing of the FST configuration was not
successfull "
+ "for any language. See WARN level loggings for more
details!");
- log.error(" ... FstLinkingEnigne wiht name {} will not be
registered!"
- + "Please check the FST config of the engine
corresponds with "
- + "available fields in the configured SolrCore {}
(dir: {})",
+ log.warn(" ... FstLinkingEnigne wiht name {} will be
registered but"
+ + "be inactive as there seam to be no data for linking
available"
+ + "in the SolrCore {} (dir: {})",
new Object []{engineName, core.getName(),
core.getCoreDescriptor().getInstanceDir()});
} else { //some FST corpora initialised
@@ -623,8 +626,12 @@ public class FstLinkingEngineComponent {
defaultLanguage = ""; //FST uses an empty string for the
default
}
CorpusInfo defaultCoprous = indexConfig.getCorpus(defaultLanguage);
- log.info(" ... set '{}' as default FST Corpus: {}",
defaultCoprous.language, defaultCoprous);
- indexConfig.setDefaultCorpus(defaultCoprous);
+ if(defaultCoprous != null){
+ log.info(" ... set '{}' as default FST Corpus: {}",
defaultCoprous.language, defaultCoprous);
+ indexConfig.setDefaultCorpus(defaultCoprous);
+ } else {
+ log.info(" ... no corpus for default language {} available",
defaultCoprous);
+ }
//set the index configuration to the field;
this.indexConfig = indexConfig;
FstLinkingEngine engine = new FstLinkingEngine(engineName,
indexConfig,