X-Git-Url: http://dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FDXSql.pm;fp=perl%2FDXSql.pm;h=932b9b0e2c35dcf871c9e737ab1cc95283bf3851;hb=a472851a7e290dac262131fd7f73b567332df6e4;hp=0000000000000000000000000000000000000000;hpb=4f57a4444e5051510df1567823009d351f95db20;p=spider.git diff --git a/perl/DXSql.pm b/perl/DXSql.pm new file mode 100644 index 00000000..932b9b0e --- /dev/null +++ b/perl/DXSql.pm @@ -0,0 +1,50 @@ +# +# The master SQL module +# +# $Id$ +# +# Copyright (c) 2006 Dirk Koopman G1TLH +# + +package DXSql; + +use strict; + +our $active = 0; + +sub init +{ + return $active if $active; + + eval { + require DBI; + }; + unless ($@) { + import DBI; + $active++; + } + return $active; +} + +sub new +{ + my $class = shift; + my $dsn = shift; + my $user = shift; + my $passwd = shift; + my $self; + + return undef unless $active; + my $dbh; + eval {$dbh = DBI->connect($dsn, $user, $passwd); }; + $self = bless {dbh => $dbh}, $class if $dbh; + return $self; +} + +sub finish +{ + my $self = shift; + $self->{dbh}->disconnect; +} +1; +