summaryrefslogtreecommitdiff
path: root/beagle/debian-rfs/usr/share/perl5/Debconf/DbDriver/Copy.pm
diff options
context:
space:
mode:
Diffstat (limited to 'beagle/debian-rfs/usr/share/perl5/Debconf/DbDriver/Copy.pm')
-rw-r--r--beagle/debian-rfs/usr/share/perl5/Debconf/DbDriver/Copy.pm41
1 files changed, 41 insertions, 0 deletions
diff --git a/beagle/debian-rfs/usr/share/perl5/Debconf/DbDriver/Copy.pm b/beagle/debian-rfs/usr/share/perl5/Debconf/DbDriver/Copy.pm
new file mode 100644
index 0000000..d4b3c71
--- /dev/null
+++ b/beagle/debian-rfs/usr/share/perl5/Debconf/DbDriver/Copy.pm
@@ -0,0 +1,41 @@
+#!/usr/bin/perl -w
+# This file was preprocessed, do not edit!
+
+
+package Debconf::DbDriver::Copy;
+use strict;
+use Debconf::Log qw{:all};
+use base 'Debconf::DbDriver';
+
+
+sub copy {
+ my $this=shift;
+ my $item=shift;
+ my $src=shift;
+ my $dest=shift;
+
+ debug "db $this->{name}" => "copying $item from $src->{name} to $dest->{name}";
+
+ my @owners=$src->owners($item);
+ if (! @owners) {
+ @owners=("unknown");
+ }
+ foreach my $owner (@owners) {
+ my $template = Debconf::Template->get($src->getfield($item, 'template'));
+ my $type="";
+ $type = $template->type if $template;
+ $dest->addowner($item, $owner, $type);
+ }
+ foreach my $field ($src->fields($item)) {
+ $dest->setfield($item, $field, $src->getfield($item, $field));
+ }
+ foreach my $flag ($src->flags($item)) {
+ $dest->setflag($item, $flag, $src->getflag($item, $flag));
+ }
+ foreach my $var ($src->variables($item)) {
+ $dest->setvariable($item, $var, $src->getvariable($item, $var));
+ }
+}
+
+
+1