Index: trunk/ippToPsps/perl/ippToPsps/IppToPspsDb.pm
===================================================================
--- trunk/ippToPsps/perl/ippToPsps/IppToPspsDb.pm	(revision 28895)
+++ trunk/ippToPsps/perl/ippToPsps/IppToPspsDb.pm	(revision 28896)
@@ -8,4 +8,54 @@
 use ippToPsps::MySQLDb;
 our @ISA = qw(ippToPsps::MySQLDb);    # inherits from MySQLDb
+
+
+###########################################################################
+#
+# Returns a list of batches that have been processed and loaded to datastore
+#
+###########################################################################
+sub getBatchList {
+    my ($self, $exposures) = @_;
+
+    my $query = $self->{_db}->prepare(<<SQL);
+    SELECT exp_id, batch_id, survey_id 
+        FROM batches 
+        WHERE processed = 1 
+        AND on_datastore = 1
+        AND created > '2010-08-10 12:03:40';
+SQL
+   
+    # TODO remove date restriction
+    $query->execute;
+    ${$exposures} = $query->fetchall_arrayref();
+    my $count = scalar @{${$exposures}};
+
+   printf( "* Found %d batch%s\n", $count, ($count==1) ? "" : "es");
+   return $count;
+}
+
+###########################################################################
+#
+# Returns a info about one particular batch
+#
+###########################################################################
+sub getSingleBatch{
+    my ($self, $batch_id, $exposures) = @_;
+
+    my $query = $self->{_db}->prepare(<<SQL);
+    SELECT exp_id, batch_id, survey_id 
+        FROM batches 
+        WHERE batch_id = $batch_id 
+        AND processed = 1 
+        AND on_datastore = 1;
+SQL
+  
+    $query->execute;
+    ${$exposures} = $query->fetchall_arrayref();
+    my $count = scalar @{${$exposures}};
+
+   printf( "* Found %d batch%s\n", $count, ($count==1) ? "" : "es");
+   return $count;
+}
 
 #######################################################################################
@@ -137,4 +187,24 @@
     return $batchId;
 }
+
+#######################################################################################
+#
+# Updates an existing database record with info from ODM
+#
+#######################################################################################
+sub updateODMStatus {
+    my ($self,$batchId, $expId, $loadedToOdm, $mergeWorthy, $mergeCompleted) = @_;
+
+    my $query = $self->{_db}->prepare(<<SQL);
+    UPDATE batches 
+        SET loaded_to_ODM = $loadedToOdm, merge_worthy = $mergeWorthy, merged = $mergeCompleted 
+        WHERE batch_id = $batchId 
+        AND exp_id = $expId;
+SQL
+
+        $query->execute; # TODO check response of these
+}
+
+
 
 ###########################################################################
