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]))
+       }
+
 }


Reply via email to