use Tie::IxHash;
use base qw(Business::OnlinePayment);
-$VERSION = '0.06';
+$VERSION = '0.07';
$DEBUG = 0;
BEGIN {
keys %$post_data );
}
+ $self->build_subs(qw( response_page response_code response_headers ));
+
if ( $ssl_module eq 'Net::SSLeay' ) {
import Net::SSLeay qw(get_https make_headers);
my $headers = make_headers(%headers);
- get_https( $self->server, $self->port, $path, $headers, "",
- $opts->{"Content-Type"} );
- }
- elsif ( $ssl_module eq 'Crypt::SSLeay' ) {
+
+ my( $res_page, $res_code, @res_headers ) =
+ get_https( $self->server,
+ $self->port,
+ $path,
+ $headers,
+ "",
+ $opts->{"Content-Type"},
+ );
+
+ $self->response_page( $res_page );
+ $self->response_code( $res_code );
+ $self->response_headers( { @res_headers } );
+
+ ( $res_page, $res_code, @res_headers );
+
+ } elsif ( $ssl_module eq 'Crypt::SSLeay' ) {
import HTTP::Request::Common qw(GET);
}
my $res = $ua->request( GET($url) );
- (
- $res->content, $res->code,
- map { $_ => $res->header($_) } $res->header_field_names
- );
- }
- else {
+ my @res_headers = map { $_ => $res->header($_) }
+ $res->header_field_names;
+
+ $self->response_page( $res->content );
+ $self->response_code( $res->code );
+ $self->response_headers( { @res_headers } );
+
+ ( $res->content, $res->code, @res_headers );
+
+ } else {
die "unknown SSL module $ssl_module";
}
+
}
=item https_post [ \%options ] SCALAR | HASHREF | FIELD => VALUE, ...
map { " $_ => " . $post_data->{$_} . "\n" } keys %$post_data );
}
+ $self->build_subs(qw( response_page response_code response_headers ));
+
if ( $ssl_module eq 'Net::SSLeay' ) {
import Net::SSLeay qw(post_https make_headers make_form);
}
my $raw_data = ref($post_data) ? make_form(%$post_data) : $post_data;
- post_https( $self->server, $self->port, $self->path, $headers,
- $raw_data, $opts->{"Content-Type"} );
- }
- elsif ( $ssl_module eq 'Crypt::SSLeay' ) {
+
+ my( $res_page, $res_code, @res_headers ) =
+ post_https( $self->server,
+ $self->port,
+ $self->path,
+ $headers,
+ $raw_data,
+ $opts->{"Content-Type"},
+ );
+
+ $self->response_page( $res_page );
+ $self->response_code( $res_code );
+ $self->response_headers( { @res_headers } );
+
+ ( $res_page, $res_code, @res_headers );
+
+ } elsif ( $ssl_module eq 'Crypt::SSLeay' ) {
import HTTP::Request::Common qw(POST);
$res = $ua->request($req);
}
- (
- $res->content, $res->code,
- map { $_ => $res->header($_) } $res->header_field_names
- );
- }
- else {
+ my @res_headers = map { $_ => $res->header($_) }
+ $res->header_field_names;
+
+ $self->response_page( $res->content );
+ $self->response_code( $res->code );
+ $self->response_headers( { @res_headers } );
+
+ ( $res->content, $res->code, @res_headers );
+
+ } else {
die "unknown SSL module $ssl_module";
}
+
}
=back