Business-Shipping

 view release on metacpan or  search on metacpan

lib/Business/Shipping/RateRequest/Online.pm  view on Meta::CPAN

}

sub _gen_request {
    trace '()';
    my ($self) = shift;

    my $request_xml = $self->_gen_request_xml();

    #trace( $request_xml );
    info("gen_url = " . $self->_gen_url());
    my $request = HTTP::Request->new('POST', $self->_gen_url());
    $request->header('content-type'   => 'application/x-www-form-urlencoded');
    $request->header('content-length' => length($request_xml));
    $request->content($request_xml);

    return ($request);
}

sub _get_response {
    my ($self, $request_param) = @_;
    trace 'called';

lib/Business/Shipping/UPS_Online/Tracking.pm  view on Meta::CPAN

  ],
}

=cut

use Any::Moose;
use Business::Shipping::Logging;
use XML::Simple 2.05;
use XML::DOM;
use LWP::UserAgent;
use HTTP::Request;
use HTTP::Response;
use version; our $VERSION = qv('400');

extends 'Business::Shipping::Tracking';

has 'access_key' => (is => 'rw');

has 'prod_url' => (
    is      => 'rw',
    default => 'https://www.ups.com/ups.app/xml/Track',

lib/Business/Shipping/UPS_Online/Tracking.pm  view on Meta::CPAN


    my $request_xml = $self->_gen_request_xml();

    if (!defined($request_xml) || scalar(@$request_xml) == 0) {
        return;
    }

    # Return an array of http request objects with the
    my @http_request_objects;
    for my $xml_request (@$request_xml) {
        my $request = HTTP::Request->new('POST', $self->_gen_url());
        $request->header(
            'content-type' => 'application/x-www-form-urlencoded');
        $request->header('content-length' => length($xml_request));
        $request->content($xml_request);

        # Large debug
        trace('HTTP Request: ' . $request->as_string()) if is_trace();
        push @http_request_objects, $request;
    }
    debug('Done creating HTTP::Request objects.');

    return @http_request_objects;
}

sub _handle_response {
    trace '()';
    my $self = shift;

    my $response_tree = XML::Simple::XMLin(
        $self->response()->content(),

lib/Business/Shipping/USPS_Online/RateRequest.pm  view on Meta::CPAN


use Any::Moose;
use Data::Dumper;
use Carp;
use Business::Shipping::Logging;
use Business::Shipping::USPS_Online::Shipment;
use Business::Shipping::USPS_Online::Package;
use XML::Simple 2.05;
use XML::DOM;
use LWP::UserAgent;
use HTTP::Request;
use HTTP::Response;
use version; our $VERSION = qv('400');

=head2 domestic

=head2 to_zip

Note that some methods are handled by the parent class:

to_zip, from_zip, to_city, from_city, to_country, from_country.

lib/Business/Shipping/USPS_Online/Tracking.pm  view on Meta::CPAN

  ],
}

=cut

use Any::Moose;
use Business::Shipping::Logging;
use XML::Simple 2.05;
use XML::DOM;
use LWP::UserAgent;
use HTTP::Request;
use HTTP::Response;
use Date::Parse;
use POSIX;
use version; our $VERSION = qv('400');

extends 'Business::Shipping::Tracking';

has 'prod_url' => (
    is      => 'rw',
    default => 'http://production.shippingapis.com/ShippingAPI.dll'

lib/Business/Shipping/USPS_Online/Tracking.pm  view on Meta::CPAN


    return ($self->test_mode() ? $self->test_url() : $self->prod_url());
}

sub _gen_request {
    my ($self) = shift;
    trace('called');

    my @reqs;
    foreach my $request_xml ($self->_gen_request_xml()) {
        my $request = HTTP::Request->new('POST', $self->_gen_url());

        $request->header(
            'content-type' => 'application/x-www-form-urlencoded');
        $request->header('content-length' => length($request_xml));

        # This is how USPS slightly varies from Business::Shipping
        my $new_content = 'API=TrackV2' . '&XML=' . $request_xml;
        $request->content($new_content);
        $request->header('content-length' => length($request->content()));



( run in 0.560 second using v1.01-cache-2.11-cpan-de7293f3b23 )