From 609b18b94014b1e9d9fea11c98fb5a53cf323973 Mon Sep 17 00:00:00 2001 From: bjl23 Date: Wed, 17 Feb 2010 20:20:02 +0000 Subject: [PATCH] transactional Sesame sync --- .../webapp/utils/jena/SesameSyncUtils.java | 58 +++++++++---------- 1 file changed, 29 insertions(+), 29 deletions(-) diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/utils/jena/SesameSyncUtils.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/utils/jena/SesameSyncUtils.java index a54048996..28c56e374 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/utils/jena/SesameSyncUtils.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/utils/jena/SesameSyncUtils.java @@ -27,41 +27,41 @@ public class SesameSyncUtils { Repository myRepository = new HTTPRepository(serverURI, repositoryId); myRepository.initialize(); RepositoryConnection myConn = myRepository.getConnection(); - System.out.println(myConn.size()+" statements in remote Sesame"); - Resource contextRes = (contextId != null) - ? new URIImpl(contextId) : null ; - - if (contextRes != null) { - myConn.clear(contextRes); - } else { - myConn.clear(); - } - - System.out.println("Cleared"); - System.out.println(myConn.size()); - - PipedInputStream in = new PipedInputStream(); - PipedOutputStream out = new PipedOutputStream(in); + myConn.setAutoCommit(false); try { - new Thread((new JenaOutputter(jenaModel, out))).start(); + + Resource contextRes = (contextId != null) + ? new URIImpl(contextId) : null ; + if (contextRes != null) { - myConn.add(in, null, RDFFormat.NTRIPLES, contextRes); + myConn.clear(contextRes); } else { - myConn.add(in, null, RDFFormat.NTRIPLES); + myConn.clear(); } + + PipedInputStream in = new PipedInputStream(); + PipedOutputStream out = new PipedOutputStream(in); + try { + new Thread((new JenaOutputter(jenaModel, out))).start(); + if (contextRes != null) { + myConn.add(in,"http://example.org/base/", RDFFormat.NTRIPLES, contextRes); + } else { + myConn.add(in,"http://example.org/base/", RDFFormat.NTRIPLES); + } + } finally { + in.close(); + } + + myConn.commit(); + + } catch (Exception e) { + myConn.rollback(); + e.printStackTrace(); } finally { - in.close(); - } - - System.out.println("Jena model added"); - System.out.println(myConn.size()); - - myConn.commit(); - - myConn.close(); - - + myConn.close(); + } + } private class JenaOutputter implements Runnable {