Author: rwesten
Date: Thu Oct 30 07:27:55 2014
New Revision: 1635413

URL: http://svn.apache.org/r1635413
Log:
Implementation of STANBOL-1399 (FieldMapping.java changes) and STANBOL-1400 
(ValueConverterFactory changes)

Modified:
    
stanbol/branches/release-0.12/entityhub/generic/core/src/main/java/org/apache/stanbol/entityhub/core/mapping/ValueConverterFactory.java
    
stanbol/branches/release-0.12/entityhub/generic/servicesapi/src/main/java/org/apache/stanbol/entityhub/servicesapi/mapping/FieldMapping.java

Modified: 
stanbol/branches/release-0.12/entityhub/generic/core/src/main/java/org/apache/stanbol/entityhub/core/mapping/ValueConverterFactory.java
URL: 
http://svn.apache.org/viewvc/stanbol/branches/release-0.12/entityhub/generic/core/src/main/java/org/apache/stanbol/entityhub/core/mapping/ValueConverterFactory.java?rev=1635413&r1=1635412&r2=1635413&view=diff
==============================================================================
--- 
stanbol/branches/release-0.12/entityhub/generic/core/src/main/java/org/apache/stanbol/entityhub/core/mapping/ValueConverterFactory.java
 (original)
+++ 
stanbol/branches/release-0.12/entityhub/generic/core/src/main/java/org/apache/stanbol/entityhub/core/mapping/ValueConverterFactory.java
 Thu Oct 30 07:27:55 2014
@@ -466,6 +466,12 @@ public class ValueConverterFactory {
             super(DataTypeEnum.Time);
         }
     }
+    /**
+     * Converts String values to {@link Text} (without an language tag. Does
+     * NOT convert any other values such as {@link Number}s or {@link 
Reference}s
+     * @author Rupert Westenthaler
+     *
+     */
     public static class TextConverter implements ValueConverter<Text> {
         @Override
         public Text convert(Object value, ValueFactory valueFactory) {
@@ -474,13 +480,21 @@ public class ValueConverterFactory {
             }
             if(value instanceof Text){
                 return (Text)value;
-            } else {
+            } else if(value instanceof String){
                 return valueFactory.createText(value);
+            } else { //do not convert other values
+                return null;
             }
         }
         @Override
         public String getDataType() { return DataTypeEnum.Text.getUri(); }
     }
+    /**
+     * Converts any value to {@link String} by using the {@link #toString()}
+     * method of the parsed value
+     * @author Rupert Westenthaler
+     *
+     */
     public static class StringConverter implements ValueConverter<String> {
         @Override
         public String convert(Object value, ValueFactory valueFactory) { 
return value.toString(); }

Modified: 
stanbol/branches/release-0.12/entityhub/generic/servicesapi/src/main/java/org/apache/stanbol/entityhub/servicesapi/mapping/FieldMapping.java
URL: 
http://svn.apache.org/viewvc/stanbol/branches/release-0.12/entityhub/generic/servicesapi/src/main/java/org/apache/stanbol/entityhub/servicesapi/mapping/FieldMapping.java?rev=1635413&r1=1635412&r2=1635413&view=diff
==============================================================================
--- 
stanbol/branches/release-0.12/entityhub/generic/servicesapi/src/main/java/org/apache/stanbol/entityhub/servicesapi/mapping/FieldMapping.java
 (original)
+++ 
stanbol/branches/release-0.12/entityhub/generic/servicesapi/src/main/java/org/apache/stanbol/entityhub/servicesapi/mapping/FieldMapping.java
 Thu Oct 30 07:27:55 2014
@@ -146,8 +146,11 @@ public class FieldMapping {
         this.filter = filter;
         if(this.global){
             mappedTo = new String[]{}; //set to empty -> if global than map 
nothing
-        } else if(this.usesWildcard){
-            mappedTo = new String[]{null}; //wildcard always maps the selected 
field 1:1
+        //NOTE: FieldMappings do now allow to map a Wildcard to an other field
+        //      This is e.g. usefull for collecting all Literal values in a 
field
+        //      holding the disambiguation context.
+//        } else if(this.usesWildcard){
+//            mappedTo = new String[]{null}; //wildcard always maps the 
selected field 1:1
         } else if(mappedTo == null || mappedTo.length<1){
                 mappedTo = new String[]{null}; //if no mapping parse map the 
field 1:1
         } //else used the parsed one


Reply via email to