]> git.donarmstrong.com Git - debbugs.git/blobdiff - Debbugs/SOAP.pm
* avoid warning multiple times on unknown packages
[debbugs.git] / Debbugs / SOAP.pm
index 2ca5b21261e4d355a699493c1dcccddc3561c4fe..db066bfd870d4c67902b3f51ad5a2b349556b072 100644 (file)
@@ -42,11 +42,12 @@ BEGIN{
 use IO::File;
 use Debbugs::Status qw(get_bug_status);
 use Debbugs::Common qw(make_list getbuglocation getbugcomponent);
+use Debbugs::Packages;
 use Storable qw(nstore retrieve);
 use Scalar::Util qw(looks_like_number);
 
 
-our $CURRENT_VERSION = 1;
+our $CURRENT_VERSION = 2;
 
 =head2 get_usertag
 
@@ -224,13 +225,7 @@ sub get_bug_log{
      my $VERSION = __populate_version(pop);
      my ($self,$bug,$msg_num) = @_;
 
-     my $location = getbuglocation($bug,'log');
-     my $bug_log = getbugcomponent($bug,'log',$location);
-
-     my $log_fh = IO::File->new($bug_log, 'r') or
-         die "Unable to open bug log $bug_log for reading: $!";
-
-     my $log = Debbugs::Log->new($log_fh) or
+     my $log = Debbugs::Log->new(bug_num => $bug) or
          die "Debbugs::Log was unable to be initialized";
 
      my %seen_msg_ids;
@@ -267,14 +262,28 @@ architecture. If undef is passed as the architecture, returns a list
 of references to all possible pairs of source package names and
 versions for all architectures, with any duplicates removed.
 
-(This function corresponds to L<Debbugs::Packages::binarytosource>)
+As of comaptibility version 2, this has changed to use the more
+powerful binary_to_source routine, which allows returning source only,
+concatenated scalars, and other useful features.
+
+See the documentation of L<Debbugs::Packages::binary_to_source> for
+details.
 
 =cut
 
 sub binary_to_source{
      my $VERSION = __populate_version(pop);
+     my ($self,@params) = @_;
 
-     return [binarytosource(@_)];
+     if ($VERSION <= 1) {
+        return [Debbugs::Packages::binary_to_source(binary => $params[0],
+                                                    (@params > 1)?(version => $params[1]):(),
+                                                    (@params > 2)?(arch    => $params[2]):(),
+                                                   )];
+     }
+     else {
+        return [Debbugs::Packages::binary_to_source(@params)];
+     }
 }
 
 =head2 source_to_binary
@@ -293,8 +302,9 @@ architecture is not returned.
 
 sub source_to_binary {
      my $VERSION = __populate_version(pop);
+     my ($self,@params) = @_;
 
-     return [source_to_binary(@_)];
+     return [Debbugs::Packages::sourcetobinary(@params)];
 }
 
 =head2 get_versions
@@ -337,8 +347,9 @@ This function correponds to L<Debbugs::Packages::get_versions>
 
 sub get_versions{
      my $VERSION = __populate_version(pop);
+     my ($self,@params) = @_;
 
-     return scalar get_versions(@_);
+     return scalar Debbugs::Packages::get_versions(@params);
 }
 
 =head1 VERSION COMPATIBILITY