[Mulgara-svn] r714 - in trunk/src/jar: content-mbox/java/org/mulgara/content/mbox content-mp3/java/org/mulgara/content/mp3 content-n3/java/org/mulgara/content/n3 content-rdfxml/java/org/mulgara/content/rdfxml content-rdfxml/java/org/mulgara/content/rdfxml/writer content-rio/java/org/mulgara/content/rio resolver/java/org/mulgara/resolver resolver-filesystem/java/org/mulgara/resolver/filesystem resolver-memory/java/org/mulgara/resolver/memory resolver-spi/java/org/mulgara/resolver/spi resolver-store/java/org/mulgara/resolver/store resolver-xsd/java/org/mulgara/resolver/xsd

andrae at mulgara.org andrae at mulgara.org
Wed Mar 26 05:49:38 UTC 2008


Author: andrae
Date: 2008-03-25 22:49:37 -0700 (Tue, 25 Mar 2008)
New Revision: 714

Modified:
   trunk/src/jar/content-mbox/java/org/mulgara/content/mbox/TestResolverSession.java
   trunk/src/jar/content-mp3/java/org/mulgara/content/mp3/TestResolverSession.java
   trunk/src/jar/content-n3/java/org/mulgara/content/n3/TestResolverSession.java
   trunk/src/jar/content-rdfxml/java/org/mulgara/content/rdfxml/TestResolverSession.java
   trunk/src/jar/content-rdfxml/java/org/mulgara/content/rdfxml/writer/TestResolverSession.java
   trunk/src/jar/content-rio/java/org/mulgara/content/rio/TestResolverSession.java
   trunk/src/jar/resolver-filesystem/java/org/mulgara/resolver/filesystem/TestResolverSession.java
   trunk/src/jar/resolver-memory/java/org/mulgara/resolver/memory/MemoryResolver.java
   trunk/src/jar/resolver-spi/java/org/mulgara/resolver/spi/BackupRestoreSession.java
   trunk/src/jar/resolver-spi/java/org/mulgara/resolver/spi/ResolverSession.java
   trunk/src/jar/resolver-store/java/org/mulgara/resolver/store/StatementStoreResolver.java
   trunk/src/jar/resolver-xsd/java/org/mulgara/resolver/xsd/TestResolverSession.java
   trunk/src/jar/resolver/java/org/mulgara/resolver/BackupOperation.java
   trunk/src/jar/resolver/java/org/mulgara/resolver/BootstrapOperation.java
   trunk/src/jar/resolver/java/org/mulgara/resolver/CreateModelOperation.java
   trunk/src/jar/resolver/java/org/mulgara/resolver/DatabaseSession.java
   trunk/src/jar/resolver/java/org/mulgara/resolver/LoginOperation.java
   trunk/src/jar/resolver/java/org/mulgara/resolver/ModelExistsOperation.java
   trunk/src/jar/resolver/java/org/mulgara/resolver/ModifyModelOperation.java
   trunk/src/jar/resolver/java/org/mulgara/resolver/MulgaraExternalTransaction.java
   trunk/src/jar/resolver/java/org/mulgara/resolver/MulgaraInternalTransaction.java
   trunk/src/jar/resolver/java/org/mulgara/resolver/MulgaraTransaction.java
   trunk/src/jar/resolver/java/org/mulgara/resolver/Operation.java
   trunk/src/jar/resolver/java/org/mulgara/resolver/PersistentResolverSession.java
   trunk/src/jar/resolver/java/org/mulgara/resolver/PreallocateOperation.java
   trunk/src/jar/resolver/java/org/mulgara/resolver/QueryOperation.java
   trunk/src/jar/resolver/java/org/mulgara/resolver/RemoveModelOperation.java
   trunk/src/jar/resolver/java/org/mulgara/resolver/RestoreOperation.java
   trunk/src/jar/resolver/java/org/mulgara/resolver/SetModelOperation.java
   trunk/src/jar/resolver/java/org/mulgara/resolver/StringPoolSession.java
   trunk/src/jar/resolver/java/org/mulgara/resolver/TestResolverSession.java
Log:
refs #89

svn merge -r 712:713 ../branches/mgr-89-backup



Modified: trunk/src/jar/content-mbox/java/org/mulgara/content/mbox/TestResolverSession.java
===================================================================
--- trunk/src/jar/content-mbox/java/org/mulgara/content/mbox/TestResolverSession.java	2008-03-26 05:15:46 UTC (rev 713)
+++ trunk/src/jar/content-mbox/java/org/mulgara/content/mbox/TestResolverSession.java	2008-03-26 05:49:37 UTC (rev 714)
@@ -166,4 +166,8 @@
   public SPObject findSPObject(long gNode) {
     throw new UnsupportedOperationException("Not Implemented on test class");
   }
