File Coverage

blib/lib/Atomik/Client/RequestFactory.pm
Criterion Covered Total %
statement 6 6 100.0
branch n/a
condition n/a
subroutine 2 2 100.0
pod n/a
total 8 8 100.0


line stmt bran cond sub pod time code
1             # $Id: /mirror/coderepos/lang/perl/Atomik/trunk/lib/Atomik/Client/RequestFactory.pm 67588 2008-07-31T05:00:38.496278Z daisuke $
2              
3             package Atomik::Client::RequestFactory;
4 1     1   4626 use Moose;
  1         768353  
  1         9  
5              
6             __PACKAGE__->meta->make_immutable;
7              
8 1     1   8046 no Moose;
  1         3  
  1         5  
9              
10             sub create {
11             my ($self, %args) = @_;
12              
13             if (! $args{uri}) {
14             confess "parameter 'uri' is required";
15             }
16              
17             my $method = $args{method} || 'GET';
18             my $request = HTTP::Request->new($method => $args{uri});
19              
20             if (my $h = $args{headers}) {
21             $request->headers->header(%$h);
22             }
23              
24             if (my $c = $args{content}) {
25             $request->content($c);
26             }
27              
28             return $request;
29             }
30              
31             1;