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

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

commit c7bafa4556392699f212f36157da07615a1ff3c5
Author: Andy Seaborne <[email protected]>
AuthorDate: Tue Feb 26 21:50:19 2019 +0000

    Make deleteAny algorithm publicly available.
---
 .../java/org/apache/jena/sparql/core/DatasetGraphBase.java  | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git 
a/jena-arq/src/main/java/org/apache/jena/sparql/core/DatasetGraphBase.java 
b/jena-arq/src/main/java/org/apache/jena/sparql/core/DatasetGraphBase.java
index ed120b9..9b4f4e5 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/core/DatasetGraphBase.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/core/DatasetGraphBase.java
@@ -101,16 +101,19 @@ abstract public class DatasetGraphBase implements 
DatasetGraph
     @Override
     public void delete(Node g, Node s, Node p, Node o)  { delete(new 
Quad(g,s,p,o)) ; }
     
-    private static final int DeleteBufferSize = 1000 ;
     @Override
     /** Simple implementation but done without assuming iterator.remove() */
     public void deleteAny(Node g, Node s, Node p, Node o) {
-        // Delete in slices rather than assume .remove() on the iterator is
-        // implemented.
+        deleteAny(this, g, s, p, o);
+    }
+    
+    private static final int DeleteBufferSize = 1000 ;
+    public static void deleteAny(DatasetGraph dsg, Node g, Node s, Node p, 
Node o) {
+        // Delete in slices rather than assume .remove() on the iterator is 
implemented.
         // We keep executing find(g, s, p, o) until we don't get a full slice.
         Quad[] buffer = new Quad[DeleteBufferSize];
         while (true) {
-            Iterator<Quad> iter = find(g, s, p, o);
+            Iterator<Quad> iter = dsg.find(g, s, p, o);
             // Get a slice
             int len = 0;
             for ( ; len < DeleteBufferSize ; len++ ) {
@@ -120,7 +123,7 @@ abstract public class DatasetGraphBase implements 
DatasetGraph
             }
             // Delete them.
             for ( int i = 0 ; i < len ; i++ ) {
-                delete(buffer[i]);
+                dsg.delete(buffer[i]);
                 buffer[i] = null;
             }
             // Finished?

Reply via email to