+
+  public long findGNode(SPObject spObject) {
+    throw new UnsupportedOperationException("Not Implemented on test class");
+  }
 }

Modified: trunk/src/jar/content-mp3/java/org/mulgara/content/mp3/TestResolverSession.java
===================================================================
--- trunk/src/jar/content-mp3/java/org/mulgara/content/mp3/TestResolverSession.java	2008-03-26 05:15:46 UTC (rev 713)
+++ trunk/src/jar/content-mp3/java/org/mulgara/content/mp3/TestResolverSession.java	2008-03-26 05:49:37 UTC (rev 714)
@@ -166,4 +166,8 @@
   public SPObject findSPObject(long gNode) {
     throw new UnsupportedOperationException("Not Implemented on test class");
   }
+
+  public long findGNode(SPObject spObject) {
+    throw new UnsupportedOperationException("Not Implemented on test class");
+  }
 }

Modified: trunk/src/jar/content-n3/java/org/mulgara/content/n3/TestResolverSession.java
===================================================================
--- trunk/src/jar/content-n3/java/org/mulgara/content/n3/TestResolverSession.java	2008-03-26 05:15:46 UTC (rev 713)
+++ trunk/src/jar/content-n3/java/org/mulgara/content/n3/TestResolverSession.java	2008-03-26 05:49:37 UTC (rev 714)
@@ -150,4 +150,8 @@
   public SPObject findSPObject(long gNode) {
     throw new UnsupportedOperationException("Not Implemented on test class");
   }
+
+  public long findGNode(SPObject spObject) {
+    throw new UnsupportedOperationException("Not Implemented on test class");
+  }
 }

Modified: trunk/src/jar/content-rdfxml/java/org/mulgara/content/rdfxml/TestResolverSession.java
===================================================================
--- trunk/src/jar/content-rdfxml/java/org/mulgara/content/rdfxml/TestResolverSession.java	2008-03-26 05:15:46 UTC (rev 713)
+++ trunk/src/jar/content-rdfxml/java/org/mulgara/content/rdfxml/TestResolverSession.java	2008-03-26 05:49:37 UTC (rev 714)
@@ -150,4 +150,8 @@
   public SPObject findSPObject(long gNode) {
     throw new UnsupportedOperationException("Not Implemented on test class");
   }
+
+  public long findGNode(SPObject spObject) {
+    throw new UnsupportedOperationException("Not Implemented on test class");
+  }
 }

Modified: trunk/src/jar/content-rdfxml/java/org/mulgara/content/rdfxml/writer/TestResolverSession.java
===================================================================
--- trunk/src/jar/content-rdfxml/java/org/mulgara/content/rdfxml/writer/TestResolverSession.java	2008-03-26 05:15:46 UTC (rev 713)
+++ trunk/src/jar/content-rdfxml/java/org/mulgara/content/rdfxml/writer/TestResolverSession.java	2008-03-26 05:49:37 UTC (rev 714)
@@ -178,4 +178,8 @@
   public SPObject findSPObject(long gNode) {
     throw new UnsupportedOperationException("Not Implemented on test class");
   }
+
+  public long findGNode(SPObject spObject) {
+    throw new UnsupportedOperationException("Not Implemented on test class");
+  }
 }

Modified: trunk/src/jar/content-rio/java/org/mulgara/content/rio/TestResolverSession.java
===================================================================
--- trunk/src/jar/content-rio/java/org/mulgara/content/rio/TestResolverSession.java	2008-03-26 05:15:46 UTC (rev 713)
+++ trunk/src/jar/content-rio/java/org/mulgara/content/rio/TestResolverSession.java	2008-03-26 05:49:37 UTC (rev 714)
@@ -150,4 +150,8 @@
   public SPObject findSPObject(long gNode) {
     throw new UnsupportedOperationException("Not Implemented on test class");
   }
+
+  public long findGNode(SPObject spObject) {
+    throw new UnsupportedOperationException("Not Implemented on test class");
+  }
 }

