API-Assembla
view release on metacpan or search on metacpan
},
"name" : "API-Assembla",
"prereqs" : {
"configure" : {
"requires" : {
"ExtUtils::MakeMaker" : "6.30"
}
},
"runtime" : {
"requires" : {
"DateTime::Format::ISO8601" : 0,
"LWP::Protocol::https" : 0,
"LWP::UserAgent" : 0,
"Moose" : 0,
"URI" : 0,
"XML::XPath" : 0
}
},
"test" : {
"requires" : {
"Test::More" : 0
configure_requires:
ExtUtils::MakeMaker: 6.30
dynamic_config: 0
generated_by: 'Dist::Zilla version 4.200007, CPAN::Meta::Converter version 2.110440'
license: perl
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
version: 1.4
name: API-Assembla
requires:
DateTime::Format::ISO8601: 0
LWP::Protocol::https: 0
LWP::UserAgent: 0
Moose: 0
URI: 0
XML::XPath: 0
resources:
repository: https://github.com/gphat/api-assembla
version: 0.03
Makefile.PL view on Meta::CPAN
'Test::More' => '0'
},
'CONFIGURE_REQUIRES' => {
'ExtUtils::MakeMaker' => '6.30'
},
'DISTNAME' => 'API-Assembla',
'EXE_FILES' => [],
'LICENSE' => 'perl',
'NAME' => 'API::Assembla',
'PREREQ_PM' => {
'DateTime::Format::ISO8601' => '0',
'LWP::Protocol::https' => '0',
'LWP::UserAgent' => '0',
'Moose' => '0',
'URI' => '0',
'XML::XPath' => '0'
},
'VERSION' => '0.03',
'test' => {
'TESTS' => 't/*.t'
}
lib/API/Assembla.pm view on Meta::CPAN
package API::Assembla;
BEGIN {
$API::Assembla::VERSION = '0.03';
}
use Moose;
use DateTime::Format::ISO8601;
use LWP::UserAgent;
use URI;
use XML::XPath;
use API::Assembla::Space;
use API::Assembla::Ticket;
# ABSTRACT: Access to Assembla API via Perl.
lib/API/Assembla.pm view on Meta::CPAN
# print STDERR $resp->decoded_content;
my $xp = XML::XPath->new(xml => $resp->decoded_content);
my $space = $xp->find('/space')->pop;
my $name = $space->findvalue('name')."";
return API::Assembla::Space->new(
id => $space->findvalue('id').'',
created_at => DateTime::Format::ISO8601->parse_datetime($space->findvalue('created-at').''),
name => $name,
description => $space->findvalue('description').'',
);
}
sub get_spaces {
my ($self) = @_;
my $req = $self->make_req('/spaces/my_spaces');
lib/API/Assembla.pm view on Meta::CPAN
my $spaces = $xp->find('/spaces/space');
my %objects = ();
foreach my $space ($spaces->get_nodelist) {
my $name = $space->findvalue('name')."";
$objects{$name} = API::Assembla::Space->new(
id => $space->findvalue('id').'',
created_at => DateTime::Format::ISO8601->parse_datetime($space->findvalue('created-at').''),
name => $name,
description => $space->findvalue('description').'',
);
}
return \%objects;
}
sub get_ticket {
lib/API/Assembla.pm view on Meta::CPAN
my $resp = $self->_client->request($req);
# print STDERR $resp->decoded_content;
my $xp = XML::XPath->new(xml => $resp->decoded_content);
my $ticket = $xp->find('/ticket')->pop;
return API::Assembla::Ticket->new(
id => $ticket->findvalue('id').'',
created_on => DateTime::Format::ISO8601->parse_datetime($ticket->findvalue('created-on').''),
description => $ticket->findvalue('description').'',
number => $ticket->findvalue('number').'',
priority => $ticket->findvalue('priority').'',
status_name => $ticket->findvalue('status-name').'',
summary => $ticket->findvalue('summary').''
);
}
lib/API/Assembla.pm view on Meta::CPAN
my $tickets = $xp->find('/tickets/ticket');
my %objects = ();
foreach my $ticket ($tickets->get_nodelist) {
my $id = $ticket->findvalue('id').'';
$objects{$id} = API::Assembla::Ticket->new(
id => $id,
created_on => DateTime::Format::ISO8601->parse_datetime($ticket->findvalue('created-on').''),
description => $ticket->findvalue('description').'',
number => $ticket->findvalue('number').'',
priority => $ticket->findvalue('priority').'',
status_name => $ticket->findvalue('status-name').'',
summary => $ticket->findvalue('summary').''
);
}
return \%objects;
}
lib/API/Assembla/Space.pm view on Meta::CPAN
$API::Assembla::Space::VERSION = '0.03';
}
use Moose;
# ABSTRACT: A Space in Assembla
has 'created_at' => (
is => 'rw',
isa => 'DateTime'
);
has 'description' => (
is => 'rw',
isa => 'Str'
);
has 'id' => (
lib/API/Assembla/Space.pm view on Meta::CPAN
=head1 SYNOPSIS
=head1 DESCRIPTION
Assembla XXX
=head1 ATTRIBUTES
=head2 created_at
The DateTime representing the time at which this space was created.
=head2 description
The space's description
=head2 id
The space's id.
=head2 name
lib/API/Assembla/Ticket.pm view on Meta::CPAN
$API::Assembla::Ticket::VERSION = '0.03';
}
use Moose;
# ABSTRACT: A Ticket in Assembla.
has 'created_on' => (
is => 'rw',
isa => 'DateTime'
);
has 'description' => (
is => 'rw',
isa => 'Str'
);
has 'id' => (
lib/API/Assembla/Ticket.pm view on Meta::CPAN
=head1 SYNOPSIS
=head1 DESCRIPTION
Assembla XXX
=head1 ATTRIBUTES
=head2 created_on
The DateTime representing the time at which this ticket was created.
=head2 description
The ticket's description
=head2 id
The ticket's id.
=head2 name
( run in 0.383 second using v1.01-cache-2.11-cpan-05444aca049 )