LP#1179660: remove OpenSRF.pm AUTOLOAD
authorBill Erickson <berick@esilibrary.com>
Mon, 13 May 2013 20:19:51 +0000 (16:19 -0400)
committerGalen Charlton <gmc@esilibrary.com>
Fri, 7 Mar 2014 17:53:40 +0000 (09:53 -0800)
Instead of simply producing an error message in the OpenSRF logs, calls
to nonexistent subroutines are now fatal errors which will stop code
execution.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>

src/perl/lib/OpenSRF.pm

index 3959bd0..b577ecd 100644 (file)
@@ -1,8 +1,6 @@
 package OpenSRF;
-
+use warnings;
 use strict;
-use vars qw/$AUTOLOAD/;
-
 use Error;
 require UNIVERSAL::require;
 
@@ -22,43 +20,6 @@ our $VERSION = "2.12";
 
 =head1 METHODS
 
-=head2 AUTOLOAD
-
-Traps methods calls for methods that have not been defined so they
-don't propagate up the class hierarchy.
-
-=cut
-
-sub AUTOLOAD {
-       my $self = shift;
-       my $type = ref($self) || $self;
-       my $name = $AUTOLOAD;
-       my $otype = ref $self;
-
-       my ($package, $filename, $line) = caller;
-       my ($package1, $filename1, $line1) = caller(1);
-       my ($package2, $filename2, $line2) = caller(2);
-       my ($package3, $filename3, $line3) = caller(3);
-       my ($package4, $filename4, $line4) = caller(4);
-       my ($package5, $filename5, $line5) = caller(5);
-       $name =~ s/.*://;   # strip fully-qualified portion
-       warn <<"        WARN";
-****
-** ${name}() isn't there.  Please create me somewhere (like in $type)!
-** Error at $package ($filename), line $line
-** Call Stack (5 deep):
-**     $package1 ($filename1), line $line1
-**     $package2 ($filename2), line $line2
-**     $package3 ($filename3), line $line3
-**     $package4 ($filename4), line $line4
-**     $package5 ($filename5), line $line5
-** Object type was $otype
-****
-       WARN
-}
-
-
-
 =head2 alert_abstract
 
 This method is called by abstract methods to ensure that the process