Author: reto
Date: Wed Mar 24 12:33:22 2010
New Revision: 927035
URL: http://svn.apache.org/viewvc?rev=927035&view=rev
Log:
CLEREZZA-37: implement as(Class) method on RichGraphNode
Modified:
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.scala.utils/src/main/scala/org/apache/clerezza/rdf/scala/utils/RichGraphNode.scala
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.scala.utils/src/test/scala/org/apache/clerezza/rdf/scala/utils/RichGraphNodeTest.scala
Modified:
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.scala.utils/src/main/scala/org/apache/clerezza/rdf/scala/utils/RichGraphNode.scala
URL:
http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.scala.utils/src/main/scala/org/apache/clerezza/rdf/scala/utils/RichGraphNode.scala?rev=927035&r1=927034&r2=927035&view=diff
==============================================================================
---
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.scala.utils/src/main/scala/org/apache/clerezza/rdf/scala/utils/RichGraphNode.scala
(original)
+++
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.scala.utils/src/main/scala/org/apache/clerezza/rdf/scala/utils/RichGraphNode.scala
Wed Mar 24 12:33:22 2010
@@ -19,7 +19,7 @@
package org.apache.clerezza.rdf.scala.utils
import rdf.utils.GraphNode
-import rdf.core.{UriRef, Resource, Literal}
+import rdf.core.{UriRef, Resource, Literal, TypedLiteral, LiteralFactory}
import java.util.Iterator
import _root_.scala.collection.jcl.Conversions
@@ -68,6 +68,11 @@ class RichGraphNode(node: GraphNode) ext
}
}
+ def as[T](clazz : Class[T]) : T= {
+ LiteralFactory.getInstance().createObject(clazz,
+ node.getNode().asInstanceOf[TypedLiteral])
+ }
+
/**
* Operator syntax shortcut to get the <code>Resource</code> wrapped by
this
* <code>GraphNode</code>
Modified:
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.scala.utils/src/test/scala/org/apache/clerezza/rdf/scala/utils/RichGraphNodeTest.scala
URL:
http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.scala.utils/src/test/scala/org/apache/clerezza/rdf/scala/utils/RichGraphNodeTest.scala?rev=927035&r1=927034&r2=927035&view=diff
==============================================================================
---
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.scala.utils/src/test/scala/org/apache/clerezza/rdf/scala/utils/RichGraphNodeTest.scala
(original)
+++
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.scala.utils/src/test/scala/org/apache/clerezza/rdf/scala/utils/RichGraphNodeTest.scala
Wed Mar 24 12:33:22 2010
@@ -112,4 +112,12 @@ class RichGraphNodeTest {
Assert.assertEquals(johnUri, (node/SKOS.related%0!!).sort((a,b)
=> ((a*) > (b*)))(0)!)
}
+ @Test
+ def literalAsObject = {
+ val dateLiteral = new TypedLiteralImpl("2009-01-01T01:33:58Z",
+ new
UriRef("http://www.w3.org/2001/XMLSchema#dateTime"))
+ val node = new GraphNode(dateLiteral, new SimpleMGraph())
+ Assert.assertNotNull(node.as(classOf[java.util.Date]))
+ }
+
}