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 2025/12/09 10:06:03 UTC
(jena) 03/05: Add Quad.matches. Prefer Quad.create.
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 255f75b78c8cca5c376b77aeda18f53ce028b08b
Author: Andy Seaborne <an...@apache.org>
AuthorDate: Thu Dec 4 15:09:55 2025 +0000
Add Quad.matches. Prefer Quad.create.
---
.../org/apache/jena/riot/system/StreamRDFLib.java | 2 +-
.../apache/jena/sparql/algebra/op/OpQuadBlock.java | 2 +-
.../jena/sparql/algebra/op/OpQuadPattern.java | 2 +-
.../apache/jena/sparql/core/DatasetGraphBase.java | 4 +-
.../jena/sparql/core/DatasetGraphBaseFind.java | 16 +--
.../java/org/apache/jena/sparql/core/Quad.java | 88 +++++++++----
.../org/apache/jena/sparql/core/Substitute.java | 2 +-
.../jena/sparql/core/mem/DatasetGraphInMemory.java | 2 +-
.../jena/sparql/core/mem/OrderedTupleTable.java | 2 +-
.../apache/jena/sparql/graph/NodeTransformLib.java | 2 +-
.../org/apache/jena/sparql/modify/TemplateLib.java | 4 +-
.../jena/sparql/modify/request/QuadAccSink.java | 2 +-
.../jena/sparql/modify/request/QuadDataAcc.java | 2 +-
.../jena/sparql/sse/builders/BuilderGraph.java | 2 +-
.../org/apache/jena/sparql/syntax/Template.java | 2 +-
.../src/main/java/org/apache/jena/system/G.java | 2 +-
.../apache/jena/riot/lang/TestCollectorStream.java | 2 +-
.../apache/jena/riot/lang/TestParserFactory.java | 4 +-
.../sparql/core/AbstractDatasetGraphTests.java | 2 +-
.../jena/sparql/core/DatasetGraphSimpleMem.java | 10 +-
.../org/apache/jena/sparql/core/TS_SparqlCore.java | 3 +-
.../java/org/apache/jena/sparql/core/TestQuad.java | 136 +++++++++++++++++++++
.../core/assembler/TestInMemDatasetAssembler.java | 2 +-
.../sparql/modify/AbstractTestUpdateGraph.java | 6 +-
.../org/apache/jena/sparql/util/TestFmtUtils.java | 4 +-
.../example/streaming/StreamRDFToConnection.java | 2 +-
.../jena/arq/querybuilder/UpdateBuilder.java | 4 +-
.../arq/querybuilder/rewriters/OpRewriter.java | 2 +-
.../updatebuilder/CollectionQuadHolder.java | 2 +-
.../updatebuilder/ModelQuadHolder.java | 2 +-
.../updatebuilder/QuadCollectionHolder.java | 2 +-
.../updatebuilder/QuadIteratorBuilder.java | 2 +-
.../updatebuilder/SingleQuadHolder.java | 8 +-
.../arq/querybuilder/AbstractQueryBuilderTest.java | 14 +--
.../jena/arq/querybuilder/ConvertersTest.java | 4 +-
.../jena/arq/querybuilder/UpdateBuilderTest.java | 20 +--
.../updatebuilder/CollectionQuadHolderTest.java | 32 ++---
.../updatebuilder/ModelQuadHolderTest.java | 8 +-
.../updatebuilder/QBQuadHolderTest.java | 24 ++--
.../updatebuilder/SingleQuadHolderTest.java | 12 +-
.../updatebuilder/WhereQuadHolderTest.java | 24 ++--
.../jena/query/text/changes/ChangesBatched.java | 2 +-
.../jena/query/text/changes/ChangesCapture.java | 2 +-
43 files changed, 321 insertions(+), 150 deletions(-)
diff --git a/jena-arq/src/main/java/org/apache/jena/riot/system/StreamRDFLib.java b/jena-arq/src/main/java/org/apache/jena/riot/system/StreamRDFLib.java
index 4c71f3b70c..c0027b0963 100644
--- a/jena-arq/src/main/java/org/apache/jena/riot/system/StreamRDFLib.java
+++ b/jena-arq/src/main/java/org/apache/jena/riot/system/StreamRDFLib.java
@@ -147,7 +147,7 @@ public class StreamRDFLib
{ super(base); this.gn = gn; }
@Override public void triple(Triple triple)
- { other.quad(new Quad(gn, triple)); }
+ { other.quad(Quad.create(gn, triple)); }
}
private static class ParserOutputSinkTriples extends StreamRDFBase
diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/algebra/op/OpQuadBlock.java b/jena-arq/src/main/java/org/apache/jena/sparql/algebra/op/OpQuadBlock.java
index 59e614ebef..f1cf632996 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/algebra/op/OpQuadBlock.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/algebra/op/OpQuadBlock.java
@@ -61,7 +61,7 @@ public class OpQuadBlock extends Op0
public static OpQuadBlock create(Node quadNode, BasicPattern triples) {
QuadPattern qp = new QuadPattern();
for ( Triple t : triples ) {
- qp.add(new Quad(quadNode, t));
+ qp.add(Quad.create(quadNode, t));
}
return new OpQuadBlock(qp);
}
diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/algebra/op/OpQuadPattern.java b/jena-arq/src/main/java/org/apache/jena/sparql/algebra/op/OpQuadPattern.java
index 285eeab1bf..a62cfae32d 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/algebra/op/OpQuadPattern.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/algebra/op/OpQuadPattern.java
@@ -60,7 +60,7 @@ public class OpQuadPattern extends Op0
if ( quads == null ) {
quads = new QuadPattern();
for ( Triple t : triples )
- quads.add(new Quad(graphNode, t));
+ quads.add(Quad.create(graphNode, t));
}
}
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 9a89e09c65..9cb98d41bc 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
@@ -91,9 +91,9 @@ abstract public class DatasetGraphBase implements DatasetGraph
public void delete(Quad quad) { throw new UnsupportedOperationException("DatasetGraph.delete(Quad)") ; }
@Override
- public void add(Node g, Node s, Node p, Node o) { add(new Quad(g,s,p,o)) ; }
+ public void add(Node g, Node s, Node p, Node o) { add(Quad.create(g,s,p,o)) ; }
@Override
- public void delete(Node g, Node s, Node p, Node o) { delete(new Quad(g,s,p,o)) ; }
+ public void delete(Node g, Node s, Node p, Node o) { delete(Quad.create(g,s,p,o)) ; }
@Override
/** Simple implementation but done without assuming iterator.remove() */
diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/core/DatasetGraphBaseFind.java b/jena-arq/src/main/java/org/apache/jena/sparql/core/DatasetGraphBaseFind.java
index e58cf9e508..c004f9930d 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/core/DatasetGraphBaseFind.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/core/DatasetGraphBaseFind.java
@@ -27,19 +27,19 @@ import org.apache.jena.graph.Node ;
import org.apache.jena.graph.Triple ;
import org.apache.jena.sparql.core.mem.DatasetGraphInMemory ;
-/**
- * DatasetGraph framework.
- * This class contains a convenience implementation of find that maps to a split between
+/**
+ * DatasetGraph framework.
+ * This class contains a convenience implementation of find that maps to a split between
* defaultGraph/named graphs.
* @see DatasetGraphTriplesQuads
* @see DatasetGraphCollection
* @see DatasetGraphOne
* @see DatasetGraphInMemory
*/
-abstract public class DatasetGraphBaseFind extends DatasetGraphBase
+abstract public class DatasetGraphBaseFind extends DatasetGraphBase
{
protected DatasetGraphBaseFind() {}
-
+
/** Implementation of find based on splitting into triples (default graph) and quads (named graph) */
@Override
public Iterator<Quad> find(Node g, Node s, Node p, Node o) {
@@ -49,7 +49,7 @@ abstract public class DatasetGraphBaseFind extends DatasetGraphBase
return findNG(g, s, p, o) ;
return findAny(s, p, o) ;
}
-
+
@Override
public Iterator<Quad> findNG(Node g, Node s, Node p , Node o) {
Iterator<Quad> qIter ;
@@ -104,7 +104,7 @@ abstract public class DatasetGraphBaseFind extends DatasetGraphBase
* For example, it may be possible to avoid "distinct".
*/
public Iterator<Quad> findQuadsInUnionGraph(Node s, Node p , Node o) {
- return findUnionGraphTriples(s,p,o).map(t -> new Quad(Quad.unionGraph, t)).iterator() ;
+ return findUnionGraphTriples(s,p,o).map(t -> Quad.create(Quad.unionGraph, t)).iterator() ;
}
/** Find matches in the notional union of all named graphs - return as triples.
@@ -120,7 +120,7 @@ abstract public class DatasetGraphBaseFind extends DatasetGraphBase
/** Find in a specific named graph - {@code g} is a ground term (IRI or bNode), not a wild card (or null). */
protected abstract Iterator<Quad> findInSpecificNamedGraph(Node g, Node s, Node p , Node o) ;
-
+
/** Find in any named graph - return quads.
* If a triple matches in two different graph, return a quad for each.
* See {@link #findInUnionGraph} for matching without duplicate triples.
diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/core/Quad.java b/jena-arq/src/main/java/org/apache/jena/sparql/core/Quad.java
index a04f2ed78c..9153035689 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/core/Quad.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/core/Quad.java
@@ -48,20 +48,22 @@ public class Quad implements Serializable
* (and the default graph when parsing N-Quads or TriG)
* Not for access to the default graph by name - use Quad.defaultGraphIRI.
*/
- public static final Node tripleInQuad = null;
+ public static final Node tripleInQuad = null;
/** A {@code Quad} that has a wildcard in all fields. */
public static final Quad ANY = Quad.create( Node.ANY, Node.ANY, Node.ANY, Node.ANY );
private final Node graph, subject, predicate, object;
- public Quad(Node graph, Triple triple)
- {
+ /** @deprecated Prefer {@link Quad#create(Node, Triple)}. */
+ @Deprecated
+ public Quad(Node graph, Triple triple) {
this(graph, triple.getSubject(), triple.getPredicate(), triple.getObject());
}
- public Quad(Node g, Node s, Node p, Node o)
- {
+ /** @deprecated Prefer {@link Quad#create(Node, Node, Node, Node)}. */
+ @Deprecated
+ public Quad(Node g, Node s, Node p, Node o) {
// Null means it's a triple really.
// if ( g == null )
// throw new UnsupportedOperationException("Quad: graph cannot be null");
@@ -77,8 +79,40 @@ public class Quad implements Serializable
this.object = o;
}
- public static Quad create(Node g, Node s, Node p, Node o) { return new Quad(g,s,p,o); }
- public static Quad create(Node g, Triple t) { return new Quad(g,t); }
+ /**
+ * Create a {@code Quad}. Nulls are not allowed for subject/predicate/object.
+ * <p>
+ * Null for graph means this is a triple, but for type checking reasons, it is
+ * being carried as a {@code Quad}.
+ */
+ public static Quad create(Node g, Node s, Node p, Node o) {
+ return new Quad(g, s, p, o);
+ }
+
+ /**
+ * Create a {@code Quad}. Nulls for for subject/predicate/object are converted to
+ * {@link Node#ANY}.
+ * <p>
+ * Null for graph means this is a triple, but for type checking
+ * reasons, it is being carried as a {@code Quad}.
+ */
+ public static Quad createMatch(Node g, Node s, Node p, Node o) {
+ return Quad.create(g, nullToAny(s), nullToAny(p), nullToAny(o));
+ }
+
+ public static Quad create(Node g, Triple t) {
+ Objects.requireNonNull(t);
+ return new Quad(g, t);
+ }
+
+ private static Node anyToNull( Node n )
+ { return Node.ANY.equals( n ) ? null : n; }
+
+ private static Node nullToAny( Node n )
+ { return n == null ? Node.ANY : n; }
+
+ private static boolean isAny(Node n)
+ { return n == null || Node.ANY.equals(n); }
public final Node getGraph() { return graph; }
public final Node getSubject() { return subject; }
@@ -86,13 +120,9 @@ public class Quad implements Serializable
public final Node getObject() { return object; }
/**
- * Get as a triple - useful because quads often come in blocks for the same graph
+ * Get the subject/predicate/object as a triple.
*/
public Triple asTriple() {
- // Should we keep the triple around esp from the Quad(n,triple) constructor.
- // Still have s,p,o for quads.
- // Cost : one slot.
- // Saving - (re)creating triples.
return Triple.create(subject, predicate, object);
}
@@ -100,6 +130,30 @@ public class Quad implements Serializable
return subject.isConcrete() && predicate.isConcrete() && object.isConcrete() && (graph == null || graph.isConcrete());
}
+ /**
+ * Does this quad, match the other quad, allowing for wildcards.
+ * The wildcard node is {@link Node#ANY} and it matches any node, including a wildcard.
+ * Both this quad and the argument quad may contain wildcards,
+ * that is "matches" is symmetric:
+ * {@code this.matches(that) == that.matches(this)}.
+ */
+ public boolean matches(Quad other) {
+ return matches(other.getGraph(), other.getSubject(), other.getPredicate(), other.getObject());
+ }
+
+ public boolean matches(Node g, Node s, Node p, Node o) {
+ return matches(this.graph, g) && matches(this.subject, s) && matches(this.predicate, p) && matches(this.object, o);
+ }
+
+ /** Match with possible wildcards (Node.ANY) in either argument. */
+ private static boolean matches(Node patternNode, Node node) {
+ if ( isAny(patternNode) )
+ return true;
+ if ( isAny(node) )
+ return true;
+ return patternNode.sameTermAs(node);
+ }
+
/**
* Test whether this is a quad for the default graph (not the default graphs by
* explicit name)
@@ -220,16 +274,6 @@ public class Quad implements Serializable
return true;
}
- public boolean matches(Node g, Node s, Node p, Node o) {
- return nodeMatches(getGraph(), g) && nodeMatches(getSubject(), s) &&
- nodeMatches(getPredicate(), p) && nodeMatches(getObject(), o);
- }
-
- private static boolean nodeMatches(Node thisNode, Node otherNode) {
- // otherNode may be Node.ANY, and this works out.
- return otherNode.matches(thisNode);
- }
-
@Override
public String toString() {
String str = (graph==null)?"_":graph.toString();
diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/core/Substitute.java b/jena-arq/src/main/java/org/apache/jena/sparql/core/Substitute.java
index e0a71b7aab..1b5bc5b845 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/core/Substitute.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/core/Substitute.java
@@ -153,7 +153,7 @@ public class Substitute {
Quad q = quad;
if ( s1 != s || p1 != p || o1 != o || g1 != g )
- q = new Quad(g1, s1, p1, o1);
+ q = Quad.create(g1, s1, p1, o1);
return q;
}
diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/core/mem/DatasetGraphInMemory.java b/jena-arq/src/main/java/org/apache/jena/sparql/core/mem/DatasetGraphInMemory.java
index 7d0dc6935b..dee92c584f 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/core/mem/DatasetGraphInMemory.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/core/mem/DatasetGraphInMemory.java
@@ -346,7 +346,7 @@ public class DatasetGraphInMemory extends DatasetGraphTriplesQuads implements Tr
}
private Consumer<Graph> addGraph(final Node name) {
- return g -> g.find().mapWith(t -> new Quad(name, t)).forEach(this::add);
+ return g -> g.find().mapWith(t -> Quad.create(name, t)).forEach(this::add);
}
private final Consumer<Graph> removeGraph = g -> g.find().forEach(g::delete);
diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/core/mem/OrderedTupleTable.java b/jena-arq/src/main/java/org/apache/jena/sparql/core/mem/OrderedTupleTable.java
index c3c1bb20e6..7114cd5450 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/core/mem/OrderedTupleTable.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/core/mem/OrderedTupleTable.java
@@ -82,7 +82,7 @@ public abstract class OrderedTupleTable<TupleType, ConsumerType> implements Tupl
}
protected Quad unmap(final Node x1, final Node x2, final Node x3, final Node x4) {
- return apply(reverse, x1, x2, x3, x4, Quad::new);
+ return apply(reverse, x1, x2, x3, x4, Quad::create);
}
protected Consumer<Triple> map(final TConsumer3<Node> consumer) {
diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/graph/NodeTransformLib.java b/jena-arq/src/main/java/org/apache/jena/sparql/graph/NodeTransformLib.java
index cd7435b6bd..dd5ef41203 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/graph/NodeTransformLib.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/graph/NodeTransformLib.java
@@ -150,7 +150,7 @@ public class NodeTransformLib {
if ( !change )
return quad;
- return new Quad(g, s, p, o);
+ return Quad.create(g, s, p, o);
}
public static Table transform(Table table, NodeTransform transform) {
diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/modify/TemplateLib.java b/jena-arq/src/main/java/org/apache/jena/sparql/modify/TemplateLib.java
index bf2026174f..c89d959079 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/modify/TemplateLib.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/modify/TemplateLib.java
@@ -61,7 +61,7 @@ public class TemplateLib {
if ( dftGraph == null || Quad.isDefaultGraph(dftGraph) )
return quads ;
Stream<Quad> remappedStream = quads.stream().map(q->
- !q.isDefaultGraph() ? q : new Quad(dftGraph, q.getSubject(), q.getPredicate(), q.getObject())
+ !q.isDefaultGraph() ? q : Quad.create(dftGraph, q.getSubject(), q.getPredicate(), q.getObject())
) ;
return remappedStream.toList();
}
@@ -144,7 +144,7 @@ public class TemplateLib {
Quad q = quad;
if ( s1 != s || p1 != p || o1 != o || g1 != g )
- q = new Quad(g1, s1, p1, o1);
+ q = Quad.create(g1, s1, p1, o1);
Quad q2 = Substitute.substitute(q, b);
return q2;
diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/modify/request/QuadAccSink.java b/jena-arq/src/main/java/org/apache/jena/sparql/modify/request/QuadAccSink.java
index 52df7bac72..7be7cc4140 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/modify/request/QuadAccSink.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/modify/request/QuadAccSink.java
@@ -57,7 +57,7 @@ public class QuadAccSink implements TripleCollector, Closeable
public void addTriple(Triple triple)
{
check(triple) ;
- sink.send(new Quad(graphNode, triple)) ;
+ sink.send(Quad.create(graphNode, triple)) ;
}
@Override
diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/modify/request/QuadDataAcc.java b/jena-arq/src/main/java/org/apache/jena/sparql/modify/request/QuadDataAcc.java
index 4d992e1e14..8cf113401f 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/modify/request/QuadDataAcc.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/modify/request/QuadDataAcc.java
@@ -67,7 +67,7 @@ public class QuadDataAcc extends QuadDataAccSink implements TripleCollectorMark
@Override
public void addTriple(int index, Triple triple) {
check(triple);
- quads.add(index, new Quad(graphNode, triple));
+ quads.add(index, Quad.create(graphNode, triple));
}
@Override
diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/sse/builders/BuilderGraph.java b/jena-arq/src/main/java/org/apache/jena/sparql/sse/builders/BuilderGraph.java
index d25b79bf5c..6497ea0e8b 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/sse/builders/BuilderGraph.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/sse/builders/BuilderGraph.java
@@ -208,6 +208,6 @@ public class BuilderGraph {
Node s = BuilderNode.buildNode(list.get(1));
Node p = BuilderNode.buildNode(list.get(2));
Node o = BuilderNode.buildNode(list.get(3));
- return new Quad(g, s, p, o);
+ return Quad.create(g, s, p, o);
}
}
diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/syntax/Template.java b/jena-arq/src/main/java/org/apache/jena/sparql/syntax/Template.java
index bc5ab33ff5..fc74e713a9 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/syntax/Template.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/syntax/Template.java
@@ -85,7 +85,7 @@ public class Template {
if ( this.bgp != null ) {
List<Quad> quads = new ArrayList<>();
for ( Triple triple : this.bgp.getList() ) {
- quads.add(new Quad(Quad.defaultGraphNodeGenerated, triple));
+ quads.add(Quad.create(Quad.defaultGraphNodeGenerated, triple));
}
return quads;
}
diff --git a/jena-arq/src/main/java/org/apache/jena/system/G.java b/jena-arq/src/main/java/org/apache/jena/system/G.java
index 5f774dd433..5f39ce193a 100644
--- a/jena-arq/src/main/java/org/apache/jena/system/G.java
+++ b/jena-arq/src/main/java/org/apache/jena/system/G.java
@@ -937,7 +937,7 @@ public class G {
/** Convert an iterator of triples into quads for the specified graph name. */
public static Iter<Quad> triples2quads(Node graphNode, Iterator<Triple> iter) {
- return Iter.iter(iter).map(t -> new Quad(graphNode, t));
+ return Iter.iter(iter).map(t -> Quad.create(graphNode, t));
}
/**
diff --git a/jena-arq/src/test/java/org/apache/jena/riot/lang/TestCollectorStream.java b/jena-arq/src/test/java/org/apache/jena/riot/lang/TestCollectorStream.java
index 0286c2a95a..a5601f8572 100644
--- a/jena-arq/src/test/java/org/apache/jena/riot/lang/TestCollectorStream.java
+++ b/jena-arq/src/test/java/org/apache/jena/riot/lang/TestCollectorStream.java
@@ -56,7 +56,7 @@ public class TestCollectorStream {
List<Quad> results = new ArrayList<>();
out.start();
for ( int i = 1; i <= size; i++ ) {
- Quad q = new Quad(NodeFactory.createURI("http://graph"), NodeFactory.createBlankNode(),
+ Quad q = Quad.create(NodeFactory.createURI("http://graph"), NodeFactory.createBlankNode(),
NodeFactory.createURI("http://predicate"), NodeFactoryExtra.intToNode(i));
out.quad(q);
results.add(q);
diff --git a/jena-arq/src/test/java/org/apache/jena/riot/lang/TestParserFactory.java b/jena-arq/src/test/java/org/apache/jena/riot/lang/TestParserFactory.java
index e49405269a..4d313c0600 100644
--- a/jena-arq/src/test/java/org/apache/jena/riot/lang/TestParserFactory.java
+++ b/jena-arq/src/test/java/org/apache/jena/riot/lang/TestParserFactory.java
@@ -112,7 +112,7 @@ public class TestParserFactory
assertEquals(1, sink.quads.size());
Triple t = SSE.parseTriple("(<x> <p> <q>)");
- Quad q = new Quad(Quad.defaultGraphNodeGenerated, t);
+ Quad q = Quad.create(Quad.defaultGraphNodeGenerated, t);
assertEquals(q, last(sink.quads));
}
@@ -127,7 +127,7 @@ public class TestParserFactory
assertEquals(1, sink.quads.size());
Triple t = SSE.parseTriple("(<http://base/x> <http://base/p> <http://base/q>)");
- Quad q = new Quad(Quad.defaultGraphNodeGenerated, t);
+ Quad q = Quad.create(Quad.defaultGraphNodeGenerated, t);
assertEquals(q, last(sink.quads));
}
diff --git a/jena-arq/src/test/java/org/apache/jena/sparql/core/AbstractDatasetGraphTests.java b/jena-arq/src/test/java/org/apache/jena/sparql/core/AbstractDatasetGraphTests.java
index d8ae116cc1..dd92e26e2e 100644
--- a/jena-arq/src/test/java/org/apache/jena/sparql/core/AbstractDatasetGraphTests.java
+++ b/jena-arq/src/test/java/org/apache/jena/sparql/core/AbstractDatasetGraphTests.java
@@ -296,7 +296,7 @@ public abstract class AbstractDatasetGraphTests
Node subject = NodeFactory.createURI("http://example/s");
Node predicate = NodeFactory.createURI("http://example/p");
Node object = NodeFactory.createBlankNode();
- dsg.add(new Quad(Quad.defaultGraphIRI, subject, predicate, object));
+ dsg.add(Quad.create(Quad.defaultGraphIRI, subject, predicate, object));
dsg.deleteAny(Node.ANY, subject, null, null);
}
diff --git a/jena-arq/src/test/java/org/apache/jena/sparql/core/DatasetGraphSimpleMem.java b/jena-arq/src/test/java/org/apache/jena/sparql/core/DatasetGraphSimpleMem.java
index 88bd4557eb..827a5a0368 100644
--- a/jena-arq/src/test/java/org/apache/jena/sparql/core/DatasetGraphSimpleMem.java
+++ b/jena-arq/src/test/java/org/apache/jena/sparql/core/DatasetGraphSimpleMem.java
@@ -94,7 +94,7 @@ public class DatasetGraphSimpleMem extends DatasetGraphTriplesQuads implements T
if ( matches(t, s, p, o) )
// ?? Quad.defaultGraphNodeGenerated
// Quad.defaultGraphIRI
- results.add(new Quad(Quad.defaultGraphIRI, t));
+ results.add(Quad.create(Quad.defaultGraphIRI, t));
return results.iterator();
}
@@ -139,7 +139,7 @@ public class DatasetGraphSimpleMem extends DatasetGraphTriplesQuads implements T
@Override
protected void addToNamedGraph(Node g, Node s, Node p, Node o) {
- Quad q = new Quad(g, s, p, o);
+ Quad q = Quad.create(g, s, p, o);
quads.add(q);
}
@@ -150,7 +150,7 @@ public class DatasetGraphSimpleMem extends DatasetGraphTriplesQuads implements T
@Override
protected void deleteFromNamedGraph(Node g, Node s, Node p, Node o) {
- quads.remove(new Quad(g, s, p, o));
+ quads.remove(Quad.create(g, s, p, o));
}
class GraphDft extends GraphBase {
@@ -183,13 +183,13 @@ public class DatasetGraphSimpleMem extends DatasetGraphTriplesQuads implements T
@Override
public void performAdd(Triple t) {
- Quad q = new Quad(graphName, t);
+ Quad q = Quad.create(graphName, t);
quads.add(q);
}
@Override
public void performDelete(Triple t) {
- Quad q = new Quad(graphName, t);
+ Quad q = Quad.create(graphName, t);
quads.remove(q);
}
diff --git a/jena-arq/src/test/java/org/apache/jena/sparql/core/TS_SparqlCore.java b/jena-arq/src/test/java/org/apache/jena/sparql/core/TS_SparqlCore.java
index 3ea561bfb4..836cb95a9e 100644
--- a/jena-arq/src/test/java/org/apache/jena/sparql/core/TS_SparqlCore.java
+++ b/jena-arq/src/test/java/org/apache/jena/sparql/core/TS_SparqlCore.java
@@ -23,7 +23,8 @@ import org.junit.platform.suite.api.Suite;
@Suite
@SelectClasses({
- TestContext.class
+ TestQuad.class
+ , TestContext.class
, TestDatasetGraphMem.class
, TestDatasetGraphMemTriplesQuads.class
, TestDatasetGeneral.class
diff --git a/jena-arq/src/test/java/org/apache/jena/sparql/core/TestQuad.java b/jena-arq/src/test/java/org/apache/jena/sparql/core/TestQuad.java
new file mode 100644
index 0000000000..746e627e6f
--- /dev/null
+++ b/jena-arq/src/test/java/org/apache/jena/sparql/core/TestQuad.java
@@ -0,0 +1,136 @@
+/*
+ * 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.sparql.core;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertThrows;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+
+import org.junit.jupiter.api.Test;
+
+import org.apache.jena.graph.Node;
+import org.apache.jena.sparql.sse.SSE;
+
+public class TestQuad {
+ private static Node g1 = SSE.parseNode(":g1");
+ private static Node s1 = SSE.parseNode(":s1");
+ private static Node p1 = SSE.parseNode(":p1");
+ private static Node o1 = SSE.parseNode(":o1");
+
+ private static Node g2 = SSE.parseNode(":g2");
+ private static Node s2 = SSE.parseNode(":s2");
+ private static Node p2 = SSE.parseNode(":p2");
+ private static Node o2 = SSE.parseNode(":o2");
+
+
+ @Test public void quad_01() {
+ Quad quad = Quad.create(g1, s1, p1, o1);
+ assertEquals(g1, quad.getGraph());
+ assertEquals(s1, quad.getSubject());
+ assertEquals(p1, quad.getPredicate());
+ assertEquals(o1, quad.getObject());
+ }
+
+ @Test public void quad_02() {
+ Quad quad = Quad.create(null, s1, p1, o1);
+ assertEquals(null, quad.getGraph());
+ assertThrows(UnsupportedOperationException.class, ()->Quad.create(g1, null, p1, o1));
+ assertThrows(UnsupportedOperationException.class, ()->Quad.create(g1, s1, null, o1));
+ assertThrows(UnsupportedOperationException.class, ()->Quad.create(g1, s1, p1, null));
+ }
+
+ @Test public void quad_03() {
+ Quad quad = Quad.createMatch(null, null, null, null);
+ assertEquals(null, quad.getGraph());
+ assertEquals(Node.ANY, quad.getSubject());
+ assertEquals(Node.ANY, quad.getPredicate());
+ assertEquals(Node.ANY, quad.getObject());
+ }
+
+ @Test public void quad_match_01() {
+ Quad quad = Quad.create(g1, s1, p1, o1);
+ Quad mq = Quad.create(g1, s1, p1, o1);
+ assertTrue(mq.matches(quad));
+ assertTrue(quad.matches(mq));
+ }
+
+ @Test public void quad_match_02() {
+ Quad quad1 = Quad.create(g1, s1, p1, o1);
+ Quad mq = Quad.create(g2, s2, p2, o2);
+ assertFalse(mq.matches(quad1));
+ assertFalse(quad1.matches(mq));
+ }
+
+ @Test public void quad_match_10() {
+ Quad quad1 = Quad.create(g1, s1, p1, o1);
+ Quad mq = Quad.create(Node.ANY, s1, p1, o1);
+ assertTrue(mq.matches(quad1));
+ assertTrue(quad1.matches(mq));
+ }
+
+ @Test public void quad_match_11() {
+ Quad quad1 = Quad.create(g1, s1, p1, o1);
+ Quad mq = Quad.create(g1, Node.ANY, p1, o1);
+ assertTrue(mq.matches(quad1));
+ assertTrue(quad1.matches(mq));
+ }
+
+ @Test public void quad_match_12() {
+ Quad quad1 = Quad.create(g1, s1, p1, o1);
+ Quad mq = Quad.create(g1, s1, Node.ANY, o1);
+ assertTrue(mq.matches(quad1));
+ assertTrue(quad1.matches(mq));
+ }
+
+ @Test public void quad_match_13() {
+ Quad quad1 = Quad.create(g1, s1, p1, o1);
+ Quad mq = Quad.create(g1, s1, p1, Node.ANY);
+ assertTrue(mq.matches(quad1));
+ assertTrue(quad1.matches(mq));
+ }
+
+ @Test public void quad_match_20() {
+ Quad quad1 = Quad.create(g1, s1, p1, o1);
+ Quad mq = Quad.create(Node.ANY, s2, p1, o1);
+ assertFalse(mq.matches(quad1));
+ assertFalse(quad1.matches(mq));
+ }
+
+ @Test public void quad_match_21() {
+ Quad quad1 = Quad.create(g1, s1, p1, o1);
+ Quad mq = Quad.create(g2, Node.ANY, p1, o1);
+ assertFalse(mq.matches(quad1));
+ assertFalse(quad1.matches(mq));
+ }
+
+ @Test public void quad_match_22() {
+ Quad quad1 = Quad.create(g1, s1, p1, o1);
+ Quad mq = Quad.create(g1, s1, Node.ANY, o2);
+ assertFalse(mq.matches(quad1));
+ assertFalse(quad1.matches(mq));
+ }
+
+ @Test public void quad_match_23() {
+ Quad quad1 = Quad.create(g1, s1, p1, o1);
+ Quad mq = Quad.create(g2, s1, p1, Node.ANY);
+ assertFalse(mq.matches(quad1));
+ assertFalse(quad1.matches(mq));
+ }
+}
diff --git a/jena-arq/src/test/java/org/apache/jena/sparql/core/assembler/TestInMemDatasetAssembler.java b/jena-arq/src/test/java/org/apache/jena/sparql/core/assembler/TestInMemDatasetAssembler.java
index 10e391084d..6aee12373c 100644
--- a/jena-arq/src/test/java/org/apache/jena/sparql/core/assembler/TestInMemDatasetAssembler.java
+++ b/jena-arq/src/test/java/org/apache/jena/sparql/core/assembler/TestInMemDatasetAssembler.java
@@ -140,7 +140,7 @@ public class TestInMemDatasetAssembler {
final DatasetGraph dsg = DatasetGraphFactory.createTxnMem();
model.listStatements()
.mapWith(Statement::asTriple)
- .mapWith(t -> new Quad(quadsURI.asNode(), t))
+ .mapWith(t -> Quad.create(quadsURI.asNode(), t))
.forEachRemaining(dsg::add);
try (OutputStream out = new FileOutputStream(quads)) {
write(out, dsg, NQUADS);
diff --git a/jena-arq/src/test/java/org/apache/jena/sparql/modify/AbstractTestUpdateGraph.java b/jena-arq/src/test/java/org/apache/jena/sparql/modify/AbstractTestUpdateGraph.java
index 0c4d8ff7ed..1dc49a782e 100644
--- a/jena-arq/src/test/java/org/apache/jena/sparql/modify/AbstractTestUpdateGraph.java
+++ b/jena-arq/src/test/java/org/apache/jena/sparql/modify/AbstractTestUpdateGraph.java
@@ -124,7 +124,7 @@ public abstract class AbstractTestUpdateGraph extends AbstractTestUpdateBase
DatasetGraph gStore = getEmptyDatasetGraph();
gStore.addGraph(graphIRI, GraphMemFactory.createDefaultGraph());
UpdateModify insert = new UpdateModify();
- insert.getInsertAcc().addQuad(new Quad(graphIRI, triple1));
+ insert.getInsertAcc().addQuad(Quad.create(graphIRI, triple1));
UpdateAction.execute(insert, gStore);
assertTrue(graphContains(gStore.getGraph(graphIRI), triple1));
}
@@ -211,7 +211,7 @@ public abstract class AbstractTestUpdateGraph extends AbstractTestUpdateBase
UpdateModify modify = new UpdateModify();
Element element = QueryFactory.createElement("{ ?s <http://example/p> ?o }");
modify.setElement(element);
- modify.getInsertAcc().addQuad(new Quad(graphIRI, triple1));
+ modify.getInsertAcc().addQuad(Quad.create(graphIRI, triple1));
modify.getDeleteAcc().addTriple(SSE.parseTriple("(?s <http://example/p> ?o)"));
modify.getDeleteAcc().addQuad(SSE.parseQuad("(<http://example/graph> ?s <http://example/p> ?o)"));
UpdateAction.execute(modify, gStore);
@@ -237,7 +237,7 @@ public abstract class AbstractTestUpdateGraph extends AbstractTestUpdateBase
UpdateModify modify = new UpdateModify();
Element element = QueryFactory.createElement("{ ?s <http://example/p> ?o }");
modify.setElement(element);
- modify.getInsertAcc().addQuad(new Quad(graphIRI, triple1));
+ modify.getInsertAcc().addQuad(Quad.create(graphIRI, triple1));
modify.getDeleteAcc().addTriple(SSE.parseTriple("(?s <http://example/p> ?o)"));
modify.getDeleteAcc().addQuad(SSE.parseQuad("(<http://example/graph> ?s <http://example/p> ?o)"));
UpdateAction.execute(modify, gStore);
diff --git a/jena-arq/src/test/java/org/apache/jena/sparql/util/TestFmtUtils.java b/jena-arq/src/test/java/org/apache/jena/sparql/util/TestFmtUtils.java
index 7ce515386c..8cb1be14cf 100644
--- a/jena-arq/src/test/java/org/apache/jena/sparql/util/TestFmtUtils.java
+++ b/jena-arq/src/test/java/org/apache/jena/sparql/util/TestFmtUtils.java
@@ -60,7 +60,7 @@ public class TestFmtUtils
public void stringForQuadEncoding() {
Node n1 = NodeFactory.createURI("q1");
- Quad quad = new Quad(n1, getTriple());
+ Quad quad = Quad.create(n1, getTriple());
assertEquals("<q1> <n1> <n2> \"l3\"", stringForQuad(quad));
}
@@ -69,7 +69,7 @@ public class TestFmtUtils
public void stringForQuad_WithPrefixMapping() {
Node n1 = NodeFactory.createURI("q1");
- Quad quad = new Quad(n1, getPrefixedTriple());
+ Quad quad = Quad.create(n1, getPrefixedTriple());
assertEquals("<q1> zz:abs <n2> \"l3\"", stringForQuad(quad, getPrefixMapping()));
}
diff --git a/jena-examples/src/main/java/org/apache/jena/example/streaming/StreamRDFToConnection.java b/jena-examples/src/main/java/org/apache/jena/example/streaming/StreamRDFToConnection.java
index dcc2d14a2f..3dc50b29a6 100644
--- a/jena-examples/src/main/java/org/apache/jena/example/streaming/StreamRDFToConnection.java
+++ b/jena-examples/src/main/java/org/apache/jena/example/streaming/StreamRDFToConnection.java
@@ -136,7 +136,7 @@ public class StreamRDFToConnection implements StreamRDF {
Statement stmt2 = new StatementImpl(s, RDF.type, t);
stream.start();
stream.triple(stmt1.asTriple());
- stream.quad(new Quad(g.asNode(), stmt2.asTriple()));
+ stream.quad(Quad.create(g.asNode(), stmt2.asTriple()));
stream.finish();
System.out.println("Contains model 'g': " + dataset.containsNamedModel("g"));
diff --git a/jena-extras/jena-querybuilder/src/main/java/org/apache/jena/arq/querybuilder/UpdateBuilder.java b/jena-extras/jena-querybuilder/src/main/java/org/apache/jena/arq/querybuilder/UpdateBuilder.java
index c572ab9dcc..9e3e821746 100644
--- a/jena-extras/jena-querybuilder/src/main/java/org/apache/jena/arq/querybuilder/UpdateBuilder.java
+++ b/jena-extras/jena-querybuilder/src/main/java/org/apache/jena/arq/querybuilder/UpdateBuilder.java
@@ -414,7 +414,7 @@ public class UpdateBuilder {
* @return this builder for chaining.
*/
public UpdateBuilder addInsert(Object g, Triple t) {
- Quad q = new Quad(makeNode(g), t);
+ Quad q = Quad.create(makeNode(g), t);
inserts.add(new SingleQuadHolder(q));
return this;
}
@@ -617,7 +617,7 @@ public class UpdateBuilder {
* @return this builder for chaining.
*/
public UpdateBuilder addDelete(Object g, Triple t) {
- Quad q = new Quad(makeNode(g), t);
+ Quad q = Quad.create(makeNode(g), t);
deletes.add(new SingleQuadHolder(q));
return this;
}
diff --git a/jena-extras/jena-querybuilder/src/main/java/org/apache/jena/arq/querybuilder/rewriters/OpRewriter.java b/jena-extras/jena-querybuilder/src/main/java/org/apache/jena/arq/querybuilder/rewriters/OpRewriter.java
index eafdb85faf..b4fac4dd32 100644
--- a/jena-extras/jena-querybuilder/src/main/java/org/apache/jena/arq/querybuilder/rewriters/OpRewriter.java
+++ b/jena-extras/jena-querybuilder/src/main/java/org/apache/jena/arq/querybuilder/rewriters/OpRewriter.java
@@ -51,7 +51,7 @@ class OpRewriter extends AbstractRewriter<Op> implements OpVisitor {
}
private Quad rewrite(Quad q) {
- return new Quad(changeNode(q.getGraph()), changeNode(q.getSubject()), changeNode(q.getPredicate()),
+ return Quad.create(changeNode(q.getGraph()), changeNode(q.getSubject()), changeNode(q.getPredicate()),
changeNode(q.getObject()));
}
diff --git a/jena-extras/jena-querybuilder/src/main/java/org/apache/jena/arq/querybuilder/updatebuilder/CollectionQuadHolder.java b/jena-extras/jena-querybuilder/src/main/java/org/apache/jena/arq/querybuilder/updatebuilder/CollectionQuadHolder.java
index 4511a0f73f..e9a9dd2682 100644
--- a/jena-extras/jena-querybuilder/src/main/java/org/apache/jena/arq/querybuilder/updatebuilder/CollectionQuadHolder.java
+++ b/jena-extras/jena-querybuilder/src/main/java/org/apache/jena/arq/querybuilder/updatebuilder/CollectionQuadHolder.java
@@ -94,7 +94,7 @@ public class CollectionQuadHolder implements QuadHolder {
return WrappedIterator
.create(collection.iterator()).mapWith(triple -> Triple.create(valueMap(triple.getSubject()),
valueMap(triple.getPredicate()), valueMap(triple.getObject())))
- .mapWith(triple -> new Quad(defaultGraphName, triple));
+ .mapWith(triple -> Quad.create(defaultGraphName, triple));
}
/**
diff --git a/jena-extras/jena-querybuilder/src/main/java/org/apache/jena/arq/querybuilder/updatebuilder/ModelQuadHolder.java b/jena-extras/jena-querybuilder/src/main/java/org/apache/jena/arq/querybuilder/updatebuilder/ModelQuadHolder.java
index b5d9284bce..c33633e6d4 100644
--- a/jena-extras/jena-querybuilder/src/main/java/org/apache/jena/arq/querybuilder/updatebuilder/ModelQuadHolder.java
+++ b/jena-extras/jena-querybuilder/src/main/java/org/apache/jena/arq/querybuilder/updatebuilder/ModelQuadHolder.java
@@ -57,7 +57,7 @@ public class ModelQuadHolder implements QuadHolder {
@Override
public ExtendedIterator<Quad> getQuads() {
- return model.listStatements().mapWith(stmt -> new Quad(defaultGraphName, stmt.asTriple()));
+ return model.listStatements().mapWith(stmt -> Quad.create(defaultGraphName, stmt.asTriple()));
}
/**
diff --git a/jena-extras/jena-querybuilder/src/main/java/org/apache/jena/arq/querybuilder/updatebuilder/QuadCollectionHolder.java b/jena-extras/jena-querybuilder/src/main/java/org/apache/jena/arq/querybuilder/updatebuilder/QuadCollectionHolder.java
index 5cf55acba6..7b1c79a668 100644
--- a/jena-extras/jena-querybuilder/src/main/java/org/apache/jena/arq/querybuilder/updatebuilder/QuadCollectionHolder.java
+++ b/jena-extras/jena-querybuilder/src/main/java/org/apache/jena/arq/querybuilder/updatebuilder/QuadCollectionHolder.java
@@ -67,7 +67,7 @@ public class QuadCollectionHolder implements QuadHolder {
ExtendedIterator<Quad> retval = WrappedIterator.create(collection.iterator());
if (values != null) {
- retval = retval.mapWith(q -> new Quad(valueMap(q.getGraph()), valueMap(q.getSubject()),
+ retval = retval.mapWith(q -> Quad.create(valueMap(q.getGraph()), valueMap(q.getSubject()),
valueMap(q.getPredicate()), valueMap(q.getObject())));
}
return retval;
diff --git a/jena-extras/jena-querybuilder/src/main/java/org/apache/jena/arq/querybuilder/updatebuilder/QuadIteratorBuilder.java b/jena-extras/jena-querybuilder/src/main/java/org/apache/jena/arq/querybuilder/updatebuilder/QuadIteratorBuilder.java
index 98bb3a18b9..b2acda6b33 100644
--- a/jena-extras/jena-querybuilder/src/main/java/org/apache/jena/arq/querybuilder/updatebuilder/QuadIteratorBuilder.java
+++ b/jena-extras/jena-querybuilder/src/main/java/org/apache/jena/arq/querybuilder/updatebuilder/QuadIteratorBuilder.java
@@ -45,7 +45,7 @@ class QuadIteratorBuilder implements ElementVisitor {
@Override
public Quad apply(Triple triple) {
- return new Quad(defaultGraph, Converters.checkVar(triple.getSubject()),
+ return Quad.create(defaultGraph, Converters.checkVar(triple.getSubject()),
Converters.checkVar(triple.getPredicate()), Converters.checkVar(triple.getObject()));
}
};
diff --git a/jena-extras/jena-querybuilder/src/main/java/org/apache/jena/arq/querybuilder/updatebuilder/SingleQuadHolder.java b/jena-extras/jena-querybuilder/src/main/java/org/apache/jena/arq/querybuilder/updatebuilder/SingleQuadHolder.java
index 0e8aa8ec1c..9f91712329 100644
--- a/jena-extras/jena-querybuilder/src/main/java/org/apache/jena/arq/querybuilder/updatebuilder/SingleQuadHolder.java
+++ b/jena-extras/jena-querybuilder/src/main/java/org/apache/jena/arq/querybuilder/updatebuilder/SingleQuadHolder.java
@@ -43,7 +43,7 @@ public class SingleQuadHolder implements QuadHolder {
public SingleQuadHolder(Quad quad) {
if (quad.getGraph().isVariable() || quad.getSubject().isVariable() || quad.getPredicate().isVariable()
|| quad.getObject().isVariable()) {
- this.quad = new Quad(Converters.checkVar(quad.getGraph()), Converters.checkVar(quad.getSubject()),
+ this.quad = Quad.create(Converters.checkVar(quad.getGraph()), Converters.checkVar(quad.getSubject()),
Converters.checkVar(quad.getPredicate()), Converters.checkVar(quad.getObject()));
} else {
this.quad = quad;
@@ -58,7 +58,7 @@ public class SingleQuadHolder implements QuadHolder {
* @param triple the triple to convert to a quad.
*/
public SingleQuadHolder(Triple triple) {
- this.quad = new Quad(Quad.defaultGraphNodeGenerated, Converters.checkVar(triple.getSubject()),
+ this.quad = Quad.create(Quad.defaultGraphNodeGenerated, Converters.checkVar(triple.getSubject()),
Converters.checkVar(triple.getPredicate()), Converters.checkVar(triple.getObject()));
}
@@ -69,7 +69,7 @@ public class SingleQuadHolder implements QuadHolder {
* @param triple the triple to convert to a quad.
*/
public SingleQuadHolder(Node graph, Triple triple) {
- this.quad = new Quad(graph, triple);
+ this.quad = Quad.create(graph, triple);
}
@Override
@@ -89,7 +89,7 @@ public class SingleQuadHolder implements QuadHolder {
@Override
public QuadHolder setValues(Map<Var, Node> values) {
- updated = new Quad(mapValue(quad.getGraph(), values), mapValue(quad.getSubject(), values),
+ updated = Quad.create(mapValue(quad.getGraph(), values), mapValue(quad.getSubject(), values),
mapValue(quad.getPredicate(), values), mapValue(quad.getObject(), values));
return this;
}
diff --git a/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/AbstractQueryBuilderTest.java b/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/AbstractQueryBuilderTest.java
index 029018c04c..0c864c6f00 100644
--- a/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/AbstractQueryBuilderTest.java
+++ b/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/AbstractQueryBuilderTest.java
@@ -136,16 +136,6 @@ public class AbstractQueryBuilderTest {
}
- private void assertTripleMatch(Triple expected, Triple actual) {
- if (!expected.matches(actual)) {
- fail("expected: "+expected+" actual: "+actual);
- }
- }
-
- private void assertTripleMatch(Triple expected, TriplePath actual) {
- assertTripleMatch(expected, actual.asTriple());
- }
-
@Test
public void testMakeTriplePaths() {
List<Object> list = new ArrayList<Object>();
@@ -155,6 +145,7 @@ public class AbstractQueryBuilderTest {
list.add("<one>");
list.add(Integer.valueOf(5));
+ // ANY for the blank nodes.
Triple[] expected = {
Triple.create(Node.ANY, RDF.first.asNode(), RDF.type.asNode()),
Triple.create(Node.ANY, RDF.rest.asNode(), Node.ANY),
@@ -171,8 +162,7 @@ public class AbstractQueryBuilderTest {
assertEquals(expected.length, result.size());
for (int i=0;i<expected.length;i++) {
- assertTripleMatch( expected[i], result.get(i));
+ expected[i].matches(result.get(i).asTriple());
}
}
-
}
diff --git a/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/ConvertersTest.java b/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/ConvertersTest.java
index 4e70db7973..71c8cb66eb 100644
--- a/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/ConvertersTest.java
+++ b/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/ConvertersTest.java
@@ -376,8 +376,8 @@ public class ConvertersTest {
if (expected.isTriple()) {
assertTrue(expected.asTriple().matches(asTriple(actual)), errMsg);
} else {
- assertTrue(expected.getSubject().matches(asTriplePath(actual).getSubject()), errMsg);
- assertTrue(expected.getObject().matches(asTriplePath(actual).getObject()), errMsg);
+ assertTrue(expected.getSubject().sameTermAs(asTriplePath(actual).getSubject()), errMsg);
+ assertTrue(expected.getObject().sameTermAs(asTriplePath(actual).getObject()), errMsg);
assertTrue(expected.getPath().equalTo(asTriplePath(actual).getPath(), new NodeIsomorphismMap()), errMsg);
}
}
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 5e86ac3c2f..c7d9ae8d85 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
@@ -131,7 +131,7 @@ public class UpdateBuilderTest {
@Test
public void testInsert_Quad() {
UpdateBuilder builder = new UpdateBuilder();
- builder.addInsert(new Quad(g, s, p, o));
+ builder.addInsert(Quad.create(g, s, p, o));
Update update = builder.build();
assertTrue(update instanceof UpdateDataInsert);
UpdateDataInsert udi = (UpdateDataInsert) update;
@@ -149,14 +149,14 @@ public class UpdateBuilderTest {
UpdateBuilder builder = new UpdateBuilder();
Collection<Quad> quads = new ArrayList<Quad>();
- quads.add(new Quad(g, s, p, o));
+ quads.add(Quad.create(g, s, p, o));
Node g2 = NodeFactory.createURI("http://example.com/graph2");
Node s2 = NodeFactory.createURI("http://example.com/subject2");
Node p2 = NodeFactory.createURI("http://example.com/predicate2");
Node o2 = NodeFactory.createURI("http://example.com/object2");
- quads.add(new Quad(g2, s2, p2, o2));
+ quads.add(Quad.create(g2, s2, p2, o2));
builder.addInsertQuads(quads);
Update update = builder.build();
@@ -266,7 +266,7 @@ public class UpdateBuilderTest {
public void testDelete_Quad() {
UpdateBuilder builder = new UpdateBuilder();
- builder.addDelete(new Quad(g, s, p, o));
+ builder.addDelete(Quad.create(g, s, p, o));
Update update = builder.build();
assertTrue(update instanceof UpdateDataDelete);
UpdateDataDelete udd = (UpdateDataDelete) update;
@@ -284,14 +284,14 @@ public class UpdateBuilderTest {
UpdateBuilder builder = new UpdateBuilder();
Collection<Quad> quads = new ArrayList<Quad>();
- quads.add(new Quad(g, s, p, o));
+ quads.add(Quad.create(g, s, p, o));
Node g2 = NodeFactory.createURI("http://example.com/graph2");
Node s2 = NodeFactory.createURI("http://example.com/subject2");
Node p2 = NodeFactory.createURI("http://example.com/predicate2");
Node o2 = NodeFactory.createURI("http://example.com/object2");
- quads.add(new Quad(g2, s2, p2, o2));
+ quads.add(Quad.create(g2, s2, p2, o2));
builder.addDeleteQuads(quads);
Update update = builder.build();
@@ -333,7 +333,7 @@ public class UpdateBuilderTest {
@Test
public void testInsertAndDelete() {
UpdateBuilder builder = new UpdateBuilder();
- builder.addInsert(new Quad(g, s, p, o));
+ builder.addInsert(Quad.create(g, s, p, o));
builder.addDelete(Triple.create(s, p, o));
builder.addWhere(null, p, "foo");
Update update = builder.build();
@@ -371,7 +371,7 @@ public class UpdateBuilderTest {
UpdateBuilder builder = new UpdateBuilder();
Var v = Var.alloc("v");
- builder.addInsert(new Quad(g, s, v, o));
+ builder.addInsert(Quad.create(g, s, v, o));
builder.addDelete(Triple.create(s, v, o));
builder.addWhere(null, v, "foo");
builder.setVar(v, p);
@@ -410,7 +410,7 @@ public class UpdateBuilderTest {
UpdateBuilder builder = new UpdateBuilder();
Node v = NodeFactory.createVariable("v");
- builder.addInsert(new Quad(g, s, v, o));
+ builder.addInsert(Quad.create(g, s, v, o));
builder.addDelete(Triple.create(s, v, o));
builder.addWhere(null, v, "foo");
builder.setVar(v, p);
@@ -449,7 +449,7 @@ public class UpdateBuilderTest {
UpdateBuilder builder = new UpdateBuilder();
Node v = NodeFactory.createVariable("v");
- builder.addInsert(new Quad(g, s, v, o));
+ builder.addInsert(Quad.create(g, s, v, o));
builder.addDelete(Triple.create(s, v, o));
builder.addWhere(null, v, "foo");
diff --git a/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/updatebuilder/CollectionQuadHolderTest.java b/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/updatebuilder/CollectionQuadHolderTest.java
index b43b738d98..b59b849da8 100644
--- a/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/updatebuilder/CollectionQuadHolderTest.java
+++ b/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/updatebuilder/CollectionQuadHolderTest.java
@@ -55,8 +55,8 @@ public class CollectionQuadHolderTest {
List<Quad> lst = holder.getQuads().toList();
assertEquals(2, lst.size());
- assertEquals(new Quad(g, tLst.get(0)), lst.get(0));
- assertEquals(new Quad(g, tLst.get(1)), lst.get(1));
+ assertEquals(Quad.create(g, tLst.get(0)), lst.get(0));
+ assertEquals(Quad.create(g, tLst.get(1)), lst.get(1));
}
@Test
@@ -85,8 +85,8 @@ public class CollectionQuadHolderTest {
List<Quad> lst = holder.getQuads().toList();
assertEquals(2, lst.size());
- assertEquals(new Quad(g, aLst.get(0)), lst.get(0));
- assertEquals(new Quad(g, aLst.get(1)), lst.get(1));
+ assertEquals(Quad.create(g, aLst.get(0)), lst.get(0));
+ assertEquals(Quad.create(g, aLst.get(1)), lst.get(1));
}
@Test
@@ -108,8 +108,8 @@ public class CollectionQuadHolderTest {
List<Quad> lst = holder.getQuads().toList();
assertEquals(2, lst.size());
- assertEquals(new Quad(g, tLst.get(0)), lst.get(0));
- assertEquals(new Quad(g, tLst.get(1)), lst.get(1));
+ assertEquals(Quad.create(g, tLst.get(0)), lst.get(0));
+ assertEquals(Quad.create(g, tLst.get(1)), lst.get(1));
}
@Test
@@ -139,8 +139,8 @@ public class CollectionQuadHolderTest {
List<Quad> lst = holder.getQuads().toList();
assertEquals(2, lst.size());
- assertEquals(new Quad(g, aLst.get(0)), lst.get(0));
- assertEquals(new Quad(g, aLst.get(1)), lst.get(1));
+ assertEquals(Quad.create(g, aLst.get(0)), lst.get(0));
+ assertEquals(Quad.create(g, aLst.get(1)), lst.get(1));
}
@Test
@@ -161,8 +161,8 @@ public class CollectionQuadHolderTest {
List<Quad> lst = holder.getQuads().toList();
assertEquals(2, lst.size());
- assertEquals(new Quad(Quad.defaultGraphNodeGenerated, tLst.get(0)), lst.get(0));
- assertEquals(new Quad(Quad.defaultGraphNodeGenerated, tLst.get(1)), lst.get(1));
+ assertEquals(Quad.create(Quad.defaultGraphNodeGenerated, tLst.get(0)), lst.get(0));
+ assertEquals(Quad.create(Quad.defaultGraphNodeGenerated, tLst.get(1)), lst.get(1));
}
@Test
@@ -189,8 +189,8 @@ public class CollectionQuadHolderTest {
List<Quad> lst = holder.getQuads().toList();
assertEquals(2, lst.size());
- assertEquals(new Quad(Quad.defaultGraphNodeGenerated, aLst.get(0)), lst.get(0));
- assertEquals(new Quad(Quad.defaultGraphNodeGenerated, aLst.get(1)), lst.get(1));
+ assertEquals(Quad.create(Quad.defaultGraphNodeGenerated, aLst.get(0)), lst.get(0));
+ assertEquals(Quad.create(Quad.defaultGraphNodeGenerated, aLst.get(1)), lst.get(1));
}
@Test
@@ -211,8 +211,8 @@ public class CollectionQuadHolderTest {
List<Quad> lst = holder.getQuads().toList();
assertEquals(2, lst.size());
- assertEquals(new Quad(Quad.defaultGraphNodeGenerated, tLst.get(0)), lst.get(0));
- assertEquals(new Quad(Quad.defaultGraphNodeGenerated, tLst.get(1)), lst.get(1));
+ assertEquals(Quad.create(Quad.defaultGraphNodeGenerated, tLst.get(0)), lst.get(0));
+ assertEquals(Quad.create(Quad.defaultGraphNodeGenerated, tLst.get(1)), lst.get(1));
}
@Test
@@ -239,7 +239,7 @@ public class CollectionQuadHolderTest {
List<Quad> lst = holder.getQuads().toList();
assertEquals(2, lst.size());
- assertEquals(new Quad(Quad.defaultGraphNodeGenerated, aLst.get(0)), lst.get(0));
- assertEquals(new Quad(Quad.defaultGraphNodeGenerated, aLst.get(1)), lst.get(1));
+ assertEquals(Quad.create(Quad.defaultGraphNodeGenerated, aLst.get(0)), lst.get(0));
+ assertEquals(Quad.create(Quad.defaultGraphNodeGenerated, aLst.get(1)), lst.get(1));
}
}
diff --git a/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/updatebuilder/ModelQuadHolderTest.java b/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/updatebuilder/ModelQuadHolderTest.java
index 20fc65eaac..37d16c7810 100644
--- a/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/updatebuilder/ModelQuadHolderTest.java
+++ b/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/updatebuilder/ModelQuadHolderTest.java
@@ -57,10 +57,10 @@ public class ModelQuadHolderTest {
List<Quad> lst = holder.getQuads().toList();
assertEquals(2, lst.size());
- Quad q = new Quad(Quad.defaultGraphNodeGenerated, tLst.get(0));
+ Quad q = Quad.create(Quad.defaultGraphNodeGenerated, tLst.get(0));
assertTrue(lst.contains(q), "missing " + q);
- q = new Quad(Quad.defaultGraphNodeGenerated, tLst.get(1));
+ q = Quad.create(Quad.defaultGraphNodeGenerated, tLst.get(1));
assertTrue(lst.contains(q), "missing " + q);
}
@@ -86,10 +86,10 @@ public class ModelQuadHolderTest {
List<Quad> lst = holder.getQuads().toList();
assertEquals(2, lst.size());
- Quad q = new Quad(g, tLst.get(0));
+ Quad q = Quad.create(g, tLst.get(0));
assertTrue(lst.contains(q), "missing " + q);
- q = new Quad(g, tLst.get(1));
+ q = Quad.create(g, tLst.get(1));
assertTrue(lst.contains(q), "missing " + q);
}
}
diff --git a/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/updatebuilder/QBQuadHolderTest.java b/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/updatebuilder/QBQuadHolderTest.java
index 138bee41af..2351e9519f 100644
--- a/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/updatebuilder/QBQuadHolderTest.java
+++ b/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/updatebuilder/QBQuadHolderTest.java
@@ -58,8 +58,8 @@ public class QBQuadHolderTest {
List<Quad> lst = holder.getQuads().toList();
assertEquals(2, lst.size());
- assertEquals(new Quad(Quad.defaultGraphNodeGenerated, tLst.get(0)), lst.get(0));
- assertEquals(new Quad(Quad.defaultGraphNodeGenerated, tLst.get(1)), lst.get(1));
+ assertEquals(Quad.create(Quad.defaultGraphNodeGenerated, tLst.get(0)), lst.get(0));
+ assertEquals(Quad.create(Quad.defaultGraphNodeGenerated, tLst.get(1)), lst.get(1));
}
@Test
@@ -87,8 +87,8 @@ public class QBQuadHolderTest {
List<Quad> lst = holder.getQuads().toList();
assertEquals(2, lst.size());
- assertEquals(new Quad(Quad.defaultGraphNodeGenerated, tLst.get(0)), lst.get(0));
- assertEquals(new Quad(Quad.defaultGraphNodeGenerated, tLst.get(1)), lst.get(1));
+ assertEquals(Quad.create(Quad.defaultGraphNodeGenerated, tLst.get(0)), lst.get(0));
+ assertEquals(Quad.create(Quad.defaultGraphNodeGenerated, tLst.get(1)), lst.get(1));
}
@Test
@@ -115,8 +115,8 @@ public class QBQuadHolderTest {
List<Quad> lst = holder.getQuads().toList();
assertEquals(2, lst.size());
- assertEquals(new Quad(g, tLst.get(0)), lst.get(0));
- assertEquals(new Quad(g, tLst.get(1)), lst.get(1));
+ assertEquals(Quad.create(g, tLst.get(0)), lst.get(0));
+ assertEquals(Quad.create(g, tLst.get(1)), lst.get(1));
}
@Test
@@ -147,8 +147,8 @@ public class QBQuadHolderTest {
List<Quad> lst = holder.getQuads().toList();
assertEquals(2, lst.size());
- assertEquals(new Quad(g, tLst.get(0)), lst.get(0));
- assertEquals(new Quad(g, tLst.get(1)), lst.get(1));
+ assertEquals(Quad.create(g, tLst.get(0)), lst.get(0));
+ assertEquals(Quad.create(g, tLst.get(1)), lst.get(1));
}
@Test
@@ -174,8 +174,8 @@ public class QBQuadHolderTest {
List<Quad> lst = holder.getQuads().toList();
assertEquals(2, lst.size());
- assertEquals(new Quad(Quad.defaultGraphNodeGenerated, tLst.get(0)), lst.get(0));
- assertEquals(new Quad(g, tLst.get(1)), lst.get(1));
+ assertEquals(Quad.create(Quad.defaultGraphNodeGenerated, tLst.get(0)), lst.get(0));
+ assertEquals(Quad.create(g, tLst.get(1)), lst.get(1));
}
@Test
@@ -205,7 +205,7 @@ public class QBQuadHolderTest {
List<Quad> lst = holder.getQuads().toList();
assertEquals(2, lst.size());
- assertEquals(new Quad(Quad.defaultGraphNodeGenerated, tLst.get(0)), lst.get(0));
- assertEquals(new Quad(g, tLst.get(1)), lst.get(1));
+ assertEquals(Quad.create(Quad.defaultGraphNodeGenerated, tLst.get(0)), lst.get(0));
+ assertEquals(Quad.create(g, tLst.get(1)), lst.get(1));
}
}
diff --git a/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/updatebuilder/SingleQuadHolderTest.java b/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/updatebuilder/SingleQuadHolderTest.java
index 248dca25c5..71669b4ad7 100644
--- a/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/updatebuilder/SingleQuadHolderTest.java
+++ b/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/updatebuilder/SingleQuadHolderTest.java
@@ -41,7 +41,7 @@ public class SingleQuadHolderTest {
Node s = NodeFactory.createURI("s");
Node p = NodeFactory.createURI("p");
Node o = NodeFactory.createURI("o");
- Quad quad = new Quad(g, s, p, o);
+ Quad quad = Quad.create(g, s, p, o);
holder = new SingleQuadHolder(quad);
List<Quad> lst = holder.getQuads().toList();
assertEquals(1, lst.size());
@@ -54,7 +54,7 @@ public class SingleQuadHolderTest {
Node s = NodeFactory.createURI("s");
Node p = NodeFactory.createVariable("p");
Node o = NodeFactory.createURI("o");
- Quad quad = new Quad(g, s, p, o);
+ Quad quad = Quad.create(g, s, p, o);
holder = new SingleQuadHolder(quad);
List<Quad> lst = holder.getQuads().toList();
assertEquals(1, lst.size());
@@ -64,7 +64,7 @@ public class SingleQuadHolderTest {
Node p2 = NodeFactory.createURI("p2");
map.put(Var.alloc(p), p2);
holder.setValues(map);
- Quad quad2 = new Quad(g, s, p2, o);
+ Quad quad2 = Quad.create(g, s, p2, o);
lst = holder.getQuads().toList();
assertEquals(1, lst.size());
assertEquals(quad2, lst.get(0));
@@ -77,7 +77,7 @@ public class SingleQuadHolderTest {
Node p = NodeFactory.createURI("p");
Node o = NodeFactory.createURI("o");
Triple triple = Triple.create(s, p, o);
- Quad quad = new Quad(Quad.defaultGraphNodeGenerated, s, p, o);
+ Quad quad = Quad.create(Quad.defaultGraphNodeGenerated, s, p, o);
holder = new SingleQuadHolder(triple);
List<Quad> lst = holder.getQuads().toList();
assertEquals(1, lst.size());
@@ -90,7 +90,7 @@ public class SingleQuadHolderTest {
Node p = NodeFactory.createVariable("p");
Node o = NodeFactory.createURI("o");
Triple triple = Triple.create(s, p, o);
- Quad quad = new Quad(Quad.defaultGraphNodeGenerated, s, p, o);
+ Quad quad = Quad.create(Quad.defaultGraphNodeGenerated, s, p, o);
holder = new SingleQuadHolder(triple);
List<Quad> lst = holder.getQuads().toList();
assertEquals(1, lst.size());
@@ -100,7 +100,7 @@ public class SingleQuadHolderTest {
Node p2 = NodeFactory.createURI("p2");
map.put(Var.alloc(p), p2);
holder.setValues(map);
- Quad quad2 = new Quad(Quad.defaultGraphNodeGenerated, s, p2, o);
+ Quad quad2 = Quad.create(Quad.defaultGraphNodeGenerated, s, p2, o);
lst = holder.getQuads().toList();
assertEquals(1, lst.size());
assertEquals(quad2, lst.get(0));
diff --git a/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/updatebuilder/WhereQuadHolderTest.java b/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/updatebuilder/WhereQuadHolderTest.java
index f7142e32bb..8e0c0fa998 100644
--- a/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/updatebuilder/WhereQuadHolderTest.java
+++ b/jena-extras/jena-querybuilder/src/test/java/org/apache/jena/arq/querybuilder/updatebuilder/WhereQuadHolderTest.java
@@ -58,8 +58,8 @@ public class WhereQuadHolderTest {
List<Quad> lst = holder.getQuads().toList();
assertEquals(2, lst.size());
- assertEquals(new Quad(Quad.defaultGraphNodeGenerated, tLst.get(0)), lst.get(0));
- assertEquals(new Quad(Quad.defaultGraphNodeGenerated, tLst.get(1)), lst.get(1));
+ assertEquals(Quad.create(Quad.defaultGraphNodeGenerated, tLst.get(0)), lst.get(0));
+ assertEquals(Quad.create(Quad.defaultGraphNodeGenerated, tLst.get(1)), lst.get(1));
}
@Test
@@ -85,8 +85,8 @@ public class WhereQuadHolderTest {
List<Quad> lst = holder.getQuads().toList();
assertEquals(2, lst.size());
- assertEquals(new Quad(Quad.defaultGraphNodeGenerated, tLst.get(0)), lst.get(0));
- assertEquals(new Quad(Quad.defaultGraphNodeGenerated, tLst.get(1)), lst.get(1));
+ assertEquals(Quad.create(Quad.defaultGraphNodeGenerated, tLst.get(0)), lst.get(0));
+ assertEquals(Quad.create(Quad.defaultGraphNodeGenerated, tLst.get(1)), lst.get(1));
}
@Test
@@ -114,8 +114,8 @@ public class WhereQuadHolderTest {
List<Quad> lst = holder.getQuads().toList();
assertEquals(2, lst.size());
- assertEquals(new Quad(g, tLst.get(0)), lst.get(0));
- assertEquals(new Quad(g, tLst.get(1)), lst.get(1));
+ assertEquals(Quad.create(g, tLst.get(0)), lst.get(0));
+ assertEquals(Quad.create(g, tLst.get(1)), lst.get(1));
}
@Test
@@ -148,8 +148,8 @@ public class WhereQuadHolderTest {
List<Quad> lst = holder.getQuads().toList();
assertEquals(2, lst.size());
- assertEquals(new Quad(g, tLst.get(0)), lst.get(0));
- assertEquals(new Quad(g, tLst.get(1)), lst.get(1));
+ assertEquals(Quad.create(g, tLst.get(0)), lst.get(0));
+ assertEquals(Quad.create(g, tLst.get(1)), lst.get(1));
}
@Test
@@ -174,8 +174,8 @@ public class WhereQuadHolderTest {
List<Quad> lst = holder.getQuads().toList();
assertEquals(2, lst.size());
- assertEquals(new Quad(Quad.defaultGraphNodeGenerated, tLst.get(0)), lst.get(0));
- assertEquals(new Quad(g, tLst.get(1)), lst.get(1));
+ assertEquals(Quad.create(Quad.defaultGraphNodeGenerated, tLst.get(0)), lst.get(0));
+ assertEquals(Quad.create(g, tLst.get(1)), lst.get(1));
}
@Test
@@ -204,7 +204,7 @@ public class WhereQuadHolderTest {
List<Quad> lst = holder.getQuads().toList();
assertEquals(2, lst.size());
- assertEquals(new Quad(Quad.defaultGraphNodeGenerated, tLst.get(0)), lst.get(0));
- assertEquals(new Quad(g, tLst.get(1)), lst.get(1));
+ assertEquals(Quad.create(Quad.defaultGraphNodeGenerated, tLst.get(0)), lst.get(0));
+ assertEquals(Quad.create(g, tLst.get(1)), lst.get(1));
}
}
diff --git a/jena-text/src/main/java/org/apache/jena/query/text/changes/ChangesBatched.java b/jena-text/src/main/java/org/apache/jena/query/text/changes/ChangesBatched.java
index 73141aeb80..9040e476ce 100644
--- a/jena-text/src/main/java/org/apache/jena/query/text/changes/ChangesBatched.java
+++ b/jena-text/src/main/java/org/apache/jena/query/text/changes/ChangesBatched.java
@@ -78,7 +78,7 @@ public abstract class ChangesBatched implements TextDatasetChanges {
currentSubject = s ;
}
- batchQuads.add(new Quad(g, s, p, o)) ;
+ batchQuads.add(Quad.create(g, s, p, o)) ;
}
private void startBatch() {
diff --git a/jena-text/src/test/java/org/apache/jena/query/text/changes/ChangesCapture.java b/jena-text/src/test/java/org/apache/jena/query/text/changes/ChangesCapture.java
index a0ca09163e..68ad56ced4 100644
--- a/jena-text/src/test/java/org/apache/jena/query/text/changes/ChangesCapture.java
+++ b/jena-text/src/test/java/org/apache/jena/query/text/changes/ChangesCapture.java
@@ -82,7 +82,7 @@ public class ChangesCapture implements TextDatasetChanges {
@Override
public void change(TextQuadAction qaction, Node g, Node s, Node p, Node o) {
- Quad q = new Quad(g, s, p, o) ;
+ Quad q = Quad.create(g, s, p, o) ;
Pair<TextQuadAction, Quad> pair = Pair.create(qaction, q) ;
switch (qaction) {