This is an automated email from the ASF dual-hosted git repository.

andy pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/jena.git

commit 11e2615157ad5e6b8e204d7131ae033661d1bc58
Author: Andy Seaborne <[email protected]>
AuthorDate: Wed May 14 20:37:28 2025 +0100

    GH-3196: Deprecation removal of Graph.dependsOn
---
 .../org/apache/jena/sparql/graph/GraphWrapper.java |    1 +
 .../src/main/java/org/apache/jena/graph/Graph.java |    6 +-
 .../java/org/apache/jena/graph/compose/Dyadic.java |    1 +
 .../java/org/apache/jena/graph/impl/GraphBase.java |    1 +
 .../org/apache/jena/graph/impl/WrappedGraph.java   |    1 +
 .../org/apache/jena/graph/GraphContractTest.java   | 1525 --------------------
 .../jena/graph/compose/test/TestMultiUnion.java    |  140 +-
 .../apache/jena/graph/impl/CollectionGraph_CS.java |   67 -
 .../rulesys/test/FRuleEngineIFactoryTest.java      |    1 +
 .../examples/riot/ExRIOT5_StreamRDFCollect.java    |    2 -
 .../querybuilder/UpdateBuilderExampleTests.java    |   14 +-
 .../jena/arq/querybuilder/UpdateBuilderTest.java   |   32 +-
 .../permissions/graph/impl/SecuredGraphImpl.java   |    1 +
 .../model/impl/SecuredStatementTermImpl.java       |    4 +-
 .../jena/permissions/graph/MemGraphTest.java       |    5 +-
 15 files changed, 98 insertions(+), 1703 deletions(-)

diff --git 
a/jena-arq/src/main/java/org/apache/jena/sparql/graph/GraphWrapper.java 
b/jena-arq/src/main/java/org/apache/jena/sparql/graph/GraphWrapper.java
index 3c150f58e3..f44d5dff4a 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/graph/GraphWrapper.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/graph/GraphWrapper.java
@@ -40,6 +40,7 @@ public class GraphWrapper implements Graph
         get().add(t);
     }
 
