Revision: 8014
http://sourceforge.net/p/bigdata/code/8014
Author: mrpersonick
Date: 2014-03-24 01:34:33 +0000 (Mon, 24 Mar 2014)
Log Message:
-----------
added support for EmptyAccessPaths
Modified Paths:
--------------
branches/RDR/bigdata-rdf/src/java/com/bigdata/rdf/store/BigdataTriplePattern.java
branches/RDR/bigdata-rdf/src/java/com/bigdata/rdf/store/BigdataTriplePatternMaterializer.java
Modified: branches/RDR/bigdata-rdf/src/java/com/bigdata/rdf/store/BigdataTriplePattern.java
===================================================================
--- branches/RDR/bigdata-rdf/src/java/com/bigdata/rdf/store/BigdataTriplePattern.java 2014-03-23 22:52:45 UTC (rev 8013)
+++ branches/RDR/bigdata-rdf/src/java/com/bigdata/rdf/store/BigdataTriplePattern.java 2014-03-24 01:34:33 UTC (rev 8014)
@@ -24,9 +24,9 @@
*/
package com.bigdata.rdf.store;
-import com.bigdata.rdf.model.BigdataResource;
-import com.bigdata.rdf.model.BigdataURI;
-import com.bigdata.rdf.model.BigdataValue;
+import org.openrdf.model.Resource;
+import org.openrdf.model.URI;
+import org.openrdf.model.Value;
/**
* A simple class that represents a triple (or quad) pattern.
@@ -38,21 +38,21 @@
// private static final long serialVersionUID = 1L;
- private final BigdataResource s;
- private final BigdataURI p;
- private final BigdataValue o;
- private final BigdataResource c;
+ private final Resource s;
+ private final URI p;
+ private final Value o;
+ private final Resource c;
- public BigdataTriplePattern(final BigdataResource subject,
- final BigdataURI predicate, final BigdataValue object) {
+ public BigdataTriplePattern(final Resource subject,
+ final URI predicate, final Value object) {
- this(subject, predicate, object, (BigdataResource) null);
+ this(subject, predicate, object, (Resource) null);
}
- public BigdataTriplePattern(final BigdataResource subject,
- final BigdataURI predicate, final BigdataValue object,
- final BigdataResource context) {
+ public BigdataTriplePattern(final Resource subject,
+ final URI predicate, final Value object,
+ final Resource context) {
this.s = subject;
@@ -64,28 +64,71 @@
}
- final public BigdataResource getSubject() {
+ final public Resource getSubject() {
return s;
}
- final public BigdataURI getPredicate() {
+ final public URI getPredicate() {
return p;
}
- final public BigdataValue getObject() {
+ final public Value getObject() {
return o;
}
- final public BigdataResource getContext() {
+ final public Resource getContext() {
return c;
}
+
+ @Override
+ public int hashCode() {
+ final int prime = 31;
+ int result = 1;
+ result = prime * result + ((c == null) ? 0 : c.hashCode());
+ result = prime * result + ((o == null) ? 0 : o.hashCode());
+ result = prime * result + ((p == null) ? 0 : p.hashCode());
+ result = prime * result + ((s == null) ? 0 : s.hashCode());
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object obj) {
+ if (this == obj)
+ return true;
+ if (obj == null)
+ return false;
+ if (getClass() != obj.getClass())
+ return false;
+ BigdataTriplePattern other = (BigdataTriplePattern) obj;
+ if (c == null) {
+ if (other.c != null)
+ return false;
+ } else if (!c.equals(other.c))
+ return false;
+ if (o == null) {
+ if (other.o != null)
+ return false;
+ } else if (!o.equals(other.o))
+ return false;
+ if (p == null) {
+ if (other.p != null)
+ return false;
+ } else if (!p.equals(other.p))
+ return false;
+ if (s == null) {
+ if (other.s != null)
+ return false;
+ } else if (!s.equals(other.s))
+ return false;
+ return true;
+ }
}
Modified: branches/RDR/bigdata-rdf/src/java/com/bigdata/rdf/store/BigdataTriplePatternMaterializer.java
===================================================================
--- branches/RDR/bigdata-rdf/src/java/com/bigdata/rdf/store/BigdataTriplePatternMaterializer.java 2014-03-23 22:52:45 UTC (rev 8013)
+++ branches/RDR/bigdata-rdf/src/java/com/bigdata/rdf/store/BigdataTriplePatternMaterializer.java 2014-03-24 01:34:33 UTC (rev 8014)
@@ -24,7 +24,6 @@
*/
package com.bigdata.rdf.store;
-import java.util.Arrays;
import java.util.LinkedList;
import java.util.List;
import java.util.concurrent.ArrayBlockingQueue;
@@ -42,6 +41,7 @@
import com.bigdata.rdf.spo.ISPO;
import com.bigdata.rdf.spo.SPOAccessPath;
import com.bigdata.relation.accesspath.BlockingBuffer;
+import com.bigdata.relation.accesspath.IAccessPath;
import com.bigdata.striterator.AbstractChunkedResolverator;
import com.bigdata.striterator.IChunkedOrderedIterator;
import com.bigdata.util.concurrent.LatchedExecutor;
@@ -241,8 +241,9 @@
* database.computeClosureForStatementIdentifiers(
* database.getAccessPath(s, p, o, c).iterator());
*/
- final SPOAccessPath ap = (SPOAccessPath) state.getAccessPath(stmt.getSubject(),
- stmt.getPredicate(), stmt.getObject(), stmt.getContext());
+ final IAccessPath<ISPO> ap = (IAccessPath<ISPO>) state.getAccessPath(
+ stmt.getSubject(), stmt.getPredicate(),
+ stmt.getObject(), stmt.getContext());
// if(ap.isFullyBoundForKey()) {
// /*
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|