You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@clerezza.apache.org by ds...@apache.org on 2011/10/12 14:15:56 UTC
svn commit: r1182329 -
/incubator/clerezza/trunk/parent/rdf.core/src/main/java/org/apache/clerezza/rdf/core/impl/SimpleLiteralFactory.java
Author: dspicar
Date: Wed Oct 12 12:15:55 2011
New Revision: 1182329
URL: http://svn.apache.org/viewvc?rev=1182329&view=rev
Log:
CLEREZZA-640: applied patch by Rupert Westenthaler that extends SimpleLiteralFactory with support for the java.lang.Float data type.
Modified:
incubator/clerezza/trunk/parent/rdf.core/src/main/java/org/apache/clerezza/rdf/core/impl/SimpleLiteralFactory.java
Modified: incubator/clerezza/trunk/parent/rdf.core/src/main/java/org/apache/clerezza/rdf/core/impl/SimpleLiteralFactory.java
URL: http://svn.apache.org/viewvc/incubator/clerezza/trunk/parent/rdf.core/src/main/java/org/apache/clerezza/rdf/core/impl/SimpleLiteralFactory.java?rev=1182329&r1=1182328&r2=1182329&view=diff
==============================================================================
--- incubator/clerezza/trunk/parent/rdf.core/src/main/java/org/apache/clerezza/rdf/core/impl/SimpleLiteralFactory.java (original)
+++ incubator/clerezza/trunk/parent/rdf.core/src/main/java/org/apache/clerezza/rdf/core/impl/SimpleLiteralFactory.java Wed Oct 12 12:15:55 2011
@@ -70,10 +70,12 @@ public class SimpleLiteralFactory extend
typeConverterMap.put(BigInteger.class, new BigIntegerConverter());
typeConverterMap.put(Long.class, new LongConverter());
typeConverterMap.put(Double.class, new DoubleConverter());
+ typeConverterMap.put(Float.class, new FloatConverter());
typeConverterMap.put(UriRef.class, new UriRefConverter());
}
final private static UriRef xsdDouble =xsd("double");
+ final private static UriRef xsdFloat =xsd("float");
final private static UriRef xsdAnyURI =xsd("anyURI");
final private static UriRef xsd(String name) {
@@ -206,6 +208,22 @@ public class SimpleLiteralFactory extend
}
+ private static class FloatConverter implements TypeConverter<Float> {
+
+ @Override
+ public TypedLiteral createTypedLiteral(Float value) {
+ return new TypedLiteralImpl(value.toString(), xsdFloat);
+ }
+
+ @Override
+ public Float createObject(TypedLiteral literal) {
+ if (!literal.getDataType().equals(xsdFloat)) {
+ throw new InvalidLiteralTypeException(Float.class, literal.getDataType());
+ }
+ return Float.valueOf(literal.getLexicalForm());
+ }
+ }
+
private static class DoubleConverter implements TypeConverter<Double> {