Update of /cvsroot/fink/scripts/buildfink/lib/FinkFDB
In directory sc8-pr-cvs5.sourceforge.net:/tmp/cvs-serv32496/lib/FinkFDB

Modified Files:
        DBI.pm 
Log Message:
Back-end and front-end can talk again

Index: DBI.pm
===================================================================
RCS file: /cvsroot/fink/scripts/buildfink/lib/FinkFDB/DBI.pm,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- DBI.pm      1 Apr 2007 15:23:43 -0000       1.2
+++ DBI.pm      2 Apr 2007 04:35:45 -0000       1.3
@@ -24,9 +24,8 @@
                  get_package_files => <<EOF,
 SELECT fullpath AS 'path',
    size, posix_user, posix_group, flags
-FROM file_versions LEFT OUTER JOIN packages
-   ON file_versions.package_id = packages.package_id
-WHERE package_name=?
+FROM file_versions
+WHERE package_id=?
 ORDER BY is_directory DESC, fullpath ASC
 EOF
                  get_directory_files => <<EOF,
@@ -39,7 +38,7 @@
 LEFT OUTER JOIN packages
    ON packages.package_id = file_versions.package_id
 WHERE parent_id = ?
-ORDER BY is_directory DESC, file_name ASC
+ORDER BY is_directory DESC, file_name ASC, package_name ASC
 EOF
                  get_packages => "SELECT package_name, package_id FROM 
packages ORDER BY package_name ASC",
                  );
@@ -60,12 +59,30 @@
     $dbstr = sprintf("dbi:%s:%s", $self->{dbtype}, $params{db});
   }
 
-  $self->{dbh} = DBI->connect($dbstr, $params{dbuser}, $params{dbpass}, 
\%dbattrs);
-  $self->{queries} = {};
+  $self->{dbstr} = $dbstr;
+  $self->{dbuser} = $params{dbuser};
+  $self->{dbpass} = $params{dbpass};
+  $self->{dbattrs} = \%dbattrs;
 
   return $self;
 }
 
+sub connect {
+  my($self) = @_;
+  $self->{dbh} = DBI->connect($self->{dbstr},
+                             $self->{dbuser},
+                             $self->{dbpass},
+                             $self->{dbattrs});
+  $self->{queries} = {};
+}
+
+sub disconnect {
+  my($self) = @_;
+  delete $self->{queries};
+  $self->{dbh}->disconnect();
+  delete $self->{dbh};
+}
+
 sub addPackage {
   my($self, $package) = @_;
   $self->execQuery("add_package", $package);
@@ -135,8 +152,8 @@
 }
 
 sub selectAll {
-  my($query, @bindvals) = @_;
-  my $query = $self->execQuery($query, @bindvals);
+  my($self, $qname, @bindvals) = @_;
+  my $query = $self->execQuery($qname, @bindvals);
   my $ret = $query->fetchall_arrayref({});
   $query->finish();
   return @$ret;


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Fink-commits mailing list
Fink-commits@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/fink-commits

Reply via email to