Modified: trunk/src/jar/resolver/java/org/mulgara/resolver/BackupOperation.java
===================================================================
--- trunk/src/jar/resolver/java/org/mulgara/resolver/BackupOperation.java	2008-03-26 05:15:46 UTC (rev 713)
+++ trunk/src/jar/resolver/java/org/mulgara/resolver/BackupOperation.java	2008-03-26 05:49:37 UTC (rev 714)
@@ -101,7 +101,6 @@
 
   public void execute(OperationContext operationContext,
       SystemResolver systemResolver,
-      ResolverSessionFactory resolverSessionFactory,
       DatabaseMetadata metadata) throws Exception {
     OutputStream os = outputStream;
     Writer writer = null;

Modified: trunk/src/jar/resolver/java/org/mulgara/resolver/BootstrapOperation.java
===================================================================
--- trunk/src/jar/resolver/java/org/mulgara/resolver/BootstrapOperation.java	2008-03-26 05:15:46 UTC (rev 713)
+++ trunk/src/jar/resolver/java/org/mulgara/resolver/BootstrapOperation.java	2008-03-26 05:49:37 UTC (rev 714)
@@ -38,7 +38,6 @@
 
   public void execute(OperationContext       operationContext,
                       SystemResolver         systemResolver,
-                      ResolverSessionFactory resolverSessionFactory,
                       DatabaseMetadata       metadata) throws Exception {
     // Find the local node identifying the model
     long model = systemResolver.localizePersistent(

Modified: trunk/src/jar/resolver/java/org/mulgara/resolver/CreateModelOperation.java
===================================================================
--- trunk/src/jar/resolver/java/org/mulgara/resolver/CreateModelOperation.java	2008-03-26 05:15:46 UTC (rev 713)
+++ trunk/src/jar/resolver/java/org/mulgara/resolver/CreateModelOperation.java	2008-03-26 05:49:37 UTC (rev 714)
@@ -92,7 +92,6 @@
 
   public void execute(OperationContext       operationContext,
                       SystemResolver         systemResolver,
-                      ResolverSessionFactory resolverSessionFactory,
                       DatabaseMetadata       metadata) throws Exception {
     // Default to the system graph type
     if (graphTypeURI == null) graphTypeURI = metadata.getSystemModelTypeURI();

Modified: trunk/src/jar/resolver/java/org/mulgara/resolver/DatabaseSession.java
===================================================================
--- trunk/src/jar/resolver/java/org/mulgara/resolver/DatabaseSession.java	2008-03-26 05:15:46 UTC (rev 713)
+++ trunk/src/jar/resolver/java/org/mulgara/resolver/DatabaseSession.java	2008-03-26 05:49:37 UTC (rev 714)
@@ -632,7 +632,7 @@
     try {
       MulgaraTransaction transaction =
           transactionFactory.getTransaction(this, operation.isWriteOperation());
-      transaction.execute(operation, resolverSessionFactory, metadata);
+      transaction.execute(operation, metadata);
     } catch (MulgaraTransactionException em) {
       logger.info("Error executing operation: " + errorString, em);
       throw new QueryException(errorString, em);

Modified: trunk/src/jar/resolver/java/org/mulgara/resolver/LoginOperation.java
===================================================================
--- trunk/src/jar/resolver/java/org/mulgara/resolver/LoginOperation.java	2008-03-26 05:15:46 UTC (rev 713)
+++ trunk/src/jar/resolver/java/org/mulgara/resolver/LoginOperation.java	2008-03-26 05:49:37 UTC (rev 714)
@@ -114,7 +114,6 @@
 
   public void execute(OperationContext       operationContext,
                       SystemResolver         systemResolver,
-                      ResolverSessionFactory resolverSessionFactory,
                       DatabaseMetadata       metadata) throws Exception
   {
     if (securityDomain.equals(metadata.getSecurityDomainURI())) {

Modified: trunk/src/jar/resolver/java/org/mulgara/resolver/ModelExistsOperation.java
===================================================================
--- trunk/src/jar/resolver/java/org/mulgara/resolver/ModelExistsOperation.java	2008-03-26 05:15:46 UTC (rev 713)
+++ trunk/src/jar/resolver/java/org/mulgara/resolver/ModelExistsOperation.java	2008-03-26 05:49:37 UTC (rev 714)
@@ -63,7 +63,6 @@
 
   public void execute(OperationContext       operationContext,
                       SystemResolver         systemResolver,
-                      ResolverSessionFactory resolverSessionFactory,
                       DatabaseMetadata       metadata) throws Exception
   {
     try {

Modified: trunk/src/jar/resolver/java/org/mulgara/resolver/ModifyModelOperation.java
===================================================================
--- trunk/src/jar/resolver/java/org/mulgara/resolver/ModifyModelOperation.java	2008-03-26 05:15:46 UTC (rev 713)
+++ trunk/src/jar/resolver/java/org/mulgara/resolver/ModifyModelOperation.java	2008-03-26 05:49:37 UTC (rev 714)
@@ -180,7 +180,6 @@
 
   public void execute(OperationContext       operationContext,
                       SystemResolver         systemResolver,
-                      ResolverSessionFactory resolverSessionFactory,
                       DatabaseMetadata       metadata) throws Exception
   {
     Statements statements;

Modified: trunk/src/jar/resolver/java/org/mulgara/resolver/MulgaraExternalTransaction.java
===================================================================
--- trunk/src/jar/resolver/java/org/mulgara/resolver/MulgaraExternalTransaction.java	2008-03-26 05:15:46 UTC (rev 713)
+++ trunk/src/jar/resolver/java/org/mulgara/resolver/MulgaraExternalTransaction.java	2008-03-26 05:49:37 UTC (rev 714)
@@ -126,14 +126,10 @@
     }
   }
 
-  public void execute(Operation operation,
-               ResolverSessionFactory resolverSessionFactory,
-               DatabaseMetadata metadata) throws MulgaraTransactionException {
-    // FIXME: Do I need to check that this transaction is 'active' ?
+  public void execute(Operation operation, DatabaseMetadata metadata) throws MulgaraTransactionException {
     try {
       operation.execute(context,
                         context.getSystemResolver(),
-                        resolverSessionFactory,
                         metadata);
     } catch (Throwable th) {
       try {

Modified: trunk/src/jar/resolver/java/org/mulgara/resolver/MulgaraInternalTransaction.java
===================================================================
--- trunk/src/jar/resolver/java/org/mulgara/resolver/MulgaraInternalTransaction.java	2008-03-26 05:15:46 UTC (rev 713)
+++ trunk/src/jar/resolver/java/org/mulgara/resolver/MulgaraInternalTransaction.java	2008-03-26 05:49:37 UTC (rev 714)
@@ -569,16 +569,13 @@
     }
   }
 
-  public void execute(Operation operation,
-               ResolverSessionFactory resolverSessionFactory, // FIXME: We shouldn't need this. - only used for backup and restore operations.
-               DatabaseMetadata metadata) throws MulgaraTransactionException {
+  public void execute(Operation operation, DatabaseMetadata metadata) throws MulgaraTransactionException {
     report("Executing Operation");
     try {
       activate();
       try {
         operation.execute(context,
                           context.getSystemResolver(),
-                          resolverSessionFactory,
                           metadata);
       } catch (Throwable th) {
         throw implicitRollback(th);

Modified: trunk/src/jar/resolver/java/org/mulgara/resolver/MulgaraTransaction.java
===================================================================
--- trunk/src/jar/resolver/java/org/mulgara/resolver/MulgaraTransaction.java	2008-03-26 05:15:46 UTC (rev 713)
+++ trunk/src/jar/resolver/java/org/mulgara/resolver/MulgaraTransaction.java	2008-03-26 05:49:37 UTC (rev 714)
@@ -69,11 +69,8 @@
 
   /**
    * Execute the specified operation.
-   *
-   * FIXME: We shouldn't need resolverSessionFactory as this is only used for backup and restore operations.
    */
   void execute(Operation operation,
-               ResolverSessionFactory resolverSessionFactory,
                DatabaseMetadata metadata) throws MulgaraTransactionException;
 
   /**

Modified: trunk/src/jar/resolver/java/org/mulgara/resolver/Operation.java
===================================================================
--- trunk/src/jar/resolver/java/org/mulgara/resolver/Operation.java	2008-03-26 05:15:46 UTC (rev 713)
+++ trunk/src/jar/resolver/java/org/mulgara/resolver/Operation.java	2008-03-26 05:49:37 UTC (rev 714)
@@ -54,13 +54,11 @@
    * Perform a transactional operation.
    *
    * @param systemResolver
-   * @param resolverSessionFactory
    * @param metadata
    * @throws Exception if the operation cannot be completed
    */
   public void execute(OperationContext         operationContext,
                       SystemResolver           systemResolver,
-                      ResolverSessionFactory   resolverSessionFactory,
                       DatabaseMetadata         metadata) throws Exception;
 
   /**

Modified: trunk/src/jar/resolver/java/org/mulgara/resolver/PersistentResolverSession.java
===================================================================
--- trunk/src/jar/resolver/java/org/mulgara/resolver/PersistentResolverSession.java	2008-03-26 05:15:46 UTC (rev 713)
+++ trunk/src/jar/resolver/java/org/mulgara/resolver/PersistentResolverSession.java	2008-03-26 05:49:37 UTC (rev 714)
@@ -147,7 +147,11 @@
     return resolverSession.getSPObjectFactory();
   }
 
-  public SPObject findSPObject(long gNode) {
-    throw new UnsupportedOperationException("Not Implemented on test class");
+  public SPObject findSPObject(long gNode) throws StringPoolException {
+    return resolverSession.findSPObject(gNode);
   }
+
+  public long findGNode(SPObject spObject) throws StringPoolException {
+    return resolverSession.findGNode(spObject);
+  }
 }

Modified: trunk/src/jar/resolver/java/org/mulgara/resolver/PreallocateOperation.java
===================================================================
--- trunk/src/jar/resolver/java/org/mulgara/resolver/PreallocateOperation.java	2008-03-26 05:15:46 UTC (rev 713)
+++ trunk/src/jar/resolver/java/org/mulgara/resolver/PreallocateOperation.java	2008-03-26 05:49:37 UTC (rev 714)
@@ -87,7 +87,6 @@
 
   public void execute(OperationContext       operationContext,
                       SystemResolver         systemResolver,
-                      ResolverSessionFactory resolverSessionFactory,
                       DatabaseMetadata       metadata) throws Exception {
 
     this.localNode = systemResolver.localizePersistent(node);

Modified: trunk/src/jar/resolver/java/org/mulgara/resolver/QueryOperation.java
===================================================================
--- trunk/src/jar/resolver/java/org/mulgara/resolver/QueryOperation.java	2008-03-26 05:15:46 UTC (rev 713)
+++ trunk/src/jar/resolver/java/org/mulgara/resolver/QueryOperation.java	2008-03-26 05:49:37 UTC (rev 714)
@@ -132,7 +132,6 @@
 
   public void execute(OperationContext       operationContext,
                       SystemResolver         systemResolver,
-                      ResolverSessionFactory resolverSessionFactory,
                       DatabaseMetadata       metadata) throws Exception
   {
     if (query != null) {

Modified: trunk/src/jar/resolver/java/org/mulgara/resolver/RemoveModelOperation.java
===================================================================
--- trunk/src/jar/resolver/java/org/mulgara/resolver/RemoveModelOperation.java	2008-03-26 05:15:46 UTC (rev 713)
+++ trunk/src/jar/resolver/java/org/mulgara/resolver/RemoveModelOperation.java	2008-03-26 05:49:37 UTC (rev 714)
@@ -121,7 +121,6 @@
 
   public void execute(OperationContext       operationContext,
                       SystemResolver         systemResolver,
-                      ResolverSessionFactory resolverSessionFactory,
                       DatabaseMetadata       metadata) throws Exception
   {
     long model = systemResolver.localize(new URIReferenceImpl(modelURI));

Modified: trunk/src/jar/resolver/java/org/mulgara/resolver/RestoreOperation.java
===================================================================
--- trunk/src/jar/resolver/java/org/mulgara/resolver/RestoreOperation.java	2008-03-26 05:15:46 UTC (rev 713)
+++ trunk/src/jar/resolver/java/org/mulgara/resolver/RestoreOperation.java	2008-03-26 05:49:37 UTC (rev 714)
@@ -53,11 +53,9 @@
 // Local packages
 import org.mulgara.query.*;
 import org.mulgara.resolver.spi.*;
-import org.mulgara.store.nodepool.NodePool;
 import org.mulgara.store.statement.StatementStore;
 import org.mulgara.store.stringpool.SPObject;
 import org.mulgara.store.stringpool.SPObjectFactory;
-import org.mulgara.store.stringpool.StringPool;
 import org.mulgara.store.tuples.Tuples;
 import org.mulgara.util.IntFile;
 import org.mulgara.util.TempDir;
@@ -123,7 +121,6 @@
 
   public void execute(OperationContext         operationContext,
                       SystemResolver           systemResolver,
-                      ResolverSessionFactory   resolverSessionFactory,
                       DatabaseMetadata         metadata) throws Exception
   {
     InputStream is = inputStream;
@@ -142,7 +139,7 @@
           "UTF-8"
       ));
 
-      restoreDatabase(systemResolver, resolverSessionFactory, metadata, br);
+      restoreDatabase(systemResolver, systemResolver, metadata, br);
     } finally {
       if (br != null) {
         // Close the BufferedReader if it exists.  This will also close the
@@ -160,12 +157,11 @@
    * Restore the entire database.
    *
    * @param resolver Resolver
-   * @param resolverSessionFactory ResolverSessionFactory
    * @param metadata DatabaseMetadata
    * @param br BufferedReader
    */
   private void restoreDatabase(
-      Resolver resolver, ResolverSessionFactory resolverSessionFactory,
+      Resolver resolver, ResolverSession resolverSession,
       DatabaseMetadata metadata, BufferedReader br
   ) throws Exception {
     // Check the header of the backup file.
@@ -177,9 +173,9 @@
 
     if (versionString.equals(BACKUP_VERSION)) {
       assert BACKUP_VERSION.equals("6");
-      restoreDatabaseV6(resolver, resolverSessionFactory, metadata, br);
+      restoreDatabaseV6(resolver, resolverSession, metadata, br);
     } else if (versionString.equals("4")) {
-      restoreDatabaseV4(resolver, resolverSessionFactory, metadata, br);
+      restoreDatabaseV4(resolver, resolverSession, metadata, br);
     } else {
       throw new QueryException(
           "Unsupported backup file version: V" + versionString
@@ -197,12 +193,12 @@
    * Restore the entire database from a V4 backup file.
    *
    * @param resolver Resolver
-   * @param resolverSessionFactory ResolverSessionFactory
+   * @param resolverSession resolverSession
    * @param metadata DatabaseMetadata
    * @param br BufferedReader
    */
   private void restoreDatabaseV4(
-      Resolver resolver, ResolverSessionFactory resolverSessionFactory,
+      Resolver resolver, ResolverSession resolverSession,
       DatabaseMetadata metadata, BufferedReader br
   ) throws Exception {
     if (logger.isInfoEnabled()) {
@@ -263,14 +259,12 @@
     try {
       n2nMap = IntFile.open(n2nFile);
 
-      StringPool stringPool = resolverSessionFactory.getPersistentStringPool();
-      SPObjectFactory spof = stringPool.getSPObjectFactory();
-      NodePool nodePool = resolverSessionFactory.getPersistentNodePool();
+      SPObjectFactory spof = resolverSession.getSPObjectFactory();
 
       // Nodes in the backup file's coordinate space.
-      long systemModelNode = NodePool.NONE;
-      long emptyGroupNode = NodePool.NONE;
-      long tksIntModelNode = NodePool.NONE;
+      long systemModelNode = BackupRestoreSession.NONE;
+      long emptyGroupNode = BackupRestoreSession.NONE;
+      long tksIntModelNode = BackupRestoreSession.NONE;
 
       // Load the strings.
       while (((line = br.readLine()) != null) && !line.equals("TRIPLES")) {
@@ -304,7 +298,7 @@
         // If the SPObject is already in the string pool then use the
         // existing node ID, otherwise allocate a new node and put the
         // SPObject into the string pool.
-        long newGNode = stringPool.findGNode(spObject, nodePool);
+        long newGNode = resolverSession.findGNode(spObject);
 
         n2nMap.putLong(gNode, newGNode);
       }
@@ -318,19 +312,19 @@
 
       // Check that the systemModel, emptyGroup and tksIntModel nodes were
       // found.
-      if (systemModelNode == NodePool.NONE) {
+      if (systemModelNode == BackupRestoreSession.NONE) {
         throw new QueryException(
             "The system model node \"<#>\" was not found in the RDFNODES " +
             "section of the backup file: " + sourceURI
         );
       }
-      if (emptyGroupNode == NodePool.NONE) {
+      if (emptyGroupNode == BackupRestoreSession.NONE) {
         throw new QueryException(
             "The node for EMPTY_GROUP was not found in the RDFNODES " +
             "section of the backup file: " + sourceURI
         );
       }
-      if (tksIntModelNode == NodePool.NONE) {
+      if (tksIntModelNode == BackupRestoreSession.NONE) {
         throw new QueryException(
             "The node for \"" + TKS_INT_MODEL_URI +
             "\" was not found in the RDFNODES section of the backup file: " +
@@ -393,12 +387,12 @@
             Long groupL = new Long(node0);
             Set modelSet = (Set)g2mMap.get(groupL);
             if (modelSet == null) {
-              assert n2nMap.getLong(node0) == NodePool.NONE;
+              assert n2nMap.getLong(node0) == BackupRestoreSession.NONE;
               modelSet = new HashSet();
               g2mMap.put(groupL, modelSet);
             }
-            assert n2nMap.getLong(node2) != NodePool.NONE;
-            modelSet.add(new Long(getNode(n2nMap, node2, nodePool)));
+            assert n2nMap.getLong(node2) != BackupRestoreSession.NONE;
+            modelSet.add(new Long(getNode(n2nMap, node2, resolverSession)));
 
             // Mark this node as a group.  This indicates that a lookup must
             // be performed on g2mMap.
@@ -461,11 +455,11 @@
             }
           } while (buffer.hasRemaining());
         }
-        long node0 = getNode(n2nMap, tripleBuffer.get(), nodePool);
-        long node1 = getNode(n2nMap, tripleBuffer.get(), nodePool);
-        long node2 = getNode(n2nMap, tripleBuffer.get(), nodePool);
+        long node0 = getNode(n2nMap, tripleBuffer.get(), resolverSession);
+        long node1 = getNode(n2nMap, tripleBuffer.get(), resolverSession);
+        long node2 = getNode(n2nMap, tripleBuffer.get(), resolverSession);
         long meta = tripleBuffer.get();
-        long node3 = getNode(n2nMap, meta, nodePool);
+        long node3 = getNode(n2nMap, meta, resolverSession);
 
         // TODO Write a class that implements Statements to restore the
         // entire TRIPLES section with one call to modifyModel().
@@ -519,12 +513,12 @@
    * Restore the entire database from a V6 backup file.
    *
    * @param resolver Resolver
-   * @param resolverSessionFactory ResolverSessionFactory
+   * @param resolverSession resolverSession
    * @param metadata DatabaseMetadata
    * @param br BufferedReader
    */
   private void restoreDatabaseV6(
-      Resolver resolver, ResolverSessionFactory resolverSessionFactory,
+      Resolver resolver, ResolverSession resolverSession,
       DatabaseMetadata metadata, BufferedReader br
   ) throws Exception {
     if (logger.isInfoEnabled()) {
@@ -582,9 +576,7 @@
     try {
       n2nMap = IntFile.open(n2nFile);
 
-      StringPool stringPool = resolverSessionFactory.getPersistentStringPool();
-      SPObjectFactory spof = stringPool.getSPObjectFactory();
-      NodePool nodePool = resolverSessionFactory.getPersistentNodePool();
+      SPObjectFactory spof = resolverSession.getSPObjectFactory();
 
       // Load the strings.
       while (((line = br.readLine()) != null) && !line.equals("TRIPLES")) {
@@ -597,7 +589,7 @@
         // If the SPObject is already in the string pool then use the
         // existing node ID, otherwise allocate a new node and put the
         // SPObject into the string pool.
-        long newGNode = stringPool.findGNode(spObject, nodePool);
+        long newGNode = resolverSession.findGNode(spObject);
 
         n2nMap.putLong(gNode, newGNode);
       }
@@ -646,10 +638,10 @@
         // TODO Write a class that implements Statements to restore the
         // entire TRIPLES section with one call to modifyModel().
         resolver.modifyModel(
-          getNode(n2nMap, node3, nodePool),
-          new SingletonStatements(getNode(n2nMap, node0, nodePool),
-                                  getNode(n2nMap, node1, nodePool),
-                                  getNode(n2nMap, node2, nodePool)),
+          getNode(n2nMap, node3, resolverSession),
+          new SingletonStatements(getNode(n2nMap, node0, resolverSession),
+                                  getNode(n2nMap, node1, resolverSession),
+                                  getNode(n2nMap, node2, resolverSession)),
           DatabaseSession.ASSERT_STATEMENTS
         );
       }
@@ -673,19 +665,17 @@
    * @param n2nMap the IntFile that maps from backup file node IDs to current
    *      store node IDs.
    * @param oldNode the backup file node ID.
-   * @param nodePool the NodePool to allocate blank nodes from.
+   * @param ResolverSession Used to allocate new nodes.
    * @return the new node ID that the specified backup file node ID maps to.
    * @throws Exception EXCEPTION TO DO
    */
-  private static long getNode(
-      IntFile n2nMap, long oldNode, NodePool nodePool
-  ) throws Exception {
+  private static long getNode(IntFile n2nMap, long oldNode, ResolverSession resolverSession) throws Exception {
     long newNode = n2nMap.getLong(oldNode);
 
     // IntFile.getLong() returns zero for entries that have never been
     // written to.
     if (newNode == 0) {
-      newNode = nodePool.newNode();
+      newNode = resolverSession.newBlankNode();
       n2nMap.putLong(oldNode, newNode);
     }
 

Modified: trunk/src/jar/resolver/java/org/mulgara/resolver/SetModelOperation.java
===================================================================
--- trunk/src/jar/resolver/java/org/mulgara/resolver/SetModelOperation.java	2008-03-26 05:15:46 UTC (rev 713)
+++ trunk/src/jar/resolver/java/org/mulgara/resolver/SetModelOperation.java	2008-03-26 05:49:37 UTC (rev 714)
@@ -133,7 +133,6 @@
 
   public void execute(OperationContext       operationContext,
                       SystemResolver         systemResolver,
-                      ResolverSessionFactory resolverSessionFactory,
                       DatabaseMetadata       metadata) throws Exception
   {
     // A prior call to execute will have set statementCount >= 0.

Modified: trunk/src/jar/resolver/java/org/mulgara/resolver/StringPoolSession.java
===================================================================
--- trunk/src/jar/resolver/java/org/mulgara/resolver/StringPoolSession.java	2008-03-26 05:15:46 UTC (rev 713)
+++ trunk/src/jar/resolver/java/org/mulgara/resolver/StringPoolSession.java	2008-03-26 05:49:37 UTC (rev 714)
@@ -720,4 +720,7 @@
     return persistentStringPool.findSPObject(gNode);
   }
 
+  public long findGNode(SPObject spObject) throws StringPoolException {
+    return persistentStringPool.findGNode(spObject, persistentNodePool);
+  }
 }

Modified: trunk/src/jar/resolver/java/org/mulgara/resolver/TestResolverSession.java
===================================================================
--- trunk/src/jar/resolver/java/org/mulgara/resolver/TestResolverSession.java	2008-03-26 05:15:46 UTC (rev 713)
+++ trunk/src/jar/resolver/java/org/mulgara/resolver/TestResolverSession.java	2008-03-26 05:49:37 UTC (rev 714)
@@ -173,4 +173,8 @@
   public SPObject findSPObject(long gNode) {
     throw new UnsupportedOperationException("Not Implemented on test class");
   }
+
+  public long findGNode(SPObject spObject) {
+    throw new UnsupportedOperationException("Not Implemented on test class");
+  }
 }

Modified: trunk/src/jar/resolver-filesystem/java/org/mulgara/resolver/filesystem/TestResolverSession.java
===================================================================
--- trunk/src/jar/resolver-filesystem/java/org/mulgara/resolver/filesystem/TestResolverSession.java	2008-03-26 05:15:46 UTC (rev 713)
+++ trunk/src/jar/resolver-filesystem/java/org/mulgara/resolver/filesystem/TestResolverSession.java	2008-03-26 05:49:37 UTC (rev 714)
@@ -171,4 +171,8 @@
   public SPObject findSPObject(long gNode) {
     throw new UnsupportedOperationException("Not Implemented on test class");
   }
+
+  public long findGNode(SPObject spObject) {
+    throw new UnsupportedOperationException("Not Implemented on test class");
+  }
 }

Modified: trunk/src/jar/resolver-memory/java/org/mulgara/resolver/memory/MemoryResolver.java
===================================================================
--- trunk/src/jar/resolver-memory/java/org/mulgara/resolver/memory/MemoryResolver.java	2008-03-26 05:15:46 UTC (rev 713)
+++ trunk/src/jar/resolver-memory/java/org/mulgara/resolver/memory/MemoryResolver.java	2008-03-26 05:49:37 UTC (rev 714)
@@ -337,6 +337,10 @@
     return resolverSession.findSPObject(gNode);
   }
 
+  public long findGNode(SPObject spObject) throws StringPoolException {
+    return resolverSession.findGNode(spObject);
+  }
+
   //
   // Internal methods
   //

Modified: trunk/src/jar/resolver-spi/java/org/mulgara/resolver/spi/BackupRestoreSession.java
===================================================================
--- trunk/src/jar/resolver-spi/java/org/mulgara/resolver/spi/BackupRestoreSession.java	2008-03-26 05:15:46 UTC (rev 713)
+++ trunk/src/jar/resolver-spi/java/org/mulgara/resolver/spi/BackupRestoreSession.java	2008-03-26 05:49:37 UTC (rev 714)
@@ -19,6 +19,7 @@
 // Third party packages
 
 // Local packages
+import org.mulgara.store.nodepool.NodePool;
 import org.mulgara.store.stringpool.SPObject;
 import org.mulgara.store.stringpool.StringPoolException;
 
@@ -37,6 +38,7 @@
 
 public interface BackupRestoreSession
 {
+  public static final long NONE = NodePool.NONE;
   /**
    * Find a single object in the persistent string pool.
    *

Modified: trunk/src/jar/resolver-spi/java/org/mulgara/resolver/spi/ResolverSession.java
===================================================================
--- trunk/src/jar/resolver-spi/java/org/mulgara/resolver/spi/ResolverSession.java	2008-03-26 05:15:46 UTC (rev 713)
+++ trunk/src/jar/resolver-spi/java/org/mulgara/resolver/spi/ResolverSession.java	2008-03-26 05:49:37 UTC (rev 714)
@@ -196,4 +196,11 @@
    * @return The factory to allow for creation of SPObjects
    */
   public SPObjectFactory getSPObjectFactory();
+
+  /**
+   * DO NOT USE: This is solely for the use of RestoreOperation.
+   * Will be removed from this interface as soon as RestoreOperation can be
+   * refactored to no longer require it.
+   */
+  public long findGNode(SPObject spObject) throws StringPoolException;
 }

Modified: trunk/src/jar/resolver-store/java/org/mulgara/resolver/store/StatementStoreResolver.java
===================================================================
--- trunk/src/jar/resolver-store/java/org/mulgara/resolver/store/StatementStoreResolver.java	2008-03-26 05:15:46 UTC (rev 713)
+++ trunk/src/jar/resolver-store/java/org/mulgara/resolver/store/StatementStoreResolver.java	2008-03-26 05:49:37 UTC (rev 714)
@@ -501,6 +501,10 @@
     return resolverSession.findSPObject(gNode);
   }
 
+  public long findGNode(SPObject spObject) throws StringPoolException {
+    return resolverSession.findGNode(spObject);
+  }
+
   //
   // Internal methods
   //

Modified: trunk/src/jar/resolver-xsd/java/org/mulgara/resolver/xsd/TestResolverSession.java
===================================================================
--- trunk/src/jar/resolver-xsd/java/org/mulgara/resolver/xsd/TestResolverSession.java	2008-03-26 05:15:46 UTC (rev 713)
+++ trunk/src/jar/resolver-xsd/java/org/mulgara/resolver/xsd/TestResolverSession.java	2008-03-26 05:49:37 UTC (rev 714)
@@ -189,4 +189,8 @@
   public SPObject findSPObject(long gNode) {
     throw new UnsupportedOperationException("Not Implemented on test class");
   }
+
+  public long findGNode(SPObject spObject) {
+    throw new UnsupportedOperationException("Not Implemented on test class");
+  }
 }




More information about the Mulgara-svn mailing list