equal
deleted
inserted
replaced
6 use Carp; |
6 use Carp; |
7 |
7 |
8 use Moose; |
8 use Moose; |
9 use MooseX::SemiAffordanceAccessor; |
9 use MooseX::SemiAffordanceAccessor; |
10 use LWP::UserAgent; |
10 use LWP::UserAgent; |
|
11 use Joker::Result; |
11 |
12 |
12 has [qw(username password)] => ( |
13 has [qw(username password)] => ( |
13 isa => 'Str', |
14 isa => 'Str', |
14 is => 'ro', |
15 is => 'ro', |
15 required => 1 |
16 required => 1 |
42 ); |
43 ); |
43 my $req = HTTP::Request->new( |
44 my $req = HTTP::Request->new( |
44 GET => $self->uri . "$type?" . join '&', map { "$_=$parm{$_}" } keys %parm); |
45 GET => $self->uri . "$type?" . join '&', map { "$_=$parm{$_}" } keys %parm); |
45 my $result = $self->ua->request($req); |
46 my $result = $self->ua->request($req); |
46 croak $result->status_line if not $result->is_success; |
47 croak $result->status_line if not $result->is_success; |
47 return $result->content; |
48 return Joker::Result->new(response => $result->content); |
48 } |
49 } |
49 |
50 |
50 sub login { |
51 sub login { |
51 my $self = shift; |
52 my $self = shift; |
52 my $req = HTTP::Request->new( |
53 my $req = HTTP::Request->new( |
59 return $1 if $result->content =~ /^Auth-Sid:\s+(\S+)/m; |
60 return $1 if $result->content =~ /^Auth-Sid:\s+(\S+)/m; |
60 |
61 |
61 croak q{Can't get Auth-Sid}; |
62 croak q{Can't get Auth-Sid}; |
62 } |
63 } |
63 |
64 |
64 1; |
65 __PACKAGE__->meta->make_immutable; |