You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jena.apache.org by an...@apache.org on 2013/01/12 17:59:53 UTC
svn commit: r1432473 - in /jena/trunk/jena-core/src:
main/java/com/hp/hpl/jena/enhanced/EnhNode.java
main/java/com/hp/hpl/jena/enhanced/UnsupportedPolymorphismException.java
test/java/com/hp/hpl/jena/enhanced/test/TestPackage.java
Author: andy
Date: Sat Jan 12 16:59:53 2013
New Revision: 1432473
URL: http://svn.apache.org/viewvc?rev=1432473&view=rev
Log:
JENA-372 : Remove dependency on EnhNode by UnsupportedPolymorphismException
Modified:
jena/trunk/jena-core/src/main/java/com/hp/hpl/jena/enhanced/EnhNode.java
jena/trunk/jena-core/src/main/java/com/hp/hpl/jena/enhanced/UnsupportedPolymorphismException.java
jena/trunk/jena-core/src/test/java/com/hp/hpl/jena/enhanced/test/TestPackage.java
Modified: jena/trunk/jena-core/src/main/java/com/hp/hpl/jena/enhanced/EnhNode.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-core/src/main/java/com/hp/hpl/jena/enhanced/EnhNode.java?rev=1432473&r1=1432472&r2=1432473&view=diff
==============================================================================
--- jena/trunk/jena-core/src/main/java/com/hp/hpl/jena/enhanced/EnhNode.java (original)
+++ jena/trunk/jena-core/src/main/java/com/hp/hpl/jena/enhanced/EnhNode.java Sat Jan 12 16:59:53 2013
@@ -149,9 +149,9 @@ public class EnhNode extends Polymorphic
@Override protected <X extends RDFNode> X convertTo( Class<X> t )
{
EnhGraph eg = getGraph();
- if (eg == null) throw new UnsupportedPolymorphismException( this, t );
+ if (eg == null) throw new UnsupportedPolymorphismException( this, false, t );
Implementation imp = getPersonality().getImplementation( t );
- if (imp == null) throw new UnsupportedPolymorphismException( this, t );
+ if (imp == null) throw new UnsupportedPolymorphismException( this, true, t );
EnhNode result = imp.wrap( asNode(), eg );
this.addView( result );
return t.cast( result );
Modified: jena/trunk/jena-core/src/main/java/com/hp/hpl/jena/enhanced/UnsupportedPolymorphismException.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-core/src/main/java/com/hp/hpl/jena/enhanced/UnsupportedPolymorphismException.java?rev=1432473&r1=1432472&r2=1432473&view=diff
==============================================================================
--- jena/trunk/jena-core/src/main/java/com/hp/hpl/jena/enhanced/UnsupportedPolymorphismException.java (original)
+++ jena/trunk/jena-core/src/main/java/com/hp/hpl/jena/enhanced/UnsupportedPolymorphismException.java Sat Jan 12 16:59:53 2013
@@ -18,7 +18,7 @@
package com.hp.hpl.jena.enhanced;
-import com.hp.hpl.jena.shared.JenaException;
+import com.hp.hpl.jena.shared.JenaException ;
/**
Exception to throw if an enhanced graph does not support polymorphism
@@ -28,31 +28,25 @@ import com.hp.hpl.jena.shared.JenaExcept
public class UnsupportedPolymorphismException extends JenaException
{
private final Class<?> type;
- private final EnhNode node;
+ private final Object node;
/**
Initialise this exception with the node that couldn't be polymorphed and
the class it couldn't be polymorphed to.
*/
- public UnsupportedPolymorphismException( EnhNode node, Class<?> type )
+ public UnsupportedPolymorphismException( Object node, boolean hasModel, Class<?> type )
{
- super( constructMessage( node, type ) );
+ super( constructMessage( node, hasModel, type ) );
this.node = node;
this.type = type;
}
- private static String constructMessage( EnhNode node, Class<?> type )
+ private static String constructMessage( Object node, boolean hasModel, Class<?> type )
{
String mainMessage = "cannot convert " + node + " to " + type;
- return node.getGraph() == null ? mainMessage : mainMessage + " -- it has no model";
+ return hasModel ? mainMessage : mainMessage + " -- it has no model";
}
- /**
- Answer the (enhanced) Graph of the node that couldn't be polymorphed;
- may be null if that node had no attached model.
- */
- public EnhGraph getBadGraph()
- { return node.getGraph(); }
/**
Answer the class that the node couldn't be polymorphed to
Modified: jena/trunk/jena-core/src/test/java/com/hp/hpl/jena/enhanced/test/TestPackage.java
URL: http://svn.apache.org/viewvc/jena/trunk/jena-core/src/test/java/com/hp/hpl/jena/enhanced/test/TestPackage.java?rev=1432473&r1=1432472&r2=1432473&view=diff
==============================================================================
--- jena/trunk/jena-core/src/test/java/com/hp/hpl/jena/enhanced/test/TestPackage.java (original)
+++ jena/trunk/jena-core/src/test/java/com/hp/hpl/jena/enhanced/test/TestPackage.java Sat Jan 12 16:59:53 2013
@@ -469,9 +469,9 @@ public class TestPackage extends GraphTe
fail( "oops" );
}
catch (UnsupportedPolymorphismException e)
- {
+ {
assertEquals( en, e.getBadNode() );
- assertTrue( "exception should have cuplprit graph", eg == e.getBadGraph() );
+ assertTrue( "exception should have cuplprit graph", eg == ((EnhNode)e.getBadNode()).getGraph() );
assertSame( "exception should have culprit class", Property.class, e.getBadClass() );
}
}
@@ -506,7 +506,8 @@ public class TestPackage extends GraphTe
fail( "should throw UnsupportedPolymorphismException" ); }
catch (UnsupportedPolymorphismException e)
{
- assertEquals( null, e.getBadGraph() );
+ assertTrue( e.getBadNode() instanceof EnhNode );
+ assertEquals( null, ((EnhNode)e.getBadNode()).getGraph() );
assertEquals( Example.class, e.getBadClass() );
}
}