summaryrefslogtreecommitdiff
path: root/beagle/debian-rfs/usr/share/perl5/Debconf/DbDriver/Backup.pm
diff options
context:
space:
mode:
Diffstat (limited to 'beagle/debian-rfs/usr/share/perl5/Debconf/DbDriver/Backup.pm')
-rw-r--r--beagle/debian-rfs/usr/share/perl5/Debconf/DbDriver/Backup.pm81
1 files changed, 81 insertions, 0 deletions
diff --git a/beagle/debian-rfs/usr/share/perl5/Debconf/DbDriver/Backup.pm b/beagle/debian-rfs/usr/share/perl5/Debconf/DbDriver/Backup.pm
new file mode 100644
index 0000000..73206dc
--- /dev/null
+++ b/beagle/debian-rfs/usr/share/perl5/Debconf/DbDriver/Backup.pm
@@ -0,0 +1,81 @@
+#!/usr/bin/perl -w
+# This file was preprocessed, do not edit!
+
+
+package Debconf::DbDriver::Backup;
+use strict;
+use Debconf::Log qw{:all};
+use base 'Debconf::DbDriver::Copy';
+
+
+
+use fields qw(db backupdb);
+
+
+sub init {
+ my $this=shift;
+
+ foreach my $f (qw(db backupdb)) {
+ if (! ref $this->{$f}) {
+ my $db=$this->driver($this->{$f});
+ unless (defined $f) {
+ $this->error("could not find a db named \"$this->{$f}\"");
+ }
+ $this->{$f}=$db;
+ }
+ }
+}
+
+
+sub copy {
+ my $this=shift;
+ my $item=shift;
+
+ $this->SUPER::copy($item, $this->{db}, $this->{backupdb});
+}
+
+
+sub shutdown {
+ my $this=shift;
+
+ $this->{backupdb}->shutdown(@_);
+ $this->{db}->shutdown(@_);
+}
+
+sub _query {
+ my $this=shift;
+ my $command=shift;
+ shift; # this again
+
+ return $this->{db}->$command(@_);
+}
+
+sub _change {
+ my $this=shift;
+ my $command=shift;
+ shift; # this again
+
+ my $ret=$this->{db}->$command(@_);
+ if (defined $ret) {
+ $this->{backupdb}->$command(@_);
+ }
+ return $ret;
+}
+
+sub iterator { $_[0]->_query('iterator', @_) }
+sub exists { $_[0]->_query('exists', @_) }
+sub addowner { $_[0]->_change('addowner', @_) }
+sub removeowner { $_[0]->_change('removeowner', @_) }
+sub owners { $_[0]->_query('owners', @_) }
+sub getfield { $_[0]->_query('getfield', @_) }
+sub setfield { $_[0]->_change('setfield', @_) }
+sub fields { $_[0]->_query('fields', @_) }
+sub getflag { $_[0]->_query('getflag', @_) }
+sub setflag { $_[0]->_change('setflag', @_) }
+sub flags { $_[0]->_query('flags', @_) }
+sub getvariable { $_[0]->_query('getvariable', @_) }
+sub setvariable { $_[0]->_change('setvariable', @_) }
+sub variables { $_[0]->_query('variables', @_) }
+
+
+1