Просмотр исходного кода

Update Dpkg::Changelog and Dpkg::Index to use Dpkg::Interface::Storable

Raphaël Hertzog лет назад: 16
Родитель
Сommit
69e9305c84
2 измененных файлов с 8 добавлено и 29 удалено
  1. 6 9
      scripts/Dpkg/Changelog.pm
  2. 2 20
      scripts/Dpkg/Index.pm

+ 6 - 9
scripts/Dpkg/Changelog.pm

@@ -44,8 +44,9 @@ use Dpkg::Index;
 use Dpkg::Version;
 use Dpkg::Vendor qw(run_vendor_hook);
 
+use base qw(Dpkg::Interface::Storable);
+
 use overload
-    '""'  => sub { return $_[0]->output() },
     '@{}' => sub { return $_[0]->{data} };
 
 =over 4
@@ -74,14 +75,6 @@ Parse $filename as a changelog.
 
 =cut
 
-sub load {
-    my ($self, $file) = @_;
-    open(my $fh, "<", $file) or syserr(_g("cannot read %s"), $file);
-    my $ret = $self->parse($fh, $file);
-    close($fh);
-    return $ret;
-}
-
 =item $c->set_options(%opts)
 
 Change the value of some options. "verbose" (defaults to 1) defines
@@ -432,6 +425,10 @@ sub abort_early {
     return;
 }
 
+=item $c->save($filename)
+
+Save the changelog in the given file.
+
 =item $c->output()
 
 =item "$c"

+ 2 - 20
scripts/Dpkg/Index.pm

@@ -23,9 +23,10 @@ use Dpkg::ErrorHandling;
 use Dpkg::Control;
 use Dpkg::Compression::FileHandle;
 
+use base qw(Dpkg::Interface::Storable);
+
 use overload
     '@{}' => sub { return $_[0]->{'order'} },
-    '""' => sub { return $_[0]->output() },
     fallback => 1;
 
 =head1 NAME
@@ -151,16 +152,6 @@ sub add {
 Reads the file and creates all items parsed. Returns the number of items
 parsed. Handles compressed files transparently based on their extensions.
 
-=cut
-
-sub load {
-    my ($self, $file) = @_;
-    my $cf = Dpkg::Compression::FileHandle->new(filename => $file);
-    my $res = $self->parse($cf, $file);
-    close($cf) || syserr(_g("cannot close %s"), $file);
-    return $res;
-}
-
 =item $index->parse($fh, $desc)
 
 Reads the filehandle and creates all items parsed. Returns the number of
@@ -185,15 +176,6 @@ sub parse {
 Writes the content of the index in a file. Auto-compresses files
 based on their extensions.
 
-=cut
-
-sub save {
-    my ($self, $file) = @_;
-    my $cf = Dpkg::Compression::FileHandle->new(filename => $file);
-    $self->output($cf);
-    close($cf) || syserr(_g("cannot close %s"), $file);
-}
-
 =item my $item = $index->new_item()
 
 Creates a new item. Mainly useful for derived objects that would want