Author: rwesten
Date: Thu Jan 16 06:17:43 2014
New Revision: 1558701

URL: http://svn.apache.org/r1558701
Log:
fix for STANBOL-1257 for the 0.12 branch; This also comes with improvements to 
DEBUG and TRACE level logging

Modified:
    
stanbol/branches/release-0.12/enhancement-engines/dereference/entityhub/src/main/java/org/apache/stanbol/enhancer/engines/dereference/entityhub/TrackingDereferencerBase.java

Modified: 
stanbol/branches/release-0.12/enhancement-engines/dereference/entityhub/src/main/java/org/apache/stanbol/enhancer/engines/dereference/entityhub/TrackingDereferencerBase.java
URL: 
http://svn.apache.org/viewvc/stanbol/branches/release-0.12/enhancement-engines/dereference/entityhub/src/main/java/org/apache/stanbol/enhancer/engines/dereference/entityhub/TrackingDereferencerBase.java?rev=1558701&r1=1558700&r2=1558701&view=diff
==============================================================================
--- 
stanbol/branches/release-0.12/enhancement-engines/dereference/entityhub/src/main/java/org/apache/stanbol/enhancer/engines/dereference/entityhub/TrackingDereferencerBase.java
 (original)
+++ 
stanbol/branches/release-0.12/enhancement-engines/dereference/entityhub/src/main/java/org/apache/stanbol/enhancer/engines/dereference/entityhub/TrackingDereferencerBase.java
 Thu Jan 16 06:17:43 2014
@@ -19,6 +19,7 @@ package org.apache.stanbol.enhancer.engi
 import java.io.StringReader;
 import java.net.URI;
 import java.net.URISyntaxException;
+import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Collections;
 import java.util.HashSet;
@@ -57,6 +58,7 @@ import org.apache.stanbol.entityhub.serv
 import org.apache.stanbol.entityhub.servicesapi.query.FieldQuery;
 import org.apache.stanbol.entityhub.servicesapi.query.QueryResultList;
 import org.apache.stanbol.entityhub.servicesapi.query.TextConstraint;
+import org.apache.stanbol.entityhub.servicesapi.util.ModelUtils;
 import org.osgi.framework.BundleContext;
 import org.osgi.framework.Filter;
 import org.osgi.framework.InvalidSyntaxException;
@@ -158,17 +160,28 @@ public abstract class TrackingDereferenc
      */
     public void setDereferencedFields(List<String> dereferencedFields) {
         if(dereferencedFields != null && !dereferencedFields.isEmpty()){
-            fieldMapper = new 
DefaultFieldMapperImpl(ValueConverterFactory.getDefaultInstance());
-            log.debug(" > Initialise configured field mappings");
+            List<FieldMapping> mappings = new 
ArrayList<FieldMapping>(dereferencedFields.size());
+            log.debug(" > parse configured field mappings");
             for(String configuredMapping : dereferencedFields){
+               log.trace(" - parse configure mapping '{}'",configuredMapping);
                 FieldMapping mapping = 
FieldMappingUtils.parseFieldMapping(configuredMapping,nsPrefixService);
                 if(mapping != null){
                     log.debug("   - add FieldMapping {}",mapping);
-                    fieldMapper.addMapping(mapping);
+                    mappings.add(mapping);
                 } else if(configuredMapping != null && 
!configuredMapping.isEmpty()){
                     log.warn("   - unable to parse FieldMapping '{}'", 
configuredMapping);
                 }
             }
+            if(!mappings.isEmpty()){
+                log.debug(" > apply {} valid mappings",mappings.size());
+                fieldMapper = new 
DefaultFieldMapperImpl(ValueConverterFactory.getDefaultInstance());
+                for(FieldMapping mapping : mappings){
+                       fieldMapper.addMapping(mapping);
+                }
+            } else { //no valid mapping parsed
+               log.debug(" > no valid mapping parsed ... will dereference all 
fields");
+               fieldMapper = null;
+            }
         } else {
             fieldMapper = null;
         }
@@ -332,6 +345,10 @@ public abstract class TrackingDereferenc
                 }
             }
         }
+               if(log.isTraceEnabled()){
+               log.trace("dereferenced via LDPath {}", 
ModelUtils.getRepresentationInfo(result));
+       }
+
         if(!ldPathResults.isEmpty()){ //copy the results
             writeLock.lock();
             try {
@@ -388,6 +405,9 @@ public abstract class TrackingDereferenc
         try {
             RdfRepresentation clerezzaRep = 
valueFactory.createRdfRepresentation(uri, graph);
             fieldMapper.applyMappings(rep, clerezzaRep, valueFactory);
+               if(log.isTraceEnabled()){
+                       log.trace("dereferenced via Mappings {}", 
ModelUtils.getRepresentationInfo(clerezzaRep));
+               }
         } finally {
             writeLock.unlock();
         }
@@ -403,6 +423,9 @@ public abstract class TrackingDereferenc
     private void copyAll(UriRef uri, Representation rep, MGraph graph, Lock 
writeLock) {
         writeLock.lock();
         try {
+               if(log.isTraceEnabled()){
+                       log.trace("dereferenced all of {}", 
ModelUtils.getRepresentationInfo(rep));
+               }
             if(rep instanceof RdfRepresentation){
                 graph.addAll(((RdfRepresentation)rep).getRdfGraph());
             } else {


Reply via email to