Akamai-Open-Client

 view release on metacpan or  search on metacpan

META.json  view on Meta::CPAN

            "Test::More" : "0",
            "Test::NoTabs" : "0",
            "Test::Pod" : "1.41"
         }
      },
      "runtime" : {
         "requires" : {
            "Data::Dumper" : "0",
            "Data::UUID" : "0",
            "Digest::SHA" : "0",
            "HTTP::Request" : "0",
            "LWP::UserAgent" : "0",
            "Log::Log4perl" : "0",
            "MIME::Base64" : "0",
            "Moose" : "0",
            "MooseX::Singleton" : "0",
            "POSIX" : "0",
            "URI" : "0",
            "URL::Encode" : "0",
            "constant" : "0",
            "strict" : "0",

META.yml  view on Meta::CPAN

generated_by: 'Dist::Zilla version 5.013, CPAN::Meta::Converter version 2.132510'
license: perl
meta-spec:
  url: http://module-build.sourceforge.net/META-spec-v1.4.html
  version: 1.4
name: Akamai-Open-Client
requires:
  Data::Dumper: 0
  Data::UUID: 0
  Digest::SHA: 0
  HTTP::Request: 0
  LWP::UserAgent: 0
  Log::Log4perl: 0
  MIME::Base64: 0
  Moose: 0
  MooseX::Singleton: 0
  POSIX: 0
  URI: 0
  URL::Encode: 0
  constant: 0
  strict: 0

Makefile.PL  view on Meta::CPAN

    "ExtUtils::MakeMaker" => "6.30"
  },
  "DISTNAME" => "Akamai-Open-Client",
  "EXE_FILES" => [],
  "LICENSE" => "perl",
  "NAME" => "Akamai::Open::Client",
  "PREREQ_PM" => {
    "Data::Dumper" => 0,
    "Data::UUID" => 0,
    "Digest::SHA" => 0,
    "HTTP::Request" => 0,
    "LWP::UserAgent" => 0,
    "Log::Log4perl" => 0,
    "MIME::Base64" => 0,
    "Moose" => 0,
    "MooseX::Singleton" => 0,
    "POSIX" => 0,
    "URI" => 0,
    "URL::Encode" => 0,
    "constant" => 0,
    "strict" => 0,

Makefile.PL  view on Meta::CPAN

    "TESTS" => "t/*.t"
  }
);


my %FallbackPrereqs = (
  "Cwd" => 0,
  "Data::Dumper" => 0,
  "Data::UUID" => 0,
  "Digest::SHA" => 0,
  "HTTP::Request" => 0,
  "JSON" => 0,
  "LWP::UserAgent" => 0,
  "Log::Log4perl" => 0,
  "MIME::Base64" => 0,
  "Moose" => 0,
  "MooseX::Singleton" => 0,
  "POSIX" => 0,
  "Test::More" => 0,
  "Test::Pod" => "1.41",
  "URI" => 0,

lib/Akamai/Open/Request.pm  view on Meta::CPAN

  $Akamai::Open::Request::AUTHORITY = 'cpan:PROBST';
}
# ABSTRACT: The request handler for the Akamai Open API Perl clients
$Akamai::Open::Request::VERSION = '0.03';
use strict;
use warnings;

use Moose;
use Data::UUID;
use POSIX qw(strftime);
use HTTP::Request;
use LWP::UserAgent;
use Akamai::Open::Debug;

use constant USER_AGENT => "Akamai::Open::Client/Perl-$^V";

has 'debug'     => (is => 'rw', default => sub{ return(Akamai::Open::Debug->instance());});
has 'nonce'     => (is => 'rw', isa => 'Str', default => \&gen_uuid, trigger => \&Akamai::Open::Debug::debugger);
has 'timestamp' => (is => 'rw', isa => 'Str', default => \&gen_timestamp, trigger => \&Akamai::Open::Debug::debugger);
has 'request'   => (is => 'rw', default => sub{return(HTTP::Request->new());});
has 'response'  => (is => 'rw', trigger => \&Akamai::Open::Debug::debugger);
has 'user_agent'=> (is => 'rw', default => sub {
                                                 my $agent = LWP::UserAgent->new();
                                                 $agent->timeout(600);
                                                 $agent->agent(USER_AGENT);
                                                 return($agent);
                                               });

sub gen_timestamp {
    return(strftime('%Y%m%dT%H:%M:%S%z', gmtime()));

lib/Akamai/Open/Request.pm  view on Meta::CPAN


Akamai::Open::Request - The request handler for the Akamai Open API Perl clients

=head1 VERSION

version 0.03

=head1 ABOUT

I<Akamai::Open::Request> is the internal used request 
handler, based on I<HTTP::Request> and I<LWP::UserAgent>.

=head1 AUTHOR

Martin Probst <internet+cpan@megamaddin.org>

=head1 COPYRIGHT AND LICENSE

This software is copyright (c) 2014 by Martin Probst.

This is free software; you can redistribute it and/or modify it under

t/0004-request.t  view on Meta::CPAN

    use_ok('POSIX');
}
require_ok('Akamai::Open::Request');
require_ok('POSIX');

# object tests
my $req = new_ok('Akamai::Open::Request');

# subobjects tests
isa_ok($req->user_agent, 'LWP::UserAgent');
isa_ok($req->request, 'HTTP::Request');
isa_ok($req->debug, 'Akamai::Open::Debug');

# functional tests
like($req->nonce, qr/([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})/i,    'testing for a correct UUID');
is($req->gen_timestamp, strftime('%Y%m%dT%H:%M:%S%z', gmtime()),                               'testing for correct timestamp');

done_testing;



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