CloudApp-REST

 view release on metacpan or  search on metacpan

Build.PL  view on Meta::CPAN

    license             => 'perl',
    dist_author         => q{Matthias Dietrich <perl@rainboxx.de>},
    dist_version_from   => 'lib/CloudApp/REST.pm',
    build_requires => {
        'Test::More' => 0,
        'MooseX::Types::URI' => 0,
        'MooseX::Types::DateTimeX' => 0,
        'Moose::Role' => 0,
        'Moose' => 0,
        'JSON::XS' => 0,
        'HTTP::Request' => 0,
        'Data::Dumper' => 0,
        'LWP::UserAgent' => 0,
        'Carp' => 0,
        'Readonly' => 0,,
        'Module::Load' => 0,
    },
    add_to_cleanup => [ 'CloudApp-REST-*' ],
    create_makefile_pl => 'traditional',
    meta_merge => {
        resources => {

META.yml  view on Meta::CPAN

---
abstract: 'Perl Interface to the CloudApp REST API'
author:
  - 'Matthias Dietrich <perl@rainboxx.de>'
build_requires:
  Carp: 0
  Data::Dumper: 0
  HTTP::Request: 0
  JSON::XS: 0
  LWP::UserAgent: 0
  Module::Load: 0
  Moose: 0
  Moose::Role: 0
  MooseX::Types::DateTimeX: 0
  MooseX::Types::URI: 0
  Readonly: 0
  Test::More: 0
configure_requires:

Makefile.PL  view on Meta::CPAN

# Note: this file was auto-generated by Module::Build::Compat version 0.3607
use ExtUtils::MakeMaker;
WriteMakefile
(
  'NAME' => 'CloudApp::REST',
  'VERSION_FROM' => 'lib/CloudApp/REST.pm',
  'PREREQ_PM' => {
                   'Carp' => 0,
                   'Data::Dumper' => 0,
                   'HTTP::Request' => 0,
                   'JSON::XS' => 0,
                   'LWP::UserAgent' => 0,
                   'Module::Load' => 0,
                   'Moose' => 0,
                   'Moose::Role' => 0,
                   'MooseX::Types::DateTimeX' => 0,
                   'MooseX::Types::URI' => 0,
                   'Readonly' => 0,
                   'Test::More' => 0
                 },

lib/CloudApp/REST.pm  view on Meta::CPAN

package CloudApp::REST;

use Moose;
use MooseX::Types::URI qw(Uri);

use LWP::UserAgent;
use HTTP::Request;
use JSON::XS;
use Module::Load;
use Data::Dumper;

=head1 NAME

CloudApp::REST - Perl Interface to the CloudApp REST API

=head1 VERSION

lib/CloudApp/REST.pm  view on Meta::CPAN


    my $uri    = $params->{uri} || die "No URI given!";
    my $method = $params->{method};
    my %body   = $params->{params} ? %{ $params->{params} } : ();

    $self->useragent->requests_redirectable([]) if $params->{noredirect};

    my $res;
    unless (exists $body{file}) {
        $self->_debug("New request, URI is $uri");
        my $req = HTTP::Request->new;
        $req->header(Accept => 'application/json');
        $req->content_type('application/json');
        $req->uri($uri);

        $req->method('GET');
        if (%body) {
            $self->_debug("Have content, method will be POST");

            my $body_json = encode_json \%body;
            $req->content($body_json);



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