/[cvs]/nfo/perl/libs/Data/Storage/Handler/DBI.pm
ViewVC logotype

Diff of /nfo/perl/libs/Data/Storage/Handler/DBI.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.10 by joko, Sun Dec 15 02:02:22 2002 UTC revision 1.11 by joko, Thu Dec 19 16:31:05 2002 UTC
# Line 3  Line 3 
3  #  $Id$  #  $Id$
4  #  #
5  #  $Log$  #  $Log$
6    #  Revision 1.11  2002/12/19 16:31:05  joko
7    #  + sub dropDb
8    #  + sub rebuildDb
9    #
10  #  Revision 1.10  2002/12/15 02:02:22  joko  #  Revision 1.10  2002/12/15 02:02:22  joko
11  #  + fixed logging-message  #  + fixed logging-message
12  #  #
# Line 262  sub getCOREHANDLE2 { Line 266  sub getCOREHANDLE2 {
266    return $self->{_COREHANDLE};    return $self->{_COREHANDLE};
267  }  }
268    
269    sub dropDb {
270      my $self = shift;
271      my $dsn = $self->{locator}->{dbi}->{dsn};
272    
273      $logger->debug( __PACKAGE__ .  "->dropDb( dsn $dsn )" );
274    
275      $dsn =~ s/database=(.+?);//;
276      my $database_name = $1;
277    
278      my $ok;
279      
280      if ( my $dbh = DBI->connect($dsn, '', '', {
281                                                          PrintError => 0,
282                                                          } ) ) {
283        if ($database_name) {
284          if ($dbh->do("DROP DATABASE $database_name;")) {
285            $ok = 1;
286          }
287        }
288    
289        $dbh->disconnect();
290    
291      }
292      
293      return $ok;
294    }
295    
296    sub rebuildDb {
297      my $self = shift;
298      $logger->info( __PACKAGE__ . "->rebuildDb()" );
299      my @results;
300    
301      # sum up results (bool (0/1)) in array
302      #push @results, $self->retreatSchema();
303      push @results, $self->dropDb();
304      push @results, $self->createDb();
305      #push @results, $self->deploySchema();
306    
307      # scan array for "bad ones"
308      my $res = 1;
309      map {
310        $res = 0 if (!$_);
311      } @results;
312      
313      return $res;
314    }
315    
316  1;  1;

Legend:
Removed from v.1.10  
changed lines
  Added in v.1.11

MailToCvsAdmin">MailToCvsAdmin
ViewVC Help
Powered by ViewVC 1.1.26 RSS 2.0 feed