better error message when LinkPoint does not return a statusMessage
[Business-OnlinePayment-LinkPoint.git] / LinkPoint.pm
index 26c16bb..b0c496a 100644 (file)
@@ -1,6 +1,6 @@
 package Business::OnlinePayment::LinkPoint;
 
-# $Id: LinkPoint.pm,v 1.6 2002-08-14 01:32:54 ivan Exp $
+# $Id: LinkPoint.pm,v 1.7 2003-03-31 20:41:56 ivan Exp $
 
 use strict;
 use vars qw($VERSION @ISA @EXPORT @EXPORT_OK);
@@ -159,7 +159,13 @@ sub submit {
     if ( $response{'statusCode'} == 0 ) {
       $self->is_success(0);
       $self->result_code('');
-      $self->error_message($response{'statusMessage'});
+      if ( exists($response{'statusMessage'})
+           && defined($response{'statusMessage'}) ) { # "normal" error
+        $self->error_message($response{'statusMessage'});
+      } else { # "should not happen" error (should this die/croak?)
+        $self->error_message("No statusMessage returned!  Response follows:".
+          join(' / ', map { "$_=>".$response{$_} } keys %response )           );
+      }
     } else {
       $self->is_success(1);
       $self->result_code($response{'AVCCode'});