You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@clerezza.apache.org by en...@apache.org on 2014/01/18 01:35:21 UTC
[1/2] git commit: Implemented equals in VirtuosoBNode. Added a test
about BNode in IO tests
Updated Branches:
refs/heads/master aa2eb1d16 -> 575667c5c
Implemented equals in VirtuosoBNode. Added a test about BNode in IO tests
Project: http://git-wip-us.apache.org/repos/asf/clerezza/repo
Commit: http://git-wip-us.apache.org/repos/asf/clerezza/commit/865a6950
Tree: http://git-wip-us.apache.org/repos/asf/clerezza/tree/865a6950
Diff: http://git-wip-us.apache.org/repos/asf/clerezza/diff/865a6950
Branch: refs/heads/master
Commit: 865a6950727f10f4705a7e84fb44de7adf1cae24
Parents: aa2eb1d
Author: enridaga <en...@apache.org>
Authored: Sat Jan 18 00:20:21 2014 +0000
Committer: enridaga <en...@apache.org>
Committed: Sat Jan 18 00:20:21 2014 +0000
----------------------------------------------------------------------
.../rdf/virtuoso/storage/VirtuosoMGraph.java | 9 +-
.../access/VirtuosoWeightedProvider.java | 7 +-
.../java/rdf/virtuoso/storage/RdfIOTest.java | 183 ++++++++++++++-----
3 files changed, 150 insertions(+), 49 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/clerezza/blob/865a6950/clerezza-virtuoso/rdf.virtuoso.storage/src/main/java/rdf/virtuoso/storage/VirtuosoMGraph.java
----------------------------------------------------------------------
diff --git a/clerezza-virtuoso/rdf.virtuoso.storage/src/main/java/rdf/virtuoso/storage/VirtuosoMGraph.java b/clerezza-virtuoso/rdf.virtuoso.storage/src/main/java/rdf/virtuoso/storage/VirtuosoMGraph.java
index 8fc878d..32c0ddf 100644
--- a/clerezza-virtuoso/rdf.virtuoso.storage/src/main/java/rdf/virtuoso/storage/VirtuosoMGraph.java
+++ b/clerezza-virtuoso/rdf.virtuoso.storage/src/main/java/rdf/virtuoso/storage/VirtuosoMGraph.java
@@ -221,7 +221,6 @@ public class VirtuosoMGraph extends AbstractMGraph implements MGraph,
list.add(new TripleBuilder(rs.getObject(1),
rs.getObject(2), rs.getObject(3)).build());
}
- readLock.unlock();
/*
iterator = new Iterator<Triple>() {
Triple current = null;
@@ -300,10 +299,13 @@ public class VirtuosoMGraph extends AbstractMGraph implements MGraph,
logger.error("ERROR while executing statement", e1);
e = e1;
} finally{
+ readLock.unlock();
try { if (rs != null) rs.close(); } catch (Exception ex) {};
try { if (st != null) st.close(); } catch (Exception ex) {};
try {
- connection.close();
+ if(connection != null){
+ connection.close();
+ }
} catch (VirtuosoException e1) {
logger.error("Cannot close connection", e1);
}
@@ -607,7 +609,8 @@ public class VirtuosoMGraph extends AbstractMGraph implements MGraph,
virtBnode = nextVirtBnode();
bnodesMap.put(virtBnode, bnode);
}
- return bnodesMap.getKey(bnode);
+ logger.info("{} {}", virtBnode, bnode);
+ return virtBnode;
}
}
http://git-wip-us.apache.org/repos/asf/clerezza/blob/865a6950/clerezza-virtuoso/rdf.virtuoso.storage/src/main/java/rdf/virtuoso/storage/access/VirtuosoWeightedProvider.java
----------------------------------------------------------------------
diff --git a/clerezza-virtuoso/rdf.virtuoso.storage/src/main/java/rdf/virtuoso/storage/access/VirtuosoWeightedProvider.java b/clerezza-virtuoso/rdf.virtuoso.storage/src/main/java/rdf/virtuoso/storage/access/VirtuosoWeightedProvider.java
index e95972f..c64044c 100644
--- a/clerezza-virtuoso/rdf.virtuoso.storage/src/main/java/rdf/virtuoso/storage/access/VirtuosoWeightedProvider.java
+++ b/clerezza-virtuoso/rdf.virtuoso.storage/src/main/java/rdf/virtuoso/storage/access/VirtuosoWeightedProvider.java
@@ -591,16 +591,17 @@ public class VirtuosoWeightedProvider implements WeightedTcProvider {
private long getPermissions(String graph) {
VirtuosoConnection connection = null;
+ ResultSet rs = null;
+ Statement st = null;
logger.debug("getPermissions(String {})", graph);
Exception e = null;
Long result = null;
try {
connection = getConnection();
- ResultSet rs;
String sql = "SELECT DB.DBA.RDF_GRAPH_USER_PERMS_GET ('" + graph
+ "','" + connection.getMetaData().getUserName() + "') ";
logger.debug("Executing SQL: {}", sql);
- Statement st = connection.createStatement();
+ st = connection.createStatement();
st.execute(sql);
rs = st.getResultSet();
rs.next();
@@ -616,6 +617,8 @@ public class VirtuosoWeightedProvider implements WeightedTcProvider {
logger.error("An ClassNotFoundException occurred.");
e = e1;
} finally {
+ try { if (rs != null) rs.close(); } catch (Exception ex) {};
+ try { if (st != null) st.close(); } catch (Exception ex) {};
if(connection!=null){
try {
connection.close();
http://git-wip-us.apache.org/repos/asf/clerezza/blob/865a6950/clerezza-virtuoso/rdf.virtuoso.storage/src/test/java/rdf/virtuoso/storage/RdfIOTest.java
----------------------------------------------------------------------
diff --git a/clerezza-virtuoso/rdf.virtuoso.storage/src/test/java/rdf/virtuoso/storage/RdfIOTest.java b/clerezza-virtuoso/rdf.virtuoso.storage/src/test/java/rdf/virtuoso/storage/RdfIOTest.java
index 0db7a88..100e871 100644
--- a/clerezza-virtuoso/rdf.virtuoso.storage/src/test/java/rdf/virtuoso/storage/RdfIOTest.java
+++ b/clerezza-virtuoso/rdf.virtuoso.storage/src/test/java/rdf/virtuoso/storage/RdfIOTest.java
@@ -20,6 +20,7 @@ package rdf.virtuoso.storage;
import java.sql.SQLException;
import java.sql.Statement;
+import java.util.Iterator;
import org.apache.clerezza.rdf.core.BNode;
import org.apache.clerezza.rdf.core.NonLiteral;
@@ -37,7 +38,6 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import rdf.virtuoso.storage.access.VirtuosoWeightedProvider;
-
import virtuoso.jdbc4.VirtuosoException;
public class RdfIOTest {
@@ -45,7 +45,8 @@ public class RdfIOTest {
static final String TEST_GRAPH_NAME = "RdfIOTest";
static final String XSD = "http://www.w3.org/2001/XMLSchema#";
static Logger log = LoggerFactory.getLogger(RdfIOTest.class);
- static VirtuosoWeightedProvider wp ;
+ static VirtuosoWeightedProvider wp;
+
/**
* Clean before any test
*
@@ -63,7 +64,7 @@ public class RdfIOTest {
mgraph.clear();
log.debug("Clearing graph <{}>", TEST_GRAPH_NAME);
}
-
+
/**
* Clean after a test
*
@@ -84,140 +85,151 @@ public class RdfIOTest {
Statement st = TestUtils.getConnection().createStatement();
st.execute("SPARQL CLEAR GRAPH <" + TEST_GRAPH_NAME + ">");
}
-
+
@Test
- public void xsdString() throws ClassNotFoundException, SQLException{
+ public void xsdString() throws ClassNotFoundException, SQLException {
if (TestUtils.SKIP) {
log.warn("SKIPPED");
return;
}
log.info("Text an xsd:string");
- TypedLiteral object = new TypedLiteralImpl("lorem ipsum", new UriRef(XSD + "string"));
+ TypedLiteral object = new TypedLiteralImpl("lorem ipsum", new UriRef(
+ XSD + "string"));
UriRef subject = new UriRef("urn:io-test:reto");
UriRef predicate = new UriRef("urn:io-test:hasText");
-
+
Triple read = writeAndRead(subject, predicate, object);
- Assert.assertTrue(read.equals(new TripleImpl(subject, predicate, object)));
+ Assert.assertTrue(read
+ .equals(new TripleImpl(subject, predicate, object)));
Assert.assertTrue(read.getObject() instanceof TypedLiteral);
TypedLiteral l = (TypedLiteral) read.getObject();
Assert.assertEquals(l.getDataType(), new UriRef(XSD + "string"));
-
+
}
-
+
@Test
- public void longString() throws ClassNotFoundException, SQLException{
+ public void longString() throws ClassNotFoundException, SQLException {
if (TestUtils.SKIP) {
log.warn("SKIPPED");
return;
}
- log.info("Test a long xsd:string");
+ log.info("Test a long xsd:string");
StringBuilder longStr = new StringBuilder();
int c = 1000;
- while (c>0){
+ while (c > 0) {
longStr.append(" another piece of string ");
c--;
}
int size = longStr.length();
- TypedLiteral object = new TypedLiteralImpl(longStr.toString(), new UriRef(XSD + "string"));
+ TypedLiteral object = new TypedLiteralImpl(longStr.toString(),
+ new UriRef(XSD + "string"));
UriRef subject = new UriRef("urn:io-test:reto");
UriRef predicate = new UriRef("urn:io-test:hasText");
Triple read = writeAndRead(subject, predicate, object);
- Assert.assertTrue(read.equals(new TripleImpl(subject, predicate, object)));
+ Assert.assertTrue(read
+ .equals(new TripleImpl(subject, predicate, object)));
Assert.assertTrue(read.getObject() instanceof TypedLiteral);
TypedLiteral l = (TypedLiteral) read.getObject();
Assert.assertEquals(l.getDataType(), new UriRef(XSD + "string"));
Assert.assertTrue(l.getLexicalForm().length() == size);
}
-
- private Triple writeAndRead(NonLiteral subject, UriRef predicate, Resource object) throws ClassNotFoundException, SQLException{
- VirtuosoMGraph graph = new VirtuosoMGraph(TEST_GRAPH_NAME, TestUtils.getProvider());
+
+ private Triple writeAndRead(NonLiteral subject, UriRef predicate,
+ Resource object) throws ClassNotFoundException, SQLException {
+ VirtuosoMGraph graph = new VirtuosoMGraph(TEST_GRAPH_NAME,
+ TestUtils.getProvider());
Triple t = new TripleImpl(subject, predicate, object);
graph.add(t);
Triple read = graph.getGraph().iterator().next();
-
+
return read;
}
-
+
@Test
- public void subjectAsUriTest() throws ClassNotFoundException, SQLException{
+ public void subjectAsUriTest() throws ClassNotFoundException, SQLException {
if (TestUtils.SKIP) {
log.warn("SKIPPED");
return;
}
- log.info("Test subject as UriRef");
+ log.info("Test subject as UriRef");
NonLiteral subject;
UriRef predicate = new UriRef("urn:io-test:predicate");
UriRef object = new UriRef("urn:io-test:object");
-
+
// subject may be UriRef
subject = new UriRef("urn:io-test:enridaga");
Triple read = writeAndRead(subject, predicate, object);
Assert.assertTrue(read.getSubject().equals(subject));
- Assert.assertEquals(read.getSubject(), new UriRef("urn:io-test:enridaga"));
- Assert.assertNotSame(read.getSubject(), new UriRef("urn:io-test:alexdma"));
+ Assert.assertEquals(read.getSubject(), new UriRef(
+ "urn:io-test:enridaga"));
+ Assert.assertNotSame(read.getSubject(), new UriRef(
+ "urn:io-test:alexdma"));
Assert.assertEquals(read, new TripleImpl(subject, predicate, object));
-
+
}
-
+
@Test
- public void subjectAsBnodeTest() throws ClassNotFoundException, SQLException{
+ public void subjectAsBnodeTest() throws ClassNotFoundException,
+ SQLException {
if (TestUtils.SKIP) {
log.warn("SKIPPED");
return;
}
- log.info("Test subject as BNode");
+ log.info("Test subject as BNode");
NonLiteral subject;
UriRef predicate = new UriRef("urn:io-test:predicate");
UriRef object = new UriRef("urn:io-test:object");
-
+
// subject may be BNode
subject = new BNode();
Triple read = writeAndRead(subject, predicate, object);
// bnodes cannot be equals!
Assert.assertFalse(read.getSubject().equals(subject));
Assert.assertTrue(read.getSubject() instanceof BNode);
- Assert.assertNotSame(read.getSubject(), new UriRef("urn:io-test:enridaga"));
- Assert.assertNotSame(read.getSubject(), new UriRef("urn:io-test:alexdma"));
+ Assert.assertNotSame(read.getSubject(), new UriRef(
+ "urn:io-test:enridaga"));
+ Assert.assertNotSame(read.getSubject(), new UriRef(
+ "urn:io-test:alexdma"));
// bnodes cannot be equals!
Assert.assertNotSame(read, new TripleImpl(subject, predicate, object));
}
-
+
@Test
- public void objectAsUriTest() throws ClassNotFoundException, SQLException{
+ public void objectAsUriTest() throws ClassNotFoundException, SQLException {
if (TestUtils.SKIP) {
log.warn("SKIPPED");
return;
}
- log.info("Test object as UriRef");
+ log.info("Test object as UriRef");
NonLiteral subject = new UriRef("urn:io-test:enridaga");
UriRef predicate = new UriRef("urn:io-test:predicate");
UriRef object = new UriRef("urn:io-test:object");
-
+
Triple read = writeAndRead(subject, predicate, object);
- //
+ //
Assert.assertTrue(read.getObject().equals(object));
Assert.assertTrue(read.getObject() instanceof UriRef);
Assert.assertEquals(read.getObject(), new UriRef("urn:io-test:object"));
- Assert.assertNotSame(read.getSubject(), new UriRef("urn:io-test:alexdma"));
+ Assert.assertNotSame(read.getSubject(), new UriRef(
+ "urn:io-test:alexdma"));
Assert.assertEquals(read, new TripleImpl(subject, predicate, object));
}
-
@Test
- public void objectAsBnodeTest() throws ClassNotFoundException, SQLException{
+ public void objectAsBnodeTest() throws ClassNotFoundException, SQLException {
if (TestUtils.SKIP) {
log.warn("SKIPPED");
return;
}
- log.info("Test object as Bnode");
+ log.info("Test object as Bnode");
NonLiteral subject = new UriRef("urn:io-test:subject");
UriRef predicate = new UriRef("urn:io-test:predicate");
Resource object;
-
+
// subject may be BNode
object = new BNode();
Triple read = writeAndRead(subject, predicate, object);
@@ -226,9 +238,92 @@ public class RdfIOTest {
Assert.assertTrue(read.getSubject().equals(subject));
Assert.assertTrue(read.getObject() instanceof BNode);
Assert.assertNotSame(read.getObject(), object);
- Assert.assertNotSame(read.getObject(), new UriRef("urn:io-test:enridaga"));
- Assert.assertNotSame(read.getObject(), new UriRef("urn:io-test:alexdma"));
+ Assert.assertNotSame(read.getObject(), new UriRef(
+ "urn:io-test:enridaga"));
+ Assert.assertNotSame(read.getObject(),
+ new UriRef("urn:io-test:alexdma"));
// bnodes cannot be equals!
Assert.assertNotSame(read, new TripleImpl(subject, predicate, object));
}
+
+ @Test
+ public void bnodesTest() throws ClassNotFoundException, SQLException {
+ if (TestUtils.SKIP) {
+ log.warn("SKIPPED");
+ return;
+ }
+ log.info("Test iterations and filter with bnode");
+
+ NonLiteral s1 = new BNode();
+ NonLiteral s2 = new BNode();
+ NonLiteral s3 = new BNode();
+ NonLiteral s4 = new BNode();
+
+ UriRef p1 = new UriRef("p1");
+ UriRef p2 = new UriRef("p2");
+ UriRef p3 = new UriRef("p3");
+
+ VirtuosoMGraph graph = new VirtuosoMGraph(TEST_GRAPH_NAME,
+ TestUtils.getProvider());
+
+ graph.add(new TripleImpl(s1, p1, s2));
+ // Get the bnode of s1
+ Triple first = graph.filter(null, p1, null).next();
+
+ Assert.assertTrue(first.getSubject() instanceof VirtuosoBNode);
+ Assert.assertTrue(first.getObject() instanceof VirtuosoBNode);
+
+ BNode s1intern = (BNode) first.getSubject();
+ BNode s2intern = (BNode) first.getObject();
+
+ graph.add(new TripleImpl(s2intern, p1, s3));
+ Triple second = graph.filter(s2intern, p1, null).next();
+ Assert.assertTrue(second.getObject() instanceof VirtuosoBNode);
+ BNode s3intern = (BNode) second.getObject();
+
+ graph.add(new TripleImpl(s1intern, p2, s4));
+ Triple third = graph.filter(s1intern, p2, null).next();
+ Assert.assertTrue(third.getObject() instanceof VirtuosoBNode);
+ BNode s4intern = (BNode) third.getObject();
+
+ graph.add(new TripleImpl(s1intern, p2, s4intern));
+ graph.add(new TripleImpl(s4intern, p3, s1intern));
+
+ Iterator<Triple> all = graph.iterator();
+ while(all.hasNext()){
+ Triple l = all.next();
+ log.info("{} {} {}",new Object[]{ l.getSubject(), l.getPredicate(), l.getObject()});
+ }
+ Iterator<Triple> i = graph.filter(null, p2, null);
+ int n = 0;
+ while (i.hasNext()) {
+ n++;
+ Triple s1t = i.next();
+ Iterator<Triple> s1i = graph.filter(s1t.getSubject(), null, null);
+ boolean found = false;
+ while (s1i.hasNext()) {
+ Triple s1it = s1i.next();
+ found = true;
+ log.info("{} {}",s1it.getSubject(), s1t.getSubject());
+ //Assert.assertTrue(s1it.getSubject().equals(s1t.getSubject()));
+ Assert.assertTrue(s1it.getPredicate().equals(p1)
+ || s1it.getPredicate().equals(p2));
+
+ }
+ Assert.assertTrue(found);
+ Assert.assertTrue(s1t.getObject() instanceof VirtuosoBNode);
+ Assert.assertTrue(s1t.getSubject() instanceof VirtuosoBNode);
+ Iterator<Triple> s4i = graph.filter((NonLiteral) s1t.getObject(),
+ null, null);
+ log.info("s4 {} ",s1t.getObject());
+ while (s4i.hasNext()) {
+ Triple s4it = s4i.next();
+ log.info("{} {}",s4it.getSubject(), s1t.getObject());
+ Assert.assertTrue(s4it.getSubject().equals(s1t.getObject()));
+ Assert.assertTrue(s4it.getPredicate().equals(p3));
+ }
+ }
+ Assert.assertEquals(n, 1);
+
+ }
}
[2/2] git commit: CLEREZZA-865 CLEREZZA-866 : Removed commented code,
cleanup of compile warnings
Posted by en...@apache.org.
CLEREZZA-865 CLEREZZA-866 : Removed commented code, cleanup of compile warnings
Project: http://git-wip-us.apache.org/repos/asf/clerezza/repo
Commit: http://git-wip-us.apache.org/repos/asf/clerezza/commit/575667c5
Tree: http://git-wip-us.apache.org/repos/asf/clerezza/tree/575667c5
Diff: http://git-wip-us.apache.org/repos/asf/clerezza/diff/575667c5
Branch: refs/heads/master
Commit: 575667c5cab1d454418cdb6eecfa1c591e98b2fd
Parents: 865a695
Author: enridaga <en...@apache.org>
Authored: Sat Jan 18 00:29:22 2014 +0000
Committer: enridaga <en...@apache.org>
Committed: Sat Jan 18 00:29:22 2014 +0000
----------------------------------------------------------------------
.../rdf/virtuoso/storage/VirtuosoGraph.java | 1 -
.../rdf/virtuoso/storage/VirtuosoMGraph.java | 163 +------------------
.../access/VirtuosoWeightedProvider.java | 116 +------------
.../java/rdf/virtuoso/storage/RdfIOTest.java | 5 +-
.../java/rdf/virtuoso/storage/TestUtils.java | 1 -
.../virtuoso/storage/VirtuosoMGraphTest.java | 6 -
6 files changed, 9 insertions(+), 283 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/clerezza/blob/575667c5/clerezza-virtuoso/rdf.virtuoso.storage/src/main/java/rdf/virtuoso/storage/VirtuosoGraph.java
----------------------------------------------------------------------
diff --git a/clerezza-virtuoso/rdf.virtuoso.storage/src/main/java/rdf/virtuoso/storage/VirtuosoGraph.java b/clerezza-virtuoso/rdf.virtuoso.storage/src/main/java/rdf/virtuoso/storage/VirtuosoGraph.java
index 9f9a022..a6669e8 100644
--- a/clerezza-virtuoso/rdf.virtuoso.storage/src/main/java/rdf/virtuoso/storage/VirtuosoGraph.java
+++ b/clerezza-virtuoso/rdf.virtuoso.storage/src/main/java/rdf/virtuoso/storage/VirtuosoGraph.java
@@ -27,7 +27,6 @@ import org.slf4j.LoggerFactory;
import rdf.virtuoso.storage.access.VirtuosoWeightedProvider;
-import virtuoso.jdbc4.VirtuosoConnection;
/**
* This is a read-only version of {@link VirtuosoMGraph}
* @author enridaga
http://git-wip-us.apache.org/repos/asf/clerezza/blob/575667c5/clerezza-virtuoso/rdf.virtuoso.storage/src/main/java/rdf/virtuoso/storage/VirtuosoMGraph.java
----------------------------------------------------------------------
diff --git a/clerezza-virtuoso/rdf.virtuoso.storage/src/main/java/rdf/virtuoso/storage/VirtuosoMGraph.java b/clerezza-virtuoso/rdf.virtuoso.storage/src/main/java/rdf/virtuoso/storage/VirtuosoMGraph.java
index 32c0ddf..565b8de 100644
--- a/clerezza-virtuoso/rdf.virtuoso.storage/src/main/java/rdf/virtuoso/storage/VirtuosoMGraph.java
+++ b/clerezza-virtuoso/rdf.virtuoso.storage/src/main/java/rdf/virtuoso/storage/VirtuosoMGraph.java
@@ -79,10 +79,6 @@ public class VirtuosoMGraph extends AbstractMGraph implements MGraph,
protected Logger logger = LoggerFactory.getLogger(VirtuosoMGraph.class);
/**
- * Connection
- */
-// private VirtuosoConnection connection = null;
- /**
* The name of the graph
*/
private String name = null;
@@ -151,22 +147,6 @@ public class VirtuosoMGraph extends AbstractMGraph implements MGraph,
String virtSubject = toVirtSubject(subject);
String virtPredicate = toVirtPredicate(predicate);
String virtObject = toVirtObject(object);
-//
-// sb.append("SPARQL SELECT ?SUBJECT ?PREDICATE ?OBJECT WHERE { GRAPH <")
-// .append(this.getName()).append("> { ")
-// .append(" ?SUBJECT ?PREDICATE ?OBJECT ");
-// if (virtSubject != null) {
-// sb.append(". FILTER( ").append("?SUBJECT = ").append(virtSubject)
-// .append(") ");
-// }
-// if (virtPredicate != null) {
-// sb.append(". FILTER( ").append("?PREDICATE = ")
-// .append(virtPredicate).append(") ");
-// }
-// if (virtObject != null) {
-// sb.append(". FILTER( ").append("?OBJECT = ").append(virtObject)
-// .append(") ");
-// }
sb.append("SPARQL SELECT ");
if (virtSubject != null) {
@@ -214,79 +194,13 @@ public class VirtuosoMGraph extends AbstractMGraph implements MGraph,
readLock.lock();
connection = provider.getConnection();
st = connection.createStatement();
- boolean has = st.execute(sql);
+ st.execute(sql);
rs = (VirtuosoResultSet) st.getResultSet();
list = new ArrayList<Triple>();
while(rs.next()){
list.add(new TripleBuilder(rs.getObject(1),
rs.getObject(2), rs.getObject(3)).build());
}
- /*
- iterator = new Iterator<Triple>() {
- Triple current = null;
- private boolean didNext = false;
- private boolean hasNext = false;
-
- @Override
- public boolean hasNext() {
- readLock.lock();
- try {
- if (!didNext) {
- hasNext = rs.next();
- didNext = true;
- }
- } catch (SQLException e) {
- logger.error("Error while iterating results", e);
- } finally {
- readLock.unlock();
- }
- if(hasNext == false){
- // here we close the connection
- // XXX Surely this is wrong
- try { if (rs != null) rs.close(); } catch (Exception ex) {};
- try { if (st != null) st.close(); } catch (Exception ex) {};
- try {
- connection.close();
- } catch (VirtuosoException e1) {
- logger.error("Cannot close connection", e1);
- }
- }
- return hasNext;
- }
-
- @Override
- public Triple next() {
- try {
- readLock.lock();
- if (!didNext) {
- rs.next();
- }
- didNext = false;
- current = new TripleBuilder(rs.getObject(1),
- rs.getObject(2), rs.getObject(3)).build();
- } catch (VirtuosoException e) {
- logger.error("Error while iterating results", e);
- } finally {
- readLock.unlock();
- }
- return current;
- }
-
- @Override
- public void remove() {
- writeLock.lock();
- try {
- if (current == null) {
- throw new IllegalStateException();
- }
- VirtuosoMGraph.this.performRemove(current);
- current = null;
- } finally {
- writeLock.unlock();
- }
- }
- };
- */
} catch (VirtuosoException ve) {
logger.error("ERROR while executing statement", ve);
logger.error(" executing SQL: {}", sql);
@@ -487,59 +401,6 @@ public class VirtuosoMGraph extends AbstractMGraph implements MGraph,
}
return true;
}
-//
-// /**
-// * Adds a triple in the store
-// *
-// * @param triple
-// * @param connection
-// * @return
-// */
-// private boolean add(Triple triple, VirtuosoConnection connection) {
-// logger.debug("add(Triple {}, VirtuosoConnection {})", triple,
-// connection);
-// String sql = getAddSQLStatement(triple);
-// logger.debug("Executing SQL: {}", sql);
-// writeLock.lock();
-// try {
-// Statement st = connection.createStatement();
-// st.execute(sql);
-// } catch (VirtuosoException e) {
-// logger.error("ERROR while executing statement", e);
-// return false;
-// } catch (SQLException e) {
-// logger.error("ERROR while executing statement", e);
-// return false;
-// } finally {
-// writeLock.unlock();
-// }
-// return true;
-// }
-
-// /**
-// * Removes a triple from the store.
-// *
-// * @param triple
-// * @param connection
-// * @return
-// */
-// private boolean remove(Triple triple, VirtuosoConnection connection) {
-// logger.debug("remove(Triple triple, VirtuosoConnection connection)",
-// triple, connection);
-// String sql = getRemoveSQLStatement(triple);
-// logger.debug("Executing SQL: {}", sql);
-// writeLock.lock();
-// try {
-// Statement st = connection.createStatement();
-// st.execute(sql);
-// } catch (SQLException e) {
-// logger.error("ERROR while executing statement", e);
-// return false;
-// } finally {
-// writeLock.unlock();
-// }
-// return true;
-// }
/**
* Returns the graph name
@@ -552,24 +413,15 @@ public class VirtuosoMGraph extends AbstractMGraph implements MGraph,
}
/**
- * Get the clerezza BNode corresponding to the given String from a Virtuoso
- * resultset.
+ * Build a virtuoso bnode mapped to the intern
*
* @param virtbnode
* @return
*/
private VirtuosoBNode toBNode(String virtbnode) {
logger.debug("toBNode(String {})", virtbnode);
-// VirtuosoBNode bnode = bnodesMap.get(virtbnode);
VirtuosoBNode bnode;
-// if (bnode == null) {
- //bnode = new BNode();
- bnode = new VirtuosoBNode(virtbnode);
- // skolemize so we get it in future queries
- //bnodesMap.put(virtbnode.replaceFirst("nodeID://", "_:"), bnode);
-// bnodesMap.put(new StringBuilder().append('<').append(virtbnode).append('>').toString(), bnode);
-// }
- // Subject is BNode
+ bnode = new VirtuosoBNode(virtbnode);
return bnode;
}
@@ -592,14 +444,6 @@ public class VirtuosoMGraph extends AbstractMGraph implements MGraph,
*/
private String toVirtBnode(BNode bnode) {
logger.debug("toVirtBnode(BNode {})", bnode);
-// String virtBnode = bnodesMap.getKey(bnode);
-//
-// if (virtBnode == null) {
-// // We create a local bnode mapped to the BNode given
-// virtBnode = nextVirtBnode();
-// bnodesMap.put(virtBnode, bnode);
-// }
-// return virtBnode;
if(bnode instanceof VirtuosoBNode){
return ((VirtuosoBNode) bnode).asSkolemIri();
}else{
@@ -832,7 +676,6 @@ public class VirtuosoMGraph extends AbstractMGraph implements MGraph,
return new TypedLiteralImpl(value, new UriRef(type));
}
}else if(rb.rb_box instanceof VirtuosoExtendedString){
- //logger.info("VirtuosoExtendedString");
VirtuosoExtendedString vs = (VirtuosoExtendedString) rb.rb_box;
if (vs.iriType == VirtuosoExtendedString.IRI
http://git-wip-us.apache.org/repos/asf/clerezza/blob/575667c5/clerezza-virtuoso/rdf.virtuoso.storage/src/main/java/rdf/virtuoso/storage/access/VirtuosoWeightedProvider.java
----------------------------------------------------------------------
diff --git a/clerezza-virtuoso/rdf.virtuoso.storage/src/main/java/rdf/virtuoso/storage/access/VirtuosoWeightedProvider.java b/clerezza-virtuoso/rdf.virtuoso.storage/src/main/java/rdf/virtuoso/storage/access/VirtuosoWeightedProvider.java
index c64044c..affed28 100644
--- a/clerezza-virtuoso/rdf.virtuoso.storage/src/main/java/rdf/virtuoso/storage/access/VirtuosoWeightedProvider.java
+++ b/clerezza-virtuoso/rdf.virtuoso.storage/src/main/java/rdf/virtuoso/storage/access/VirtuosoWeightedProvider.java
@@ -18,7 +18,6 @@
*/
package rdf.virtuoso.storage.access;
-import java.io.FileNotFoundException;
import java.io.PrintWriter;
import java.math.BigInteger;
import java.security.MessageDigest;
@@ -101,11 +100,6 @@ public class VirtuosoWeightedProvider implements WeightedTcProvider {
private Map<UriRef, VirtuosoMGraph> graphs = null;
/**
- * JDBC Connection to Virtuoso DBMS
- */
-// private VirtuosoConnection connection = null;
-
- /**
* Weight
*/
private int weight = DEFAULT_WEIGHT;
@@ -131,31 +125,6 @@ public class VirtuosoWeightedProvider implements WeightedTcProvider {
logger.debug("Created VirtuosoWeightedProvider.");
}
-// /**
-// * Creates a new {@link VirtuosoWeightedProvider}
-// *
-// * @param connection
-// */
-// public VirtuosoWeightedProvider(VirtuosoConnection connection) {
-// logger.debug("Created VirtuosoWeightedProvider with connection: {}",
-// connection);
-//// this.connection = connection;
-// }
-
-// /**
-// * Creates a new {@link VirtuosoWeightedProvider}
-// *
-// * @param connection
-// * @param weight
-// */
-// public VirtuosoWeightedProvider(VirtuosoConnection connection, int weight) {
-// logger.debug(
-// "Created VirtuosoWeightedProvider with connection = {} and weight = {}.",
-// connection, weight);
-// this.weight = weight;
-//// this.connection = connection;
-// }
-
public VirtuosoWeightedProvider(String jdbcConnectionString,
String jdbcUser, String jdbcPassword) {
connStr = jdbcConnectionString;
@@ -177,7 +146,7 @@ public class VirtuosoWeightedProvider implements WeightedTcProvider {
public void activate(ComponentContext cCtx) {
logger.info("activate(ComponentContext {})", cCtx);
logger.info("Activating VirtuosoWeightedProvider...");
-// if (cCtx == null && connection == null) {
+
if (cCtx == null ) {
logger.error("No component context given and connection was not set");
throw new IllegalArgumentException(
@@ -208,8 +177,7 @@ public class VirtuosoWeightedProvider implements WeightedTcProvider {
connStr = new StringBuilder().append("jdbc:virtuoso://")
.append(host).append(":").append(port).toString();
- // Init connection
-// this.initConnection(connStr, user, pwd);
+ // Check connection
VirtuosoConnection connection = getConnection(connStr, user, pwd);
// Debug activation
@@ -277,58 +245,10 @@ public class VirtuosoWeightedProvider implements WeightedTcProvider {
@Deactivate
public void deactivate(ComponentContext cCtx) {
logger.debug("deactivate(ComponentContext {})", cCtx);
-// try {
-// if (this.connection != null) {
-// if (this.connection.isClosed()) {
-// logger.debug("Connection is already closed");
-// } else {
-// logger.debug("Closing connection");
-// // We close the connection
-// this.connection.close();
-// }
-// }
-// } catch (Exception re) {
-// logger.warn(re.toString(), re);
-// throw new RuntimeException(re);
-// }
+ // XXX Anything to do here?
logger.info("Shutdown complete.");
}
-
- /**
- * Initialize the JDBC connection
- *
- * @param connStr
- * @param user
- * @param pwd
- * @throws SQLException
- * @throws ClassNotFoundException
- */
-// private void initConnection(String connStr, String user, String pwd)
-// throws SQLException, ClassNotFoundException {
-// logger.debug("initConnection(String {}, String {}, String *******)",
-// connStr, user);
-// if (this.connection != null) {
-// logger.debug("Connection already instantiated: {}", this.connection);
-// logger.debug("Closing connection");
-// this.connection.close();
-// }
-// /**
-// * FIXME For some reasons, it looks the DriverManager is instantiating a
-// * new virtuoso.jdbc4.Driver instance upon any activation. (Enable debug
-// * to see this in the stderr stream)
-// */
-// logger.debug("Loading JDBC Driver");
-// Class.forName(VirtuosoWeightedProvider.DRIVER, true, this.getClass()
-// .getClassLoader());
-// if (logger.isDebugEnabled()) {
-// logger.debug("Activating logging for DriverManager in stderr");
-// // FIXME! How to redirect logging to our logger???
-// DriverManager.setLogWriter(new PrintWriter(System.err));
-// }
-// connection = (VirtuosoConnection) DriverManager.getConnection(connStr,
-// user, pwd);
-// logger.debug("Connection initialized: {}", connection);
-// }
+
public VirtuosoConnection getConnection() throws SQLException, ClassNotFoundException{
return getConnection(connStr, user, pwd);
}
@@ -336,11 +256,6 @@ public class VirtuosoWeightedProvider implements WeightedTcProvider {
throws SQLException, ClassNotFoundException {
logger.debug("getConnection(String {}, String {}, String *******)",
connStr, user);
- // if (this.connection != null) {
- // logger.debug("Connection already instantiated: {}", this.connection);
- // logger.debug("Closing connection");
- // this.connection.close();
- // }
/**
* FIXME For some reasons, it looks the DriverManager is instantiating a
* new virtuoso.jdbc4.Driver instance upon any activation. (Enable debug
@@ -359,29 +274,6 @@ public class VirtuosoWeightedProvider implements WeightedTcProvider {
}
/**
- * Whether the connection is active or not
- *
- * @return
- */
-// public boolean isConnectionAlive() {
-//
-// logger.debug("isConnectionAlive() : {}", connection);
-// if (this.connection == null) {
-// logger.warn("Connection is null");
-// return false;
-// }
-// if (this.connection.isClosed()) {
-// logger.warn("Connection is closed");
-// return false;
-// }
-// if (this.connection.isConnectionLost()) {
-// logger.warn("Connection is lost");
-// return false;
-// }
-// return true;
-// }
-
- /**
* Retrieves the Graph (unmodifiable) with the given UriRef If no graph
* exists with such name, throws a NoSuchEntityException
*/
http://git-wip-us.apache.org/repos/asf/clerezza/blob/575667c5/clerezza-virtuoso/rdf.virtuoso.storage/src/test/java/rdf/virtuoso/storage/RdfIOTest.java
----------------------------------------------------------------------
diff --git a/clerezza-virtuoso/rdf.virtuoso.storage/src/test/java/rdf/virtuoso/storage/RdfIOTest.java b/clerezza-virtuoso/rdf.virtuoso.storage/src/test/java/rdf/virtuoso/storage/RdfIOTest.java
index 100e871..8e5bcb5 100644
--- a/clerezza-virtuoso/rdf.virtuoso.storage/src/test/java/rdf/virtuoso/storage/RdfIOTest.java
+++ b/clerezza-virtuoso/rdf.virtuoso.storage/src/test/java/rdf/virtuoso/storage/RdfIOTest.java
@@ -242,7 +242,7 @@ public class RdfIOTest {
"urn:io-test:enridaga"));
Assert.assertNotSame(read.getObject(),
new UriRef("urn:io-test:alexdma"));
- // bnodes cannot be equals!
+ // these bnodes cannot be equals!
Assert.assertNotSame(read, new TripleImpl(subject, predicate, object));
}
@@ -279,7 +279,6 @@ public class RdfIOTest {
graph.add(new TripleImpl(s2intern, p1, s3));
Triple second = graph.filter(s2intern, p1, null).next();
Assert.assertTrue(second.getObject() instanceof VirtuosoBNode);
- BNode s3intern = (BNode) second.getObject();
graph.add(new TripleImpl(s1intern, p2, s4));
Triple third = graph.filter(s1intern, p2, null).next();
@@ -305,7 +304,7 @@ public class RdfIOTest {
Triple s1it = s1i.next();
found = true;
log.info("{} {}",s1it.getSubject(), s1t.getSubject());
- //Assert.assertTrue(s1it.getSubject().equals(s1t.getSubject()));
+ Assert.assertTrue(s1it.getSubject().equals(s1t.getSubject()));
Assert.assertTrue(s1it.getPredicate().equals(p1)
|| s1it.getPredicate().equals(p2));
http://git-wip-us.apache.org/repos/asf/clerezza/blob/575667c5/clerezza-virtuoso/rdf.virtuoso.storage/src/test/java/rdf/virtuoso/storage/TestUtils.java
----------------------------------------------------------------------
diff --git a/clerezza-virtuoso/rdf.virtuoso.storage/src/test/java/rdf/virtuoso/storage/TestUtils.java b/clerezza-virtuoso/rdf.virtuoso.storage/src/test/java/rdf/virtuoso/storage/TestUtils.java
index 993bcee..ecd4670 100644
--- a/clerezza-virtuoso/rdf.virtuoso.storage/src/test/java/rdf/virtuoso/storage/TestUtils.java
+++ b/clerezza-virtuoso/rdf.virtuoso.storage/src/test/java/rdf/virtuoso/storage/TestUtils.java
@@ -18,7 +18,6 @@
*/
package rdf.virtuoso.storage;
-import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
http://git-wip-us.apache.org/repos/asf/clerezza/blob/575667c5/clerezza-virtuoso/rdf.virtuoso.storage/src/test/java/rdf/virtuoso/storage/VirtuosoMGraphTest.java
----------------------------------------------------------------------
diff --git a/clerezza-virtuoso/rdf.virtuoso.storage/src/test/java/rdf/virtuoso/storage/VirtuosoMGraphTest.java b/clerezza-virtuoso/rdf.virtuoso.storage/src/test/java/rdf/virtuoso/storage/VirtuosoMGraphTest.java
index c4ce126..ef57c24 100644
--- a/clerezza-virtuoso/rdf.virtuoso.storage/src/test/java/rdf/virtuoso/storage/VirtuosoMGraphTest.java
+++ b/clerezza-virtuoso/rdf.virtuoso.storage/src/test/java/rdf/virtuoso/storage/VirtuosoMGraphTest.java
@@ -23,7 +23,6 @@ import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;
-import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Iterator;
@@ -191,12 +190,10 @@ public class VirtuosoMGraphTest {
}
assertEquals(t.getPredicate(), predicate);
}
- Statement st = TestUtils.getConnection().createStatement();
assertTrue(found);
assertNotNull(t);
- //NonLiteral s = t.getSubject();
log.info("{}",t.getSubject());
it = mgraph.filter(t.getSubject(), predicate, t.getObject());
found = false;
@@ -207,9 +204,6 @@ public class VirtuosoMGraphTest {
log.debug("Found matching triple: {}", t);
TestUtils.stamp(t);
}
- //assertEquals(t.getSubject(), s);
- //log.info(" {} {}", s, t.getSubject());
- //assertEquals(t.getPredicate(), predicate);
assertEquals(t.getPredicate(), predicate);
}
assertTrue(found);