EVERYTHING FROM THE OTHER REPO
This commit is contained in:
@@ -0,0 +1,58 @@
|
||||
#!/usr/bin/perl
|
||||
# This file was preprocessed, do not edit!
|
||||
|
||||
|
||||
package Debconf::Db;
|
||||
use warnings;
|
||||
use strict;
|
||||
use Debconf::Log qw{:all};
|
||||
use Debconf::Config;
|
||||
use Debconf::DbDriver;
|
||||
our $config;
|
||||
our $templates;
|
||||
|
||||
|
||||
sub load {
|
||||
my $class=shift;
|
||||
|
||||
Debconf::Config->load('', @_); # load default config file
|
||||
$config=Debconf::DbDriver->driver(Debconf::Config->config);
|
||||
if (not ref $config) {
|
||||
die "Configuration database \"".Debconf::Config->config.
|
||||
"\" was not initialized.\n";
|
||||
}
|
||||
$templates=Debconf::DbDriver->driver(Debconf::Config->templates);
|
||||
if (not ref $templates) {
|
||||
die "Template database \"".Debconf::Config->templates.
|
||||
"\" was not initialized.\n";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
sub makedriver {
|
||||
my $class=shift;
|
||||
my %config=@_;
|
||||
|
||||
my $type=$config{driver} or die "driver type not specified (perhaps you need to re-read debconf.conf(5))";
|
||||
|
||||
if (! UNIVERSAL::can("Debconf::DbDriver::$type", 'new')) {
|
||||
eval qq{use Debconf::DbDriver::$type};
|
||||
die $@ if $@;
|
||||
}
|
||||
delete $config{driver}; # not a field for the object
|
||||
|
||||
debug db => "making DbDriver of type $type";
|
||||
"Debconf::DbDriver::$type"->new(%config);
|
||||
}
|
||||
|
||||
|
||||
sub save {
|
||||
|
||||
$config->shutdown if $config;
|
||||
$templates->shutdown if $templates;
|
||||
$config='';
|
||||
$templates='';
|
||||
}
|
||||
|
||||
|
||||
1
|
||||
Reference in New Issue
Block a user