Author: rwesten
Date: Thu Feb 27 14:13:36 2014
New Revision: 1572586
URL: http://svn.apache.org/r1572586
Log:
STANBOL-1280: small fix for extracting EnhancementProperties for Engine and
improved logging
Modified:
stanbol/branches/release-0.12/enhancer/generic/servicesapi/src/main/java/org/apache/stanbol/enhancer/servicesapi/helper/EnhancementEngineHelper.java
Modified:
stanbol/branches/release-0.12/enhancer/generic/servicesapi/src/main/java/org/apache/stanbol/enhancer/servicesapi/helper/EnhancementEngineHelper.java
URL:
http://svn.apache.org/viewvc/stanbol/branches/release-0.12/enhancer/generic/servicesapi/src/main/java/org/apache/stanbol/enhancer/servicesapi/helper/EnhancementEngineHelper.java?rev=1572586&r1=1572585&r2=1572586&view=diff
==============================================================================
---
stanbol/branches/release-0.12/enhancer/generic/servicesapi/src/main/java/org/apache/stanbol/enhancer/servicesapi/helper/EnhancementEngineHelper.java
(original)
+++
stanbol/branches/release-0.12/enhancer/generic/servicesapi/src/main/java/org/apache/stanbol/enhancer/servicesapi/helper/EnhancementEngineHelper.java
Thu Feb 27 14:13:36 2014
@@ -26,11 +26,13 @@ import java.util.Collections;
import java.util.Comparator;
import java.util.Date;
import java.util.HashMap;
+import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Random;
+import java.util.Set;
import java.util.UUID;
import org.apache.clerezza.rdf.core.Language;
@@ -802,16 +804,26 @@ public class EnhancementEngineHelper {
Map<String,Object> properties = new HashMap<String,Object>();
log.debug("Retrieve EnhancementProperties for Engine {} and
ContentItem {}",
engine.getName(), ci.getUri());
+ Set<String> engineKeys = new HashSet<String>();
for(Entry<String,Object> entry : epContentPart.entrySet()){
String key = entry.getKey();
int sepIndex = key.indexOf(':');
if(sepIndex < 0){
- log.debug(" - include chain property '{}'",key);
- properties.put(key, entry.getValue());
+ if(!engineKeys.contains(key)){
+ log.debug(" - include chain property '{}'",key);
+ properties.put(key, entry.getValue());
+ } else {
+ log.debug(" - exclude chain property '{}' because property
is "
+ + "present in engine level.", key);
+ }
} else if(key.startsWith(prefix) && key.length() >
prefix.length()){
key = key.substring(prefix.length(),key.length());
log.debug(" - include engine property '{}'",key);
- properties.put(key, entry.getValue());
+ engineKeys.add(key);
+ Object value = properties.put(key, entry.getValue());
+ if(value != null && log.isDebugEnabled()){
+ log.debug(" ... overrides Chain level value: {}",value);
+ }
} else {
log.debug(" - exclude engine property '{}'",key);
}