Index: trunk/ippToPsps/jython/batch.py
===================================================================
--- trunk/ippToPsps/jython/batch.py	(revision 32193)
+++ trunk/ippToPsps/jython/batch.py	(revision 32194)
@@ -285,5 +285,5 @@
     Publishes this batch to the datastore
     '''
-    def publishToDatastore(self):
+    def tarZipAndpublishToDatastore(self):
       
         # set up filenams and paths
@@ -308,6 +308,16 @@
 
         # now publish to the datastore
-        if self.datastore.publish(self.batchName, self.subDir, tarballFile, "tgz"):
-            self.ippToPspsDb.updateLoadedToDatastore(self.batchID, 1)
+        Batch.publishToDatastore(self.datastore, self.ippToPspsDb, self.batchID, self.batchName, self.subDir, tarballFile)
+
+    '''
+    Static method to publish a batch to the datastore
+    '''
+    @staticmethod
+    def publishToDatastore(datastore, ippToPspsDb, batchID, batchName, subDir, tarballFile):
+        if datastore.publish(batchName, subDir, tarballFile, "tgz"):
+            ippToPspsDb.updateLoadedToDatastore(batchID, 1)
+        else:
+            ippToPspsDb.updateLoadedToDatastore(batchID, -1)
+            
 
     '''
@@ -443,4 +453,5 @@
         except:
             self.logger.exception("Could not write to FITS")
+            self.ippToPspsDb.updateProcessed(self.batchID, -1)
             return False
 
@@ -510,5 +521,5 @@
             if self.exportPspsTablesToFits():
                 self.writeBatchManifest()
-                if int(self.doc.find("options/publishToDatastore").text): self.publishToDatastore()
+                if int(self.doc.find("options/publishToDatastore").text): self.tarZipAndpublishToDatastore()
                 if int(self.doc.find("options/reportNulls").text): self.reportNullsInAllPspsTables(False)
 