+    @SuppressWarnings("removal")
     @Override
     public boolean dependsOn(Graph other) {
         return get().dependsOn(other);
diff --git a/jena-core/src/main/java/org/apache/jena/graph/Graph.java 
b/jena-core/src/main/java/org/apache/jena/graph/Graph.java
index 6685077f1c..72424da11f 100644
--- a/jena-core/src/main/java/org/apache/jena/graph/Graph.java
+++ b/jena-core/src/main/java/org/apache/jena/graph/Graph.java
@@ -64,9 +64,11 @@ public interface Graph {
         pessimistic (i.e. return true if it's not sure). Typically true when a
         graph is a composition of other graphs, eg union.
 
-         @param other the graph this graph may depend on
-         @return false if this does not depend on other
+        @param other the graph this graph may depend on
+        @return false if this does not depend on other
+        @deprecated To be removed.
     */
+    @Deprecated(forRemoval = true)
     boolean dependsOn( Graph other );
 
     /** returns this Graph's transaction handler */
diff --git a/jena-core/src/main/java/org/apache/jena/graph/compose/Dyadic.java 
b/jena-core/src/main/java/org/apache/jena/graph/compose/Dyadic.java
index f266bf80ae..e7208a41dd 100644
--- a/jena-core/src/main/java/org/apache/jena/graph/compose/Dyadic.java
+++ b/jena-core/src/main/java/org/apache/jena/graph/compose/Dyadic.java
@@ -66,6 +66,7 @@ public abstract class Dyadic extends CompositionBase {
     /**
      * Generic dependsOn, true iff it depends on either of the subgraphs.
      */
+    @SuppressWarnings("removal")
     @Override
     public boolean dependsOn(Graph other) {
         return other == this || L.dependsOn(other) || R.dependsOn(other);
diff --git a/jena-core/src/main/java/org/apache/jena/graph/impl/GraphBase.java 
b/jena-core/src/main/java/org/apache/jena/graph/impl/GraphBase.java
index 64be06a73d..668b495bf3 100644
--- a/jena-core/src/main/java/org/apache/jena/graph/impl/GraphBase.java
+++ b/jena-core/src/main/java/org/apache/jena/graph/impl/GraphBase.java
@@ -83,6 +83,7 @@ public abstract class GraphBase implements GraphWithPerform
          Default implementation answers <code>true</code> iff this graph is the
          same graph as the argument graph.
     */
+    @SuppressWarnings("removal")
        @Override
     public boolean dependsOn( Graph other )
         { return this == other; }
diff --git 
a/jena-core/src/main/java/org/apache/jena/graph/impl/WrappedGraph.java 
b/jena-core/src/main/java/org/apache/jena/graph/impl/WrappedGraph.java
index 8de2b3ad92..777e285039 100644
--- a/jena-core/src/main/java/org/apache/jena/graph/impl/WrappedGraph.java
+++ b/jena-core/src/main/java/org/apache/jena/graph/impl/WrappedGraph.java
@@ -35,6 +35,7 @@ public class WrappedGraph implements GraphWithPerform
     public WrappedGraph( Graph base )
     { this.base = base; }
 
+    @SuppressWarnings("removal")
     @Override
     public boolean dependsOn( Graph other )
     { return base.dependsOn( other ); }
diff --git 
a/jena-core/src/test/java/org/apache/jena/graph/GraphContractTest.java 
b/jena-core/src/test/java/org/apache/jena/graph/GraphContractTest.java
deleted file mode 100644
index 6a1353ba13..0000000000
--- a/jena-core/src/test/java/org/apache/jena/graph/GraphContractTest.java
+++ /dev/null
@@ -1,1525 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.jena.graph;
-
-import static org.apache.jena.testing_framework.GraphHelper.*;
-import static org.junit.Assert.*;
-
-import java.io.InputStream;
-import java.net.MalformedURLException;
-import java.net.URISyntaxException;
-import java.util.Arrays;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Set;
-import java.util.function.Function;
-
-import org.apache.jena.mem.TrackingTripleIterator;
-import org.apache.jena.rdf.model.Model;
-import org.apache.jena.rdf.model.ModelFactory;
-import org.apache.jena.rdf.model.impl.ReifierStd;
-import org.apache.jena.shared.ClosedException;
-import org.apache.jena.shared.DeleteDeniedException;
-import org.apache.jena.shared.PrefixMapping;
-import org.apache.jena.testing_framework.AbstractGraphProducer;
-import org.apache.jena.testing_framework.NodeCreateUtils;
-import org.apache.jena.util.iterator.ClosableIterator;
-import org.apache.jena.util.iterator.ExtendedIterator;
-import org.junit.After;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.xenei.junit.contract.Contract;
-import org.xenei.junit.contract.ContractTest;
-
-/**
- * Graph contract test.
- */
-@Contract(Graph.class)
-public class GraphContractTest<T extends Graph>
-{
-
-       private static final Logger LOG = LoggerFactory
-                       .getLogger(GraphContractTest.class);
-
-       private AbstractGraphProducer<T> producer;
-
-       protected RecordingGraphListener GL = new RecordingGraphListener();
-
-       @Contract.Inject
-       public final void setGraphContractTestProducer(
-                       AbstractGraphProducer<T> graphProducer)
-       {
-               producer = graphProducer;
-       }
-
-       @After
-       public final void afterGraphContractTest()
-       {
-               producer.cleanUp();
-               GL.clear();
-       }
-
-       @ContractTest
-       public void testAdd_Triple()
-       {
-               Graph graph = producer.newInstance();
-               graph.getEventManager().register(GL);
-               txnBegin(graph);
-               graph.add(triple("S P O"));
-               txnCommit(graph);
-               GL.assertHasStart("add", graph, triple("S P O"));
-               txnRun(graph, () -> assertTrue("Graph should contain <S P O>",
-                               graph.contains(triple("S P O"))));
-
-       }
-
-       /**
-        * Inference graphs can not be truly empty.
-        *
-        * @param g
-        * @param b
-        */
-       private void assertEmpty(Graph g, Graph b)
-       {
-               if (b.isEmpty())
-               {
-                       assertTrue("Graph should be empty", g.isEmpty());
-               } else
-               {
-                       assertEquals("Graph should be in base state",
-                                       b.find(Triple.ANY).toList(), 
g.find(Triple.ANY).toList());
-               }
-       }
-
-       /**
-        * Inference graphs can not be truly empty
-        *
-        * @param g
-        * @param b
-        */
-       private void assertNotEmpty(Graph g, Graph b)
-       {
-               if (b.isEmpty())
-               {
-                       assertFalse("Graph not should be empty", g.isEmpty());
-               } else
-               {
-                       assertNotEquals("Graph should not be in base state",
-                                       b.find(Triple.ANY).toList(), 
g.find(Triple.ANY).toList());
-               }
-       }
-
-       @SuppressWarnings("deprecation")
-    private static boolean xsupportsLiteralTyping(Graph g) {
-           //return g.getCapabilities().handlesLiteralTyping();
-           return g instanceof org.apache.jena.mem.GraphMem;
-    }
-
-    /**
-        * Test that clear works, in the presence of inferencing graphs that 
mean
-        * emptyness isn't available. This is why we go round the houses and 
test
-        * that expected ~= initialContent + addedStuff - removed - 
initialContent.
-        */
-       @ContractTest
-       public void testClear_Empty()
-       {
-               Graph graph = producer.newInstance();
-               Graph base = copy(graph);
-
-               graph.getEventManager().register(GL);
-               txnRun(graph, () -> graph.clear());
-
-               txnRun(graph, () -> assertEmpty(graph, base));
-               GL.assertHasStart("someEvent", graph, GraphEvents.removeAll);
-               GL.clear();
-       }
-
-       @ContractTest
-       public void testClear()
-       {
-               Graph graph = producer.newInstance();
-               Graph base = copy(graph);
-               // test after adding
-               graphWith(graph, "S P O; S e:ff 27; _1 P P3; S4 P4 'en'");
-               graph.getEventManager().register(GL);
-               txnRun(graph, () -> graph.clear());
-
-               txnRun(graph, () -> assertEmpty(graph, base));
-               if (GL.contains("delete"))
-               {
-                       // deletes are listed -- ensure all deletes are listed
-                       GL.assertContains("delete", graph, triple("S P O"));
-                       GL.assertContains("delete", graph, triple("S e:ff 27"));
-                       GL.assertContains("delete", graph, triple("_1 P P3"));
-                       GL.assertContains("delete", graph, triple("S4 P4 
'en'"));
-               }
-               GL.assertHasEnd("someEvent", graph, GraphEvents.removeAll);
-               GL.clear();
-
-       }
-
-       @ContractTest
-       public void testClose()
-       {
-               Graph graph = graphWith(producer.newInstance(),
-                               "S P O; S P2 O2; S3 P P3");
-               graph.getEventManager().register(GL);
-               assertFalse("Graph was constructed closed", graph.isClosed());
-
-               txnRun(graph, () -> graph.close());
-
-               assertTrue("Graph should be closed", graph.isClosed());
-
-               // exception may be thrown on begin or on execution.
-               try
-               {
-                       txnBegin(graph);
-                       try
-                       {
-                               graph.add(triple("S P O"));
-                               fail("added when closed");
-                       } catch (Exception expected)
-                       {
-                               GL.assertEmpty();
-                               // expected
-                       } finally
-                       {
-                               txnRollback(graph);
-                       }
-               } catch (Exception expected)
-               {
-                       GL.assertEmpty();
-                       // expected
-               }
-
-               try
-               {
-                       txnBegin(graph);
-                       try
-                       {
-                               graph.delete(triple("x R y"));
-                               fail("delete when closed");
-                       } catch (ClosedException c)
-                       {
-                               // Expected
-                       } finally
-                       {
-                               txnRollback(graph);
-                               GL.assertEmpty();
-                       }
-               } catch (Exception expected)
-               {
-                       GL.assertEmpty();
-                       // expected
-               }
-
-               try
-               {
-                       txnBegin(graph);
-
-                       try
-                       {
-                               graph.add(triple("x R y"));
-                               fail("add when closed");
-                       } catch (ClosedException c)
-                       { /* as required */
-                       } finally
-                       {
-                               txnRollback(graph);
-                               GL.assertEmpty();
-                       }
-               } catch (Exception expected)
-               {
-                       GL.assertEmpty();
-                       // expected
-               }
-
-               try
-               {
-                       txnBegin(graph);
-                       try
-                       {
-                               graph.contains(triple("x R y"));
-                               fail("contains[triple] when closed");
-                       } catch (ClosedException c)
-                       { /* as required */
-                       } finally
-                       {
-                               txnRollback(graph);
-                               GL.assertEmpty();
-                       }
-               } catch (Exception expected)
-               {
-                       GL.assertEmpty();
-                       // expected
-               }
-
-               try
-               {
-                       txnBegin(graph);
-                       try
-                       {
-                               graph.contains(Node.ANY, Node.ANY, Node.ANY);
-                               fail("contains[SPO] when closed");
-                       } catch (ClosedException c)
-                       { /* as required */
-                       } finally
-                       {
-                               txnRollback(graph);
-                               GL.assertEmpty();
-                       }
-               } catch (Exception expected)
-               {
-                       GL.assertEmpty();
-                       // expected
-               }
-
-               try
-               {
-                       txnBegin(graph);
-                       try
-                       {
-                               graph.find(triple("x R y"));
-                               fail("find [triple] when closed");
-                       } catch (ClosedException c)
-                       { /* as required */
-                       } finally
-                       {
-                               txnRollback(graph);
-                               GL.assertEmpty();
-                       }
-               } catch (Exception expected)
-               {
-                       GL.assertEmpty();
-                       // expected
-               }
-
-               try
-               {
-                       txnBegin(graph);
-                       try
-                       {
-                               graph.find(Node.ANY, Node.ANY, Node.ANY);
-                               fail("find[SPO] when closed");
-                       } catch (ClosedException c)
-                       { /* as required */
-                       } finally
-                       {
-                               txnRollback(graph);
-                               GL.assertEmpty();
-                       }
-               } catch (Exception expected)
-               {
-                       GL.assertEmpty();
-                       // expected
-               }
-
-               try
-               {
-                       txnBegin(graph);
-                       try
-                       {
-                               graph.size();
-                               fail("size when closed (" + this.getClass() + 
")");
-                       } catch (ClosedException c)
-                       { /* as required */
-                       } finally
-                       {
-                               txnRollback(graph);
-                               GL.assertEmpty();
-                       }
-               } catch (Exception expected)
-               {
-                       GL.assertEmpty();
-                       // expected
-               }
-       }
-
-       @ContractTest
-       public void testContains_Node_Node_Node()
-       {
-               Graph graph = graphWith(producer.newInstance(),
-                               "S P O; S2 P2 O2; S3 P3 O3");
-
-               txnRun(graph, () -> {
-                       assertTrue(graph.contains(node("S"), node("P"), 
node("O")));
-                       assertFalse(graph.contains(node("S"), node("P"), 
node("O2")));
-                       assertFalse(graph.contains(node("S"), node("P2"), 
node("O")));
-                       assertFalse(graph.contains(node("S2"), node("P"), 
node("O")));
-                       assertTrue(graph.contains(Node.ANY, Node.ANY, 
Node.ANY));
-                       assertTrue(graph.contains(Node.ANY, Node.ANY, 
node("O")));
-                       assertTrue(graph.contains(Node.ANY, node("P"), 
Node.ANY));
-                       assertTrue(graph.contains(node("S"), Node.ANY, 
Node.ANY));
-               });
-       }
-
-       @ContractTest
-       public void testContains_Node_Node_Node_RepeatedSubjectDoesNotConceal()
-       {
-
-               Graph g = graphWith(producer.newInstance(), "s P o; s Q r");
-               Node s = node("s");
-               Node P = node("P");
-               Node o = node("o");
-               Node Q = node("Q");
-               Node r = node("r");
-               Node any = node("??");
-               txnRun(g, () -> {
-                       assertTrue(g.contains(s, P, o));
-                       assertTrue(g.contains(s, Q, r));
-                       assertTrue(g.contains(any, P, o));
-                       assertTrue(g.contains(any, Q, r));
-                       assertTrue(g.contains(any, P, any));
-                       assertTrue(g.contains(any, Q, any));
-               });
-       }
-
-       @ContractTest
-       public void testContains_Node_Node_Node_Concrete()
-       {
-               Node s = node("s");
-               Node P = node("P");
-               Node o = node("o");
-
-               Node _x = node("_x");
-               Node R = node("R");
-               Node _y = node("_y");
-
-               Node x = node("x");
-               Node S = node("S");
-
-               Graph g = graphWith(producer.newInstance(), "s P o; _x R _y; x 
S 0");
-               txnRun(g, () -> {
-
-                       assertTrue("Graph should have contained s P o",
-                                       g.contains(s, P, o));
-                       assertTrue("Graph should have contained _x _R _y",
-                                       g.contains(_x, R, _y));
-                       assertTrue("Graph should have contained x S 'O'",
-                                       g.contains(x, S, node("0")));
-                       /* */
-                       assertFalse(g.contains(s, P, node("Oh")));
-                       assertFalse(g.contains(S, P, node("O")));
-                       assertFalse(g.contains(s, node("p"), o));
-                       assertFalse(g.contains(_x, node("_r"), _y));
-                       assertFalse(g.contains(x, S, node("1")));
-               });
-       }
-
-       @ContractTest
-       public void testContains_Node_Node_Node_Concrete_BlankPredicate()
-       {
-               Node s = node("s");
-               Node P = node("P");
-               Node o = node("o");
-
-               Node _x = node("_x");
-               Node _R = node("_R");
-               Node _y = node("_y");
-
-               Node x = node("x");
-               Node S = node("S");
-
-               Graph g = graphWith(producer.newInstance(), "s P o; _x _R _y; x 
S 0");
-               txnRun(g, () -> {
-
-                       assertTrue("Graph should have contained _x _R _y",
-                                       g.contains(_x, _R, _y));
-                       assertFalse(g.contains(_x, node("_r"), _y));
-               });
-       }
-
-       @ContractTest
-       public void testContains_Node_Node_Node_Fluid()
-       {
-               Node x = node("x");
-               Node R = node("R");
-               Node P = node("P");
-               Node y = node("y");
-               Node a = node("a");
-               Node b = node("b");
-               Graph g = graphWith(producer.newInstance(), "x R y; a P b");
-
-               txnRun(g, () -> {
-                       assertTrue(g.contains(Node.ANY, R, y));
-                       assertTrue(g.contains(x, Node.ANY, y));
-                       assertTrue(g.contains(x, R, Node.ANY));
-                       assertTrue(g.contains(Node.ANY, P, b));
-                       assertTrue(g.contains(a, Node.ANY, b));
-                       assertTrue(g.contains(a, P, Node.ANY));
-                       assertTrue(g.contains(Node.ANY, R, y));
-                       /* */
-                       assertFalse(g.contains(Node.ANY, R, b));
-                       assertFalse(g.contains(a, Node.ANY, y));
-                       assertFalse(g.contains(x, P, Node.ANY));
-                       assertFalse(g.contains(Node.ANY, R, x));
-                       assertFalse(g.contains(x, Node.ANY, R));
-                       assertFalse(g.contains(a, node("S"), Node.ANY));
-               });
-       }
-
-       @ContractTest
-       public void testContains_Triple()
-       {
-               Graph graph = graphWith(producer.newInstance(),
-                               "S P O; S2 P2 O2; S3 P3 O3");
-               txnRun(graph, () -> {
-                       assertTrue(graph.contains(triple("S P O")));
-                       assertFalse(graph.contains(triple("S P O2")));
-                       assertFalse(graph.contains(triple("S P2 O")));
-                       assertFalse(graph.contains(triple("S2 P O")));
-                       assertTrue(graph.contains(Triple.ANY));
-                       assertTrue(
-                                       graph.contains(Triple.create(Node.ANY, 
Node.ANY, node("O"))));
-                       assertTrue(
-                                       graph.contains(Triple.create(Node.ANY, 
node("P"), Node.ANY)));
-                       assertTrue(
-                                       graph.contains(Triple.create(node("S"), 
Node.ANY, Node.ANY)));
-               });
-
-       }
-
-       @ContractTest
-       public void testContains_Triple_RepeatedSubjectDoesNotConceal()
-       {
-
-               Graph g = graphWith(producer.newInstance(), "s P o; s Q r");
-               txnRun(g, () -> {
-                       assertTrue(g.contains(triple("s P o")));
-                       assertTrue(g.contains(triple("s Q r")));
-                       assertTrue(g.contains(triple("?? P o")));
-                       assertTrue(g.contains(triple("?? Q r")));
-                       assertTrue(g.contains(triple("?? P ??")));
-                       assertTrue(g.contains(triple("?? Q ??")));
-               });
-       }
-
-       @ContractTest
-       public void testContains_Triple_Concrete()
-       {
-               Graph g = graphWith(producer.newInstance(), "s P o; _x R _y; x 
S 0");
-               txnRun(g, () -> {
-                       assertTrue(g.contains(triple("s P o")));
-                       assertTrue(g.contains(triple("_x R _y")));
-                       assertTrue(g.contains(triple("x S 0")));
-                       /* */
-                       assertFalse(g.contains(triple("s P Oh")));
-                       assertFalse(g.contains(triple("S P O")));
-                       assertFalse(g.contains(triple("s p o")));
-                       assertFalse(g.contains(triple("_x _r _y")));
-                       assertFalse(g.contains(triple("x S 1")));
-               });
-       }
-
-       @ContractTest
-       public void testContains_Triple_Concrete_BlankPredicate()
-       {
-               Graph g = graphWith(producer.newInstance(), "s P o; _x _R _y; x 
S 0");
-               txnRun(g, () -> {
-                       assertTrue(g.contains(triple("s P o")));
-                       assertTrue(g.contains(triple("_x _R _y")));
-                       assertTrue(g.contains(triple("x S 0")));
-                       /* */
-                       assertFalse(g.contains(triple("s P Oh")));
-                       assertFalse(g.contains(triple("S P O")));
-                       assertFalse(g.contains(triple("s p o")));
-                       assertFalse(g.contains(triple("_x _r _y")));
-                       assertFalse(g.contains(triple("x S 1")));
-               });
-       }
-
-       @ContractTest
-       public void testContains_Triple_Fluid()
-       {
-               Graph g = graphWith(producer.newInstance(), "x R y; a P b");
-               txnRun(g, () -> {
-
-                       assertTrue(g.contains(triple("?? R y")));
-                       assertTrue(g.contains(triple("x ?? y")));
-                       assertTrue(g.contains(triple("x R ??")));
-                       assertTrue(g.contains(triple("?? P b")));
-                       assertTrue(g.contains(triple("a ?? b")));
-                       assertTrue(g.contains(triple("a P ??")));
-                       assertTrue(g.contains(triple("?? R y")));
-                       /* */
-                       assertFalse(g.contains(triple("?? R b")));
-                       assertFalse(g.contains(triple("a ?? y")));
-                       assertFalse(g.contains(triple("x P ??")));
-                       assertFalse(g.contains(triple("?? R x")));
-                       assertFalse(g.contains(triple("x ?? R")));
-                       assertFalse(g.contains(triple("a S ??")));
-               });
-       }
-
-       /**
-        * Inference graphs can not be empty
-        */
-       @ContractTest
-       public void testDelete_Triple()
-       {
-               Graph graph = graphWith(producer.newInstance(),
-                               "S P O; S2 P2 O2; S3 P3 O3");
-               Graph base = producer.newInstance();
-               graph.getEventManager().register(GL);
-
-               try
-               {
-                       txnBegin(graph);
-                       graph.delete(triple("S P O"));
-                       txnCommit(graph);
-               } catch (DeleteDeniedException expected)
-               {
-                       txnRollback(graph);
-                       fail("delete( S P O ) failed: " + 
expected.getMessage());
-               }
-
-               GL.assertContains("delete", graph, triple("S P O"));
-
-               txnRun(graph, () -> {
-                       assertFalse("Graph should not contain <S P O>",
-                                       graph.contains(triple("S P O")));
-                       assertNotEmpty(graph, base);
-                       assertTrue("Graph should contain <S2 P2 O2>",
-                                       graph.contains(triple("S2 P2 O2")));
-                       assertTrue("Graph should contain <S3 P3 O3>",
-                                       graph.contains(triple("S3 P3 O3")));
-               });
-       }
-
-       @ContractTest
-       public void testDelete_Triple_Wildcard()
-       {
-               Graph graph = graphWith(producer.newInstance(),
-                               "S P O; S2 P2 O2; S3 P3 O3");
-               Graph base = producer.newInstance();
-               graph.getEventManager().register(GL);
-
-               // should not modify anything on wildcard delete
-               GL.clear();
-               try
-               {
-                       txnBegin(graph);
-                       graph.delete(Triple.create(node("S2"), node("P2"), 
Node.ANY));
-                       txnCommit(graph);
-               } catch (DeleteDeniedException expected)
-               {
-                       txnRollback(graph);
-               }
-               txnRun(graph, () -> {
-
-                       assertTrue("Graph should contain <S2 P2 O2>",
-                                       graph.contains(triple("S2 P2 O2")));
-                       assertTrue("Graph should contain <S3 P3 O3>",
-                                       graph.contains(triple("S3 P3 O3")));
-               });
-               GL.assertHas("delete", graph,
-                               Triple.create(node("S2"), node("P2"), 
Node.ANY));
-       }
-
-       @ContractTest
-       public void testDelete_Triple_FromNothing()
-       {
-               Graph g = producer.newInstance();
-               g.getEventManager().register(GL);
-               txnBegin(g);
-               g.delete(triple("quint rdf:subject S"));
-               txnCommit(g);
-               GL.assertContains("delete", g, triple("quint rdf:subject S"));
-       }
-
-       @ContractTest
-       public void testDependsOn()
-       {
-               Graph g = producer.newInstance();
-               Graph[] depGraphs = producer.getDependsOn(g);
-               if (depGraphs != null)
-               {
-                       for (Graph dg : depGraphs)
-                       {
-                               assertTrue(
-                                               String.format("Graph %s should 
depend upon %s", g, dg),
-                                               g.dependsOn(dg));
-                       }
-               }
-               depGraphs = producer.getNotDependsOn(g);
-               if (depGraphs != null)
-               {
-                       for (Graph dg : depGraphs)
-                       {
-                               assertFalse(String.format("Graph %s should not 
depend upon %s",
-                                               g, dg), g.dependsOn(dg));
-                       }
-               }
-       }
-
-       @ContractTest
-       public void testFind_Node_Node_Node()
-       {
-               Graph graph = graphWith(producer.newInstance(),
-                               "S P O; S2 P2 O2; S3 P3 O3");
-               txnBegin(graph);
-               List<Triple> s = graph.find(Node.ANY, Node.ANY, 
Node.ANY).toList();
-               assertEquals(3, s.size());
-               List<Triple> expected = Arrays.asList(new Triple[] { triple("S 
P O"),
-                               triple("S2 P2 O2"), triple("S3 P3 O3") });
-               assertTrue("Missing some values",
-                               expected.containsAll(s) && 
s.containsAll(expected));
-
-               s = graph.find(node("S"), Node.ANY, Node.ANY).toList();
-               assertEquals(1, s.size());
-               assertTrue("Missing some values", s.contains(triple("S P O")));
-
-               s = graph.find(Node.ANY, node("P"), Node.ANY).toList();
-               assertEquals(1, s.size());
-               assertTrue("Missing some values", s.contains(triple("S P O")));
-
-               s = graph.find(Node.ANY, Node.ANY, node("O")).toList();
-               assertEquals(1, s.size());
-               assertTrue("Missing some values", s.contains(triple("S P O")));
-
-               s = graph.find(node("S2"), node("P2"), node("O2")).toList();
-               assertEquals(1, s.size());
-               assertTrue("Missing some values", s.contains(triple("S2 P2 
O2")));
-
-               s = graph.find(node("S2"), node("P3"), node("O2")).toList();
-               assertEquals(0, s.size());
-
-               s = graph.find(Node.ANY, node("P3"), node("O2")).toList();
-               assertEquals(0, s.size());
-
-               s = graph.find(node("S3"), Node.ANY, node("O2")).toList();
-               assertEquals(0, s.size());
-
-               s = graph.find(node("S3"), node("P2"), Node.ANY).toList();
-               assertEquals(0, s.size());
-               txnRollback(graph);
-       }
-
-       @ContractTest
-       public void testFind_Node_Node_Node_ByFluidTriple()
-       {
-               Node x = node("x");
-               Node y = node("y");
-               Node z = node("z");
-               Graph g = graphWith(producer.newInstance(), "x y z ");
-               Set<Triple> expect = tripleSet("x y z");
-               txnBegin(g);
-               assertEquals(expect, g.find(Node.ANY, y, z).toSet());
-               assertEquals(expect, g.find(x, Node.ANY, z).toSet());
-               assertEquals(expect, g.find(x, y, Node.ANY).toSet());
-               txnRollback(g);
-       }
-
-       @ContractTest
-       public void 
testFind_Node_Node_Node_MatchLanguagedLiteralCaseInsensitive()
-       {
-           Graph g = graphWith(producer.newInstance(), "a p 'chat'en");
-           Node chaten = node("'chat'en"), chatEN = node("'chat'EN");
-           assertEquals(chaten, chatEN);
-           assertTrue(chaten.sameValueAs(chatEN));
-           assertEquals(chaten.getIndexingValue(), chatEN.getIndexingValue());
-           txnBegin(g);
-           assertEquals(1, g.find(Node.ANY, Node.ANY, chaten).toList().size());
-           assertEquals(1, g.find(Node.ANY, Node.ANY, chatEN).toList().size());
-           txnRollback(g);
-       }
-
-       @ContractTest
-       public void testFind_Node_Node_Node_NoMatchAgainstUnlanguagesLiteral()
-       {
-               Graph g = graphWith(producer.newInstance(), "a p 'chat'en; a p 
'chat'");
-               Node chaten = node("'chat'en"), chatEN = node("'chat'EN");
-               assertEquals(chaten, chatEN);
-               assertTrue(chaten.sameValueAs(chatEN));
-               assertEquals(chaten.getIndexingValue(), 
chatEN.getIndexingValue());
-               txnBegin(g);
-               assertEquals(1, g.find(Node.ANY, Node.ANY, 
chaten).toList().size());
-               assertEquals(1, g.find(Node.ANY, Node.ANY, 
chatEN).toList().size());
-               txnRollback(g);
-       }
-
-       @ContractTest
-       public void testFind_Triple()
-       {
-               Graph graph = graphWith(producer.newInstance(),
-                               "S P O; S2 P2 O2; S3 P3 O3");
-               txnBegin(graph);
-               List<Triple> s = graph.find(Triple.ANY).toList();
-               assertEquals(3, s.size());
-               List<Triple> expected = Arrays.asList(new Triple[] { triple("S 
P O"),
-                               triple("S2 P2 O2"), triple("S3 P3 O3") });
-               assertTrue("Missing some values", expected.containsAll(s));
-
-               s = graph.find(Triple.create(node("S"), Node.ANY, 
Node.ANY)).toList();
-               assertEquals(1, s.size());
-               assertTrue("Missing some values", s.contains(triple("S P O")));
-
-               s = graph.find(Triple.create(Node.ANY, node("P"), 
Node.ANY)).toList();
-               assertEquals(1, s.size());
-               assertTrue("Missing some values", s.contains(triple("S P O")));
-
-               s = graph.find(Triple.create(Node.ANY, Node.ANY, 
node("O"))).toList();
-               assertEquals(1, s.size());
-               assertTrue("Missing some values", s.contains(triple("S P O")));
-
-               s = graph.find(Triple.create(node("S2"), node("P2"), 
node("O2"))).toList();
-               assertEquals(1, s.size());
-               assertTrue("Missing some values", s.contains(triple("S2 P2 
O2")));
-
-               s = graph.find(Triple.create(node("S2"), node("P3"), 
node("O2"))).toList();
-               assertEquals(0, s.size());
-
-               s = graph.find(Triple.create(Node.ANY, node("P3"), 
node("O2"))).toList();
-               assertEquals(0, s.size());
-
-               s = graph.find(Triple.create(node("S3"), Node.ANY, 
node("O2"))).toList();
-               assertEquals(0, s.size());
-
-               s = graph.find(Triple.create(node("S3"), node("P2"), 
Node.ANY)).toList();
-               assertEquals(0, s.size());
-               txnRollback(graph);
-       }
-
-       @ContractTest
-       public void testFind_Triple_ByFluidTriple()
-       {
-               Graph g = graphWith(producer.newInstance(), "x y z ");
-               Set<Triple> expect = tripleSet("x y z");
-               txnBegin(g);
-               assertEquals(expect, g.find(triple("?? y z")).toSet());
-               assertEquals(expect, g.find(triple("x ?? z")).toSet());
-               assertEquals(expect, g.find(triple("x y ??")).toSet());
-               txnRollback(g);
-       }
-
-       @ContractTest
-       public void testFind_Triple_NoMatchAgainstUnlanguagesLiteral()
-       {
-           Graph g = graphWith(producer.newInstance(), "a p 'chat'en; a p 
'chat'");
-           Node chaten = node("'chat'en"), chatEN = node("'chat'EN");
-           assertEquals(chaten, chatEN);
-           assertTrue(chaten.sameValueAs(chatEN));
-           assertEquals(chaten.getIndexingValue(), chatEN.getIndexingValue());
-           txnBegin(g);
-           assertEquals(1, g.find(Triple.create(Node.ANY, Node.ANY, chaten))
-                        .toList().size());
-           assertEquals(1, g.find(Triple.create(Node.ANY, Node.ANY, chatEN))
-                        .toList().size());
-           txnRollback(g);
-       }
-
-       @ContractTest
-       public void testGetEventManager()
-       {
-               assertNotNull("Must return an EventManager",
-                               producer.newInstance().getEventManager());
-       }
-
-       @ContractTest
-       public void testGetPrefixMapping()
-       {
-               Graph g = producer.newInstance();
-               txnBegin(g);
-               PrefixMapping pm = g.getPrefixMapping();
-               assertNotNull("Must return prefix mapping", pm);
-               assertSame("getPrefixMapping must always return the same 
object", pm,
-                               g.getPrefixMapping());
-               txnRollback(g);
-               pm.setNsPrefix("pfx1", "http://example.com/";);
-               pm.setNsPrefix("pfx2", "scheme:rope/string#");
-
-               txnBegin(g);
-               // assert same after adding to other mapl
-               assertSame("getPrefixMapping must always return the same 
object", pm,
-                               g.getPrefixMapping());
-               txnRollback(g);
-
-       }
-
-       @ContractTest
-       public void testGetTransactionHandler()
-       {
-               Graph g = producer.newInstance();
-               assertNotNull("Must return a Transaction handler",
-                               g.getTransactionHandler());
-       }
-
-       @ContractTest
-       public void testIsClosed()
-       {
-               Graph g = producer.newInstance();
-               assertFalse("Graph created in closed state", g.isClosed());
-               txnBegin(g);
-               g.close();
-               txnCommit(g);
-               txnBegin(g);
-               assertTrue("Graph does not report closed state after close 
called",
-                               g.isClosed());
-               txnRollback(g);
-       }
-
-       @ContractTest
-       public void testIsEmpty()
-       {
-               Graph g = producer.newInstance();
-               txnBegin(g);
-               if (!g.isEmpty())
-               {
-                       LOG.warn(String.format(
-                                       "Graph type %s can not be empty (Empty 
test skipped)",
-                                       g.getClass()));
-                       txnRollback(g);
-               } else
-               {
-                       txnRollback(g);
-                       graphAddTxn(g, "S P O");
-                       txnBegin(g);
-                       assertFalse("Graph reports empty after add", 
g.isEmpty());
-                       txnRollback(g);
-
-                       txnBegin(g);
-                       g.add(NodeCreateUtils.createTriple("Foo B C"));
-                       g.delete(NodeCreateUtils.createTriple("S P O"));
-                       txnCommit(g);
-                       txnBegin(g);
-                       assertFalse("Should not report empty", g.isEmpty());
-                       txnRollback(g);
-
-                       txnBegin(g);
-                       g.delete(NodeCreateUtils.createTriple("Foo B C"));
-                       txnCommit(g);
-                       txnBegin(g);
-                       assertTrue("Should report empty after all entries 
deleted",
-                                       g.isEmpty());
-                       txnRollback(g);
-               }
-       }
-
-       @ContractTest
-       public void testIsIsomorphicWith_Graph()
-       {
-               Graph graph = producer.newInstance();
-               Graph g2 = memGraph();
-               txnBegin(graph);
-               assertTrue("Empty graphs should be isomorphic",
-                               graph.isIsomorphicWith(g2));
-               txnRollback(graph);
-               graphWith(graph, "S P O; S2 P2 O2; S3 P3 O3");
-               g2 = graphWith("S3 P3 O3; S2 P2 O2; S P O");
-               txnBegin(graph);
-               assertTrue("Should be isomorphic", graph.isIsomorphicWith(g2));
-               txnRollback(graph);
-               txnBegin(graph);
-               graph.add(triple("_1, P4 S4"));
-               txnCommit(graph);
-
-               txnBegin(g2);
-               g2.add(triple("_2, P4 S4"));
-               txnCommit(g2);
-               txnBegin(graph);
-               assertTrue("Should be isomorphic after adding anonymous nodes",
-                               graph.isIsomorphicWith(g2));
-               txnRollback(graph);
-
-               txnBegin(graph);
-               graph.add(triple("_1, P3 S4"));
-               txnCommit(graph);
-
-               txnBegin(g2);
-               g2.add(triple("_2, P4 S4"));
-               txnCommit(g2);
-               txnBegin(graph);
-               assertFalse("Should not be isomorphic", 
graph.isIsomorphicWith(g2));
-               txnRollback(graph);
-       }
-
-       private Graph copy(Graph g)
-       {
-               Graph result = producer.newInstance();
-               txnBegin(result);
-               GraphUtil.addInto(result, g);
-               txnCommit(result);
-               return result;
-       }
-
-       private Graph remove(Graph toUpdate, Graph toRemove)
-       {
-               txnBegin(toUpdate);
-               GraphUtil.deleteFrom(toUpdate, toRemove);
-               txnCommit(toUpdate);
-               return toUpdate;
-       }
-
-       /**
-        * Test that remove(s, p, o) works, in the presence of inferencing 
graphs
-        * that mean emptyness isn't available. This is why we go round the 
houses
-        * and test that expected ~= initialContent + addedStuff - removed -
-        * initialContent.
-        */
-       @ContractTest
-       public void testRemove_Node_Node_Node()
-       {
-               for (int i = 0; i < cases.length; i += 1)
-                       for (int j = 0; j < 3; j += 1)
-                       {
-                               Graph content = producer.newInstance();
-
-                               Graph baseContent = copy(content);
-                               graphAddTxn(content, cases[i][0]);
-                               Triple remove = triple(cases[i][1]);
-                               Graph expected = graphWith(cases[i][2]);
-                               Triple[] removed = tripleArray(cases[i][3]);
-                               content.getEventManager().register(GL);
-                               GL.clear();
-                               txnBegin(content);
-                               content.remove(remove.getSubject(), 
remove.getPredicate(),
-                                               remove.getObject());
-                               txnCommit(content);
-
-                               // check for optional delete notifications
-                               if (GL.contains("delete"))
-                               {
-                                       // if it contains any it must contain 
all.
-                                       for (Triple t : removed)
-                                       {
-                                               GL.assertContains("delete", 
content, t);
-                                       }
-                               }
-                               GL.assertHasEnd("someEvent", content,
-                                               
GraphEvents.remove(remove.getSubject(),
-                                                               
remove.getPredicate(), remove.getObject()));
-
-                               content.getEventManager().unregister(GL);
-                               Graph finalContent = remove(copy(content), 
baseContent);
-                               txnBegin(finalContent);
-                               assertIsomorphic(cases[i][1], expected, 
finalContent);
-                               txnRollback(finalContent);
-                       }
-       }
-
-       @ContractTest
-       public void testRemove_ByIterator()
-       {
-               testRemove("?? ?? ??", "?? ?? ??");
-               testRemove("S ?? ??", "S ?? ??");
-               testRemove("S ?? ??", "?? P ??");
-               testRemove("S ?? ??", "?? ?? O");
-               testRemove("?? P ??", "S ?? ??");
-               testRemove("?? P ??", "?? P ??");
-               testRemove("?? P ??", "?? ?? O");
-               testRemove("?? ?? O", "S ?? ??");
-               testRemove("?? ?? O", "?? P ??");
-               testRemove("?? ?? O", "?? ?? O");
-       }
-
-       private void testRemove(String findRemove, String findCheck)
-       {
-               Graph g = graphWith(producer.newInstance(), "S P O");
-               txnBegin(g);
-               ExtendedIterator<Triple> it = g
-                               .find(NodeCreateUtils.createTriple(findRemove));
-               txnRollback(g);
-               try
-               {
-                       it.next();
-                       it.remove();
-                       it.close();
-                       assertEquals("remove with " + findRemove + ":", 0, 
g.size());
-                       
assertFalse(g.contains(NodeCreateUtils.createTriple(findCheck)));
-               } catch (UnsupportedOperationException e)
-               {
-                       it.close();
-               }
-       }
-
-       /**
-        * This test case was generated by Ian and was caused by GraphMem not
-        * keeping up with changes to the find interface.
-        */
-       @ContractTest
-       public void testFindAndContains()
-       {
-               Graph g = producer.newInstance();
-               Node r = NodeCreateUtils.create("r"), s = 
NodeCreateUtils.create("s"),
-                               p = NodeCreateUtils.create("P");
-               txnBegin(g);
-               try
-               {
-                       g.add(Triple.create(r, p, s));
-                       txnCommit(g);
-                       txnBegin(g);
-                       assertTrue(g.contains(r, p, Node.ANY));
-                       assertEquals(1, g.find(r, p, Node.ANY).toList().size());
-               } catch (Exception e)
-               {
-                       fail(e.getMessage());
-               } finally
-               {
-                       txnRollback(g);
-               }
-       }
-
-       /**
-        * Check that contains respects by-value semantics.
-        */
-
-       @ContractTest
-       public void testAGraph()
-       {
-               String title = this.getClass().getName();
-               Graph g = producer.newInstance();
-               txnBegin(g);
-               int baseSize = g.size();
-               txnRollback(g);
-               graphAddTxn(g, "x R y; p S q; a T b");
-               /* */
-               txnBegin(g);
-               assertContainsAll(title + ": simple graph", g, "x R y; p S q; a 
T b");
-               assertEquals(title + ": size", baseSize + 3, g.size());
-               txnRollback(g);
-
-               graphAddTxn(g,
-                               "spindizzies lift cities; Diracs communicate 
instantaneously");
-               txnBegin(g);
-               assertEquals(title + ": size after adding", baseSize + 5, 
g.size());
-
-               g.delete(triple("x R y"));
-               g.delete(triple("a T b"));
-               txnCommit(g);
-               txnBegin(g);
-               assertEquals(title + ": size after deleting", baseSize + 3, 
g.size());
-               assertContainsAll(title + ": modified simple graph", g,
-                               "p S q; spindizzies lift cities; Diracs 
communicate instantaneously");
-               assertOmitsAll(title + ": modified simple graph", g, "x R y; a 
T b");
-               /* */
-               ClosableIterator<Triple> it = g.find(Node.ANY, node("lift"), 
Node.ANY);
-               assertTrue(title + ": finds some triple(s)", it.hasNext());
-               assertEquals(title + ": finds a 'lift' triple",
-                               triple("spindizzies lift cities"), it.next());
-               assertFalse(title + ": finds exactly one triple", it.hasNext());
-               txnRollback(g);
-               it.close();
-       }
-
-       @ContractTest
-       public void testAddWithReificationPreamble()
-       {
-               Graph g = producer.newInstance();
-               txnBegin(g);
-               xSPO(g);
-               txnCommit(g);
-               txnBegin(g);
-               assertFalse(g.isEmpty());
-               txnRollback(g);
-       }
-
-       protected void xSPOyXYZ(Graph g)
-       {
-               xSPO(g);
-               ReifierStd.reifyAs(g, NodeCreateUtils.create("y"),
-                               NodeCreateUtils.createTriple("X Y Z"));
-       }
-
-       protected void aABC(Graph g)
-       {
-               ReifierStd.reifyAs(g, NodeCreateUtils.create("a"),
-                               NodeCreateUtils.createTriple("Foo B C"));
-       }
-
-       protected void xSPO(Graph g)
-       {
-               ReifierStd.reifyAs(g, NodeCreateUtils.create("x"),
-                               NodeCreateUtils.createTriple("S P O"));
-       }
-
-       @ContractTest
-       public void failingTestDoubleRemoveAll()
-       {
-               final Graph g = producer.newInstance();
-               try
-               {
-                       graphAddTxn(g, "c S d; e:ff GGG hhhh; _i J 27; Ell Em 
'en'");
-                       txnBegin(g);
-                       Iterator<Triple> it = new 
TrackingTripleIterator(g.find(Triple.ANY))
-                       {
-                               @Override
-                               public void remove()
-                               {
-                                       super.remove(); // removes current
-                                       g.delete(current); // no-op.
-                               }
-                       };
-                       txnRollback(g);
-                       while (it.hasNext())
-                       {
-                               it.next();
-                               it.remove();
-                       }
-                       txnBegin(g);
-                       assertTrue(g.isEmpty());
-                       txnRollback(g);
-               } catch (UnsupportedOperationException e)
-               {
-                       // No Iterator.remove
-               }
-       }
-
-       /**
-        * Test cases for RemoveSPO(); each entry is a triple (add, remove, 
result).
-        * <ul>
-        * <li>add - the triples to add to the graph to start with
-        * <li>remove - the pattern to use in the removal
-        * <li>result - the triples that should remain in the graph
-        * </ul>
-        */
-       protected static String[][] cases = { { "x R y", "x R y", "", "x R y" },
-                       { "x R y; a P b", "x R y", "a P b", "x R y" },
-                       { "x R y; a P b", "?? R y", "a P b", "x R y" },
-                       { "x R y; a P b", "x R ??", "a P b", "x R y" },
-                       { "x R y; a P b", "x ?? y", "a P b", "x R y" },
-                       { "x R y; a P b", "?? ?? ??", "", "x R y; a P b" },
-                       { "x R y; a P b; c P d", "?? P ??", "x R y", "a P b; c 
P d" },
-                       { "x R y; a P b; x S y", "x ?? ??", "a P b", "x R y; x 
S y" }, };
-
-       /**
-        * testIsomorphism from file data
-        *
-        * @throws URISyntaxException
-        * @throws MalformedURLException
-        */
-       @ContractTest
-       public void testIsomorphismFile()
-                       throws URISyntaxException, MalformedURLException
-       {
-               testIsomorphismXMLFile(1, true);
-               testIsomorphismXMLFile(2, true);
-               testIsomorphismXMLFile(3, true);
-               testIsomorphismXMLFile(4, true);
-               testIsomorphismXMLFile(5, false);
-               testIsomorphismXMLFile(6, false);
-               testIsomorphismNTripleFile(7, true);
-               testIsomorphismNTripleFile(8, false);
-
-       }
-
-       private void testIsomorphismNTripleFile(int i, boolean result)
-       {
-               testIsomorphismFile(i, "N-TRIPLE", "nt", result);
-       }
-
-       private void testIsomorphismXMLFile(int i, boolean result)
-       {
-               testIsomorphismFile(i, "RDF/XML", "rdf", result);
-       }
-
-       private InputStream getInputStream(int n, int n2, String suffix)
-       {
-               String urlStr = 
String.format("regression/testModelEquals/%s-%s.%s", n,
-                               n2, suffix);
-               return GraphContractTest.class.getClassLoader()
-                               .getResourceAsStream(urlStr);
-       }
-
-       private void testIsomorphismFile(int n, String lang, String suffix,
-                       boolean result)
-       {
-               Graph g1 = producer.newInstance();
-               Graph g2 = producer.newInstance();
-               Model m1 = ModelFactory.createModelForGraph(g1);
-               Model m2 = ModelFactory.createModelForGraph(g2);
-
-               txnBegin(g1);
-               m1.read(getInputStream(n, 1, suffix), 
"http://www.example.org/";, lang);
-               txnCommit(g1);
-
-               txnBegin(g2);
-               m2.read(getInputStream(n, 2, suffix), 
"http://www.example.org/";, lang);
-               txnCommit(g2);
-
-               txnBegin(g1);
-               boolean rslt = g1.isIsomorphicWith(g2) == result;
-               txnRollback(g1);
-               if (!rslt)
-               {
-                       System.out.println("g1:");
-                       m1.write(System.out, "N-TRIPLE");
-                       System.out.println("g2:");
-                       m2.write(System.out, "N-TRIPLE");
-               }
-               assertTrue("Isomorphism test failed", rslt);
-       }
-
-       protected Graph getClosed()
-       {
-               Graph result = producer.newInstance();
-               result.close();
-               return result;
-       }
-
-       /**
-        * Ensure that triples removed by calling .remove() on the iterator 
returned
-        * by a find() will generate deletion notifications.
-        */
-       @ContractTest
-       public void testIterator_Remove()
-       {
-               Graph graph = graphWith(producer.newInstance(), "a R b; b S e");
-               graph.getEventManager().register(GL);
-               txnBegin(graph);
-               Triple toRemove = triple("a R b");
-               ExtendedIterator<Triple> rtr = graph.find(toRemove);
-               assertTrue("ensure a(t least) one triple", rtr.hasNext());
-               txnRollback(graph);
-               try
-               {
-                       rtr.next();
-                       rtr.remove();
-                       rtr.close();
-                       GL.assertHas("delete", graph, toRemove);
-               } catch (UnsupportedOperationException e)
-               {
-                       // No Iterator.remove
-               }
-       }
-
-       @ContractTest
-       public void testTransactionHandler_Commit()
-       {
-               Graph g = producer.newInstance();
-               if (g.getTransactionHandler().transactionsSupported())
-               {
-                       Graph initial = graphWith("initial hasValue 42; also 
hasURI hello");
-                       Graph extra = graphWith("extra hasValue 17; also hasURI 
world");
-                       g.getTransactionHandler().begin();
-                       GraphUtil.addInto(g, initial);
-                       g.getTransactionHandler().commit();
-                       g.getTransactionHandler().begin();
-                       GraphUtil.addInto(g, extra);
-                       g.getTransactionHandler().commit();
-                       Graph union = memGraph();
-                       GraphUtil.addInto(union, initial);
-                       GraphUtil.addInto(union, extra);
-                       g.getTransactionHandler().begin();
-                       assertIsomorphic(union, g);
-                       g.getTransactionHandler().abort();
-                       // Model inFiIProducer<TransactionHandler>le =
-                       // ModelFactory.createDefaultModel();
-                       // inFile.read( "file:///" + foo, "N-TRIPLES" );
-                       // assertIsomorphic( union, inFile.getGraph() );
-               }
-       }
-
-       @ContractTest
-       public void testTransactionHandler_Abort()
-       {
-               Graph g = producer.newInstance();
-               if (g.getTransactionHandler().transactionsSupported())
-               {
-                       Graph initial = graphWith(producer.newInstance(),
-                                       "initial hasValue 42; also hasURI 
hello");
-                       Graph extra = graphWith(producer.newInstance(),
-                                       "extra hasValue 17; also hasURI world");
-                       g.getTransactionHandler().begin();
-                       GraphUtil.addInto(g, initial);
-                       g.getTransactionHandler().commit();
-
-                       g.getTransactionHandler().begin();
-                       GraphUtil.addInto(g, extra);
-                       g.getTransactionHandler().abort();
-
-                       g.getTransactionHandler().begin();
-                       assertIsomorphic(initial, g);
-                       g.getTransactionHandler().abort();
-               }
-       }
-
-       @ContractTest
-       public void testTransactionHandler_CommitThenAbort()
-       {
-               Graph g = producer.newInstance();
-               if (g.getTransactionHandler().transactionsSupported())
-               {
-                       Graph initial = graphWith(producer.newInstance(),
-                                       "Foo pings B; B pings C");
-                       Graph extra = graphWith(producer.newInstance(),
-                                       "C pingedBy B; fileGraph rdf:type 
Graph");
-                       g.getTransactionHandler().begin();
-                       GraphUtil.addInto(g, initial);
-                       g.getTransactionHandler().commit();
-                       g.getTransactionHandler().begin();
-                       GraphUtil.addInto(g, extra);
-                       g.getTransactionHandler().abort();
-                       g.getTransactionHandler().begin();
-                       assertIsomorphic(initial, g);
-                       g.getTransactionHandler().abort();
-                       // Model inFile = ModelFactory.createDefaultModel();
-                       // inFile.read( "file:///" + foo, "N-TRIPLES" );
-                       // assertIsomorphic( initial, inFile.getGraph() );
-               }
-       }
-
-       //
-       // Test that literal typing works when supported
-       //
-
-       // used to find the object set from the returned set for literal testing
-
-       private static final Function<Triple, Node> getObject = new 
Function<Triple, Node>()
-       {
-               @Override
-               public Node apply(Triple t)
-               {
-                       return t.getObject();
-               }
-       };
-
-       @ContractTest
-       public void testQuadRemove()
-       {
-               Graph g = producer.newInstance();
-               txnBegin(g);
-               assertEquals(0, g.size());
-               txnRollback(g);
-               Triple s = triple("x rdf:subject s");
-               Triple p = triple("x rdf:predicate p");
-               Triple o = triple("x rdf:object o");
-               Triple t = triple("x rdf:type rdf:Statement");
-               txnBegin(g);
-               g.add(s);
-               g.add(p);
-               g.add(o);
-               g.add(t);
-               txnCommit(g);
-               txnBegin(g);
-               assertEquals(4, g.size());
-               txnRollback(g);
-               txnBegin(g);
-               g.delete(s);
-               g.delete(p);
-               g.delete(o);
-               g.delete(t);
-               txnCommit(g);
-               txnBegin(g);
-               assertEquals(0, g.size());
-               txnRollback(g);
-       }
-
-       @ContractTest
-       public void testSizeAfterRemove()
-       {
-               Graph g = graphWith(producer.newInstance(), "x p y");
-               try
-               {
-                       txnBegin(g);
-                       ExtendedIterator<Triple> it = g.find(triple("x ?? ??"));
-                       txnRollback(g);
-                       it.removeNext();
-                       txnBegin(g);
-                       assertEquals(0, g.size());
-                       txnRollback(g);
-               } catch (UnsupportedOperationException e)
-               {
-                       // No Iterator.remove
-               }
-       }
-
-       @ContractTest
-       public void testBrokenIndexes()
-       {
-               Graph g = graphWith(producer.newInstance(), "x R y; x S z");
-               try
-               {
-                       txnBegin(g);
-                       ExtendedIterator<Triple> it = g.find(Node.ANY, 
Node.ANY, Node.ANY);
-                       txnRollback(g);
-                       it.removeNext();
-                       it.removeNext();
-                       txnBegin(g);
-                       assertFalse(g.find(node("x"), Node.ANY, 
Node.ANY).hasNext());
-                       assertFalse(g.find(Node.ANY, node("R"), 
Node.ANY).hasNext());
-                       assertFalse(g.find(Node.ANY, Node.ANY, 
node("y")).hasNext());
-                       txnRollback(g);
-               } catch (UnsupportedOperationException e)
-               {
-                       // No Iterator.remove
-               }
-       }
-
-       @ContractTest
-       public void testBrokenSubject()
-       {
-               Graph g = graphWith(producer.newInstance(), "x brokenSubject 
y");
-               try
-               {
-                       txnBegin(g);
-                       ExtendedIterator<Triple> it = g.find(node("x"), 
Node.ANY, Node.ANY);
-                       txnRollback(g);
-                       it.removeNext();
-                       txnBegin(g);
-                       assertFalse(g.find(Node.ANY, Node.ANY, 
Node.ANY).hasNext());
-                       txnRollback(g);
-               } catch (UnsupportedOperationException e)
-               {
-                       // No Iterator.remove
-               }
-       }
-
-       @ContractTest
-       public void testBrokenPredicate()
-       {
-               Graph g = graphWith(producer.newInstance(), "x brokenPredicate 
y");
-               try
-               {
-                       txnBegin(g);
-                       ExtendedIterator<Triple> it = g.find(Node.ANY,
-                                       node("brokenPredicate"), Node.ANY);
-                       txnRollback(g);
-                       it.removeNext();
-                       txnBegin(g);
-                       assertFalse(g.find(Node.ANY, Node.ANY, 
Node.ANY).hasNext());
-                       txnRollback(g);
-               } catch (UnsupportedOperationException e)
-               {
-                       // No Iterator.remove
-               }
-       }
-
-       @ContractTest
-       public void testBrokenObject()
-       {
-               Graph g = graphWith(producer.newInstance(), "x brokenObject y");
-
-               try
-               {
-                       txnBegin(g);
-                       ExtendedIterator<Triple> it = g.find(Node.ANY, 
Node.ANY, node("y"));
-                       txnRollback(g);
-                       it.removeNext();
-                       txnBegin(g);
-                       assertFalse(g.find(Node.ANY, Node.ANY, 
Node.ANY).hasNext());
-                       txnRollback(g);
-
-               } catch (UnsupportedOperationException e)
-               {
-                       // No Iterator.remove
-               }
-
-       }
-
-}
diff --git 
a/jena-core/src/test/java/org/apache/jena/graph/compose/test/TestMultiUnion.java
 
b/jena-core/src/test/java/org/apache/jena/graph/compose/test/TestMultiUnion.java
index ef8b3669a1..50d13c3565 100755
--- 
a/jena-core/src/test/java/org/apache/jena/graph/compose/test/TestMultiUnion.java
+++ 
b/jena-core/src/test/java/org/apache/jena/graph/compose/test/TestMultiUnion.java
@@ -47,131 +47,129 @@ public class TestMultiUnion extends AbstractTestGraph
     public TestMultiUnion( String s ) {
         super( s );
     }
-    
+
     // External signature methods
     //////////////////////////////////
 
     public static TestSuite suite()
-        { return new TestSuite( TestMultiUnion.class ); }   
-    
+        { return new TestSuite( TestMultiUnion.class ); }
+
     @Override
     public Graph getNewGraph()
         {
         Graph gBase = graphWith( "" ), g1 = graphWith( "" );
-        return new MultiUnion( new Graph[] {gBase, g1} ); 
+        return new MultiUnion( new Graph[] {gBase, g1} );
         }
 
+
     public void testEmptyGraph() {
         Graph m = new MultiUnion();
-        Graph g0 = graphWith( "x p y");
-        
         assertEquals( "Empty model should have size zero", 0, m.size() );
-        assertFalse( "Empty model should not contain another graph", 
m.dependsOn( g0 ) );
     }
-    
+
     public void testGraphSize1() {
         Graph g0 = graphWith( "x p y" );
         Graph g1 = graphWith( "x p z; z p zz" );        // disjoint with g0
         Graph g2 = graphWith( "x p y; z p a" );         // intersects with g1
-        
+
         Graph m01 = new MultiUnion( new Graph[] {g0, g1} );
         Graph m10 = new MultiUnion( new Graph[] {g1, g0} );
         Graph m12 = new MultiUnion( new Graph[] {g1, g2} );
         Graph m21 = new MultiUnion( new Graph[] {g2, g1} );
         Graph m02 = new MultiUnion( new Graph[] {g0, g2} );
         Graph m20 = new MultiUnion( new Graph[] {g2, g0} );
-        
+
         Graph m00 = new MultiUnion( new Graph[] {g0, g0} );
-        
+
         int s0 = g0.size();
         int s1 = g1.size();
         int s2 = g2.size();
-        
+
         assertEquals( "Size of union of g0 and g1 not correct", s0+s1, 
m01.size() );
         assertEquals( "Size of union of g1 and g0 not correct", s0+s1, 
m10.size() );
-        
+
         assertEquals( "Size of union of g1 and g2 not correct", s1+s2, 
m12.size() );
         assertEquals( "Size of union of g2 and g1 not correct", s1+s2, 
m21.size() );
 
         assertEquals( "Size of union of g0 and g2 not correct", s0+s2 - 1, 
m02.size() );
         assertEquals( "Size of union of g2 and g0 not correct", s0+s2 - 1, 
m20.size() );
-        
+
         assertEquals( "Size of union of g0 with itself not correct", s0, 
m00.size() );
     }
-    
-    
+
+
     public void testGraphSize2() {
         Graph g0 = graphWith( "x p y" );
         Graph g1 = graphWith( "x p z; z p zz" );        // disjoint with g0
         Graph g2 = graphWith( "x p y; z p a" );         // intersects with g1
-        
+
         Graph m01 = new MultiUnion( iterateOver( g0, g1 ) );
         Graph m10 = new MultiUnion( iterateOver( g1, g0 ) );
         Graph m12 = new MultiUnion( iterateOver( g1, g2 ) );
         Graph m21 = new MultiUnion( iterateOver( g2, g1 ) );
         Graph m02 = new MultiUnion( iterateOver( g0, g2 ) );
         Graph m20 = new MultiUnion( iterateOver( g2, g0 ) );
-        
+
         Graph m00 = new MultiUnion( iterateOver( g0, g0 ) );
-        
+
         int s0 = g0.size();
         int s1 = g1.size();
         int s2 = g2.size();
-        
+
         assertEquals( "Size of union of g0 and g1 not correct", s0+s1, 
m01.size() );
         assertEquals( "Size of union of g1 and g0 not correct", s0+s1, 
m10.size() );
-        
+
         assertEquals( "Size of union of g1 and g2 not correct", s1+s2, 
m12.size() );
         assertEquals( "Size of union of g2 and g1 not correct", s1+s2, 
m21.size() );
 
         assertEquals( "Size of union of g0 and g2 not correct", s0+s2 - 1, 
m02.size() );
         assertEquals( "Size of union of g2 and g0 not correct", s0+s2 - 1, 
m20.size() );
-        
+
         assertEquals( "Size of union of g0 with itself not correct", s0, 
m00.size() );
     }
-    
-    
+
+
     public void testGraphAddSize() {
         Graph g0 = graphWith( "x p y" );
         Graph g1 = graphWith( "x p z; z p zz" );        // disjoint with g0
         Graph g2 = graphWith( "x p y; z p a" );         // intersects with g1
-        
+
         int s0 = g0.size();
         int s1 = g1.size();
         int s2 = g2.size();
-        
+
         MultiUnion m0 = new MultiUnion( new Graph[] {g0} );
-        
+
         assertEquals( "Size of union of g0 not correct", s0, m0.size() );
         m0.addGraph( g1 );
         assertEquals( "Size of union of g1 and g0 not correct", s0+s1, 
m0.size() );
-        
+
         m0.addGraph( g2 );
         assertEquals( "Size of union of g0, g1 and g2 not correct", s0+s1+s2 
-1, m0.size() );
-        
+
         m0.removeGraph( g1 );
         assertEquals( "Size of union of g0 and g2 not correct", s0+s2 -1, 
m0.size() );
-        
+
         m0.removeGraph( g0 );
         assertEquals( "Size of union of g2 not correct", s2, m0.size() );
-        
+
         // remove again
         m0.removeGraph( g0 );
         assertEquals( "Size of union of g2 not correct", s2, m0.size() );
-        
+
         m0.removeGraph( g2 );
         assertEquals( "Size of empty union not correct", 0, m0.size() );
-        
+
     }
-    
-    
+
+
     public void testAdd() {
         Graph g0 = graphWith( "x p y" );
         Graph g1 = graphWith( "x p z; z p zz" );        // disjoint with g0
         Graph g2 = graphWith( "x p y; z p a" );         // intersects with g1
-        
+
         MultiUnion m = new MultiUnion( new Graph[] {g0, g1} );
-        
+
         int s0 = g0.size();
         int s1 = g1.size();
         int s2 = g2.size();
@@ -179,25 +177,25 @@ public class TestMultiUnion extends AbstractTestGraph
 
         // add a triple to the union
         m.add( triple( "a q b" ) );
-        
+
         assertEquals( "m.size should have increased by one", m0 + 1, m.size() 
);
         assertEquals( "g0.size should have increased by one", s0 + 1, 
g0.size() );
         assertEquals( "g1 size should be constant", s1, g1.size() );
-        
+
         // change the designated receiver and try again
         m.setBaseGraph( g1 );
-        
+
         s0 = g0.size();
         s1 = g1.size();
         s2 = g2.size();
         m0 = m.size();
-        
+
         m.add( triple( "a1 q b1" ));
 
         assertEquals( "m.size should have increased by one", m0 + 1, m.size() 
);
         assertEquals( "g0 size should be constant", s0, g0.size() );
         assertEquals( "g1.size should have increased by one", s1 + 1, 
g1.size() );
-        
+
         // check that we can't make g2 the designated updater
         boolean expected = false;
         try {
@@ -208,16 +206,16 @@ public class TestMultiUnion extends AbstractTestGraph
         }
         assertTrue( "Should not have been able to make g2 the updater", 
expected );
     }
-    
-    
+
+
     public void testDelete() {
         Graph g0 = graphWith( "x p y" );
         Graph g1 = graphWith( "x p z; z p zz" );        // disjoint with g0
-        
+
         MultiUnion m = new MultiUnion( new Graph[] {g0, g1} );
-        
+
         checkDeleteSizes( 1, 2, 3, g0, g1, m );
-        
+
         m.delete( triple( "x p y") );
         checkDeleteSizes( 0, 2, 2, g0, g1, m );
 
@@ -232,44 +230,44 @@ public class TestMultiUnion extends AbstractTestGraph
         m.delete( triple( "z p zz") );
         checkDeleteSizes( 0, 0, 0, g0, g1, m );
     }
-    
-    
+
+
     public void testContains() {
         Graph g0 = graphWith( "x p y" );
         Graph g1 = graphWith( "x p z; z p zz" );        // disjoint with g0
-        
+
         MultiUnion m = new MultiUnion( new Graph[] {g0, g1} );
- 
-        assertTrue( "m should contain triple", m.contains( triple( "x p y 
")));       
-        assertTrue( "m should contain triple", m.contains( triple( "x p z 
")));       
-        assertTrue( "m should contain triple", m.contains( triple( "z p zz 
")));       
-        
-        assertFalse( "m should not contain triple", m.contains( triple( "zz p 
z ")));       
+
+        assertTrue( "m should contain triple", m.contains( triple( "x p y ")));
+        assertTrue( "m should contain triple", m.contains( triple( "x p z ")));
+        assertTrue( "m should contain triple", m.contains( triple( "z p zz 
")));
+
+        assertFalse( "m should not contain triple", m.contains( triple( "zz p 
z ")));
     }
-    
-    
+
+
     /* Test using a model to wrap a multi union */
     public void testModel()  {
         Graph g0 = graphWith( "x p y" );
         MultiUnion u = new MultiUnion( new Graph[] {g0} );
-        
+
         Model m = ModelFactory.createModelForGraph( u );
-        
+
         assertEquals( "Model size not correct", 1, m.size() );
-        
+
         Graph g1 = graphWith( "x p z; z p zz" );        // disjoint with g0
-        u.addGraph( g1 );        
-        
+        u.addGraph( g1 );
+
         assertEquals( "Model size not correct", 3, m.size() );
-        
+
         // adds one more statement to the model
         m.read( getFileName("ontology/list0.rdf") );
         assertEquals( "Model size not correct", 4, m.size() );
-        
+
         // debug m.write( System.out );
     }
-    
-    
+
+
     // Internal implementation methods
     //////////////////////////////////
 
@@ -278,7 +276,7 @@ public class TestMultiUnion extends AbstractTestGraph
         assertEquals( "Delete check: g1 size", s1, g1.size() );
         assertEquals( "Delete check: m size", m0, m.size() );
     }
-    
+
     protected <T> Iterator<T> iterateOver( T x0 ) {
         List<T> l = new ArrayList<>();
         l.add( x0 );
@@ -297,9 +295,9 @@ public class TestMultiUnion extends AbstractTestGraph
         l.add( x2 );
         return l.iterator();
     }
-    
-    
-    
+
+
+
     
//==============================================================================
     // Inner class definitions
     
//==============================================================================
diff --git 
a/jena-core/src/test/java/org/apache/jena/graph/impl/CollectionGraph_CS.java 
b/jena-core/src/test/java/org/apache/jena/graph/impl/CollectionGraph_CS.java
deleted file mode 100644
index f9e123c358..0000000000
--- a/jena-core/src/test/java/org/apache/jena/graph/impl/CollectionGraph_CS.java
+++ /dev/null
@@ -1,67 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.jena.graph.impl;
-
-import static org.apache.jena.testing_framework.GraphHelper.memGraph;
-
-import java.util.HashSet;
-
-import org.apache.jena.graph.Graph ;
-import org.apache.jena.graph.Triple ;
-import org.apache.jena.testing_framework.AbstractGraphProducer;
-import org.junit.runner.RunWith;
-import org.xenei.junit.contract.Contract;
-import org.xenei.junit.contract.ContractImpl;
-import org.xenei.junit.contract.ContractSuite;
-import org.xenei.junit.contract.IProducer;
-
-@SuppressWarnings("removal")
-@RunWith(ContractSuite.class)
-@ContractImpl(CollectionGraph.class)
-public class CollectionGraph_CS {
-
-       protected IProducer<CollectionGraph> graphProducer;
-
-       public CollectionGraph_CS() {
-               graphProducer = new AbstractGraphProducer<CollectionGraph>() {
-
-                       @Override
-                       protected CollectionGraph createNewGraph() {
-                               return new CollectionGraph( new 
HashSet<Triple>() );
-                       }
-
-                       @Override
-                       public Graph[] getDependsOn(Graph d) {
-                               return null;
-                       }
-
-                       @Override
-                       public Graph[] getNotDependsOn(Graph g) {
-                               return new Graph[] { memGraph() };
-                       }
-
-               };
-       }
-
-       @Contract.Inject
-       public final IProducer<CollectionGraph> getCollectionTestProducer() {
-               return graphProducer;
-       }
-
-}
diff --git 
a/jena-core/src/test/java/org/apache/jena/reasoner/rulesys/test/FRuleEngineIFactoryTest.java
 
b/jena-core/src/test/java/org/apache/jena/reasoner/rulesys/test/FRuleEngineIFactoryTest.java
index 29630f82ea..51b219aee9 100644
--- 
a/jena-core/src/test/java/org/apache/jena/reasoner/rulesys/test/FRuleEngineIFactoryTest.java
+++ 
b/jena-core/src/test/java/org/apache/jena/reasoner/rulesys/test/FRuleEngineIFactoryTest.java
@@ -127,6 +127,7 @@ public class FRuleEngineIFactoryTest extends TestCase {
         @Override
         public Iterator<Derivation> getDerivation(Triple triple) { return 
null; }
 
+        @SuppressWarnings("removal")
         @Override
         public boolean dependsOn(Graph other) { return false; }
 
diff --git 
a/jena-examples/src/main/java/arq/examples/riot/ExRIOT5_StreamRDFCollect.java 
b/jena-examples/src/main/java/arq/examples/riot/ExRIOT5_StreamRDFCollect.java
index 97b1ecf39b..df76cd4054 100644
--- 
a/jena-examples/src/main/java/arq/examples/riot/ExRIOT5_StreamRDFCollect.java
+++ 
b/jena-examples/src/main/java/arq/examples/riot/ExRIOT5_StreamRDFCollect.java
@@ -28,8 +28,6 @@ import org.apache.jena.riot.lang.CollectorStreamRDF;
  * Suitable for single-threaded parsing, for use with small data or distributed
  * computing frameworks (e.g. Hadoop) where the overhead of creating many 
threads
  * is significant.
- *
- * @see CollectorStreamBase
  */
 public class ExRIOT5_StreamRDFCollect {
 
diff --git 
a/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/UpdateBuilderExampleTests.java
 
b/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/UpdateBuilderExampleTests.java
index 2834e6ea15..b53b3818f7 100644
--- 
a/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/UpdateBuilderExampleTests.java
+++ 
b/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/UpdateBuilderExampleTests.java
@@ -24,20 +24,12 @@ import java.util.ArrayList;
 import java.util.List;
 
 import org.apache.jena.datatypes.xsd.XSDDatatype;
-import org.apache.jena.graph.Graph;
 import org.apache.jena.graph.Node;
 import org.apache.jena.graph.NodeFactory;
 import org.apache.jena.graph.Triple;
-import org.apache.jena.graph.impl.CollectionGraph;
 import org.apache.jena.query.Dataset;
 import org.apache.jena.query.DatasetFactory;
-import org.apache.jena.rdf.model.Literal;
-import org.apache.jena.rdf.model.Model;
-import org.apache.jena.rdf.model.ModelFactory;
-import org.apache.jena.rdf.model.Property;
-import org.apache.jena.rdf.model.RDFNode;
-import org.apache.jena.rdf.model.Resource;
-import org.apache.jena.rdf.model.ResourceFactory;
+import org.apache.jena.rdf.model.*;
 import org.apache.jena.sparql.vocabulary.FOAF;
 import org.apache.jena.update.UpdateAction;
 import org.apache.jena.update.UpdateRequest;
@@ -59,13 +51,11 @@ public class UpdateBuilderExampleTests {
     private static final String NS_prefix = "http://example.org/ns#";;
 
     private List<Triple> triples;
-    private Graph g;
     private Model m;
 
     public UpdateBuilderExampleTests() {
         triples = new ArrayList<Triple>();
-        g = new CollectionGraph(triples);
-        m = ModelFactory.createModelForGraph(g);
+        m = ModelFactory.createDefaultModel();
     }
 
     @Before
diff --git 
a/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/UpdateBuilderTest.java
 
b/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/UpdateBuilderTest.java
index 6856651b2a..fcdfb9de39 100644
--- 
a/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/UpdateBuilderTest.java
+++ 
b/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/UpdateBuilderTest.java
@@ -24,17 +24,10 @@ import java.util.ArrayList;
 import java.util.Collection;
 import java.util.List;
 
-import org.apache.jena.graph.Graph;
 import org.apache.jena.graph.Node;
 import org.apache.jena.graph.NodeFactory;
 import org.apache.jena.graph.Triple;
-import org.apache.jena.graph.impl.CollectionGraph;
-import org.apache.jena.rdf.model.Literal;
-import org.apache.jena.rdf.model.Model;
-import org.apache.jena.rdf.model.ModelFactory;
-import org.apache.jena.rdf.model.Property;
-import org.apache.jena.rdf.model.Resource;
-import org.apache.jena.rdf.model.ResourceFactory;
+import org.apache.jena.rdf.model.*;
 import org.apache.jena.sparql.core.Quad;
 import org.apache.jena.sparql.core.Var;
 import org.apache.jena.sparql.modify.request.UpdateDataDelete;
@@ -66,7 +59,7 @@ public class UpdateBuilderTest {
         builder.addWhere( s, "ex:predicat2", "?o" );
         builder.build();
     }
-    
+
     @Test
     public void testInsert_SPO() {
         UpdateBuilder builder = new UpdateBuilder();
@@ -495,34 +488,34 @@ public class UpdateBuilderTest {
 
     /*
      *         Example 1: Adding some triples to a graph
-    
+
     This snippet describes two RDF triples to be inserted into the default 
graph of the Graph Store.
-    
+
     PREFIX dc: <http://purl.org/dc/elements/1.1/>
     INSERT DATA
     {
       <http://example/book1> dc:title "A new book" ;
                              dc:creator "A.N.Other" .
     }
-    
+
     Data before:
-    
+
     # Default graph
     @prefix dc: <http://purl.org/dc/elements/1.1/> .
     @prefix ns: <http://example.org/ns#> .
-    
+
     <http://example/book1> ns:price 42 .
-    
+
     Data after:
-    
+
     # Default graph
     @prefix dc: <http://purl.org/dc/elements/1.1/> .
     @prefix ns: <http://example.org/ns#> .
-    
+
     <http://example/book1> ns:price 42 .
     <http://example/book1> dc:title "A new book" .
     <http://example/book1> dc:creator "A.N.Other" .
-    
+
      */
     @Test
     public void example1() {
@@ -534,8 +527,7 @@ public class UpdateBuilderTest {
 
         List<Triple> triples = new ArrayList<Triple>();
         triples.add(Triple.create(n, priceN, priceV));
-        Graph g = new CollectionGraph(triples);
-        Model m = ModelFactory.createModelForGraph(g);
+        Model m = ModelFactory.createDefaultModel();
         m.setNsPrefix("dc", DC_11.NS);
         m.setNsPrefix("ns", "http://example.org/ns#";);
 
diff --git 
a/jena-permissions/src/main/java/org/apache/jena/permissions/graph/impl/SecuredGraphImpl.java
 
b/jena-permissions/src/main/java/org/apache/jena/permissions/graph/impl/SecuredGraphImpl.java
index 8b530c0304..7551baa124 100644
--- 
a/jena-permissions/src/main/java/org/apache/jena/permissions/graph/impl/SecuredGraphImpl.java
+++ 
b/jena-permissions/src/main/java/org/apache/jena/permissions/graph/impl/SecuredGraphImpl.java
@@ -170,6 +170,7 @@ public class SecuredGraphImpl extends SecuredItemImpl 
implements SecuredGraph {
      * @throws AuthenticationRequiredException if user is not authenticated 
and is
      *                                         required to be.
      */
+    @SuppressWarnings("removal")
     @Override
     public boolean dependsOn(final Graph other) throws ReadDeniedException, 
AuthenticationRequiredException {
         if (checkSoftRead()) {
diff --git 
a/jena-permissions/src/main/java/org/apache/jena/permissions/model/impl/SecuredStatementTermImpl.java
 
b/jena-permissions/src/main/java/org/apache/jena/permissions/model/impl/SecuredStatementTermImpl.java
index fac6f7afc4..9712b50af5 100644
--- 
a/jena-permissions/src/main/java/org/apache/jena/permissions/model/impl/SecuredStatementTermImpl.java
+++ 
b/jena-permissions/src/main/java/org/apache/jena/permissions/model/impl/SecuredStatementTermImpl.java
@@ -29,8 +29,8 @@ public class SecuredStatementTermImpl extends 
SecuredRDFNodeImpl implements Secu
     /**
      * get a SecuredStatement
      *
-     * @param securedModel The secured model that provides the security context
-     * @param stmt         The statement to secure.
+     * @param securedModel     The secured model that provides the security 
context
+     * @param stmtTerm         The statement term to secure.
      * @return the SecuredStatement
      */
     public static SecuredStatementTerm getInstance(final SecuredModel 
securedModel, final StatementTerm stmtTerm) {
diff --git 
a/jena-permissions/src/test/java/org/apache/jena/permissions/graph/MemGraphTest.java
 
b/jena-permissions/src/test/java/org/apache/jena/permissions/graph/MemGraphTest.java
index 41fdb44c28..5b38d26432 100644
--- 
a/jena-permissions/src/test/java/org/apache/jena/permissions/graph/MemGraphTest.java
+++ 
b/jena-permissions/src/test/java/org/apache/jena/permissions/graph/MemGraphTest.java
@@ -6,9 +6,9 @@
  * to you under the Apache License, Version 2.0 (the
  * "License"); you may not use this file except in compliance
  * with the License. You may obtain a copy of the License at
- * 
+ *
  * http://www.apache.org/licenses/LICENSE-2.0
- * 
+ *
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@@ -139,6 +139,7 @@ public class MemGraphTest {
         }
     }
 
+    @SuppressWarnings("removal")
     @Test
     public void testDependsOn() throws Exception {
         try {

Reply via email to