diff options
author | franck cuny <franck@lumberjaph.net> | 2009-11-24 12:19:38 +0100 |
---|---|---|
committer | franck cuny <franck@lumberjaph.net> | 2009-11-24 12:19:38 +0100 |
commit | b682e8733377721a6793c83e9002dd2f76df2066 (patch) | |
tree | bbf5a0eefc8649f617bfc82d9dd12299368df727 | |
parent | basic ideas (diff) | |
download | moosex-net-api-b682e8733377721a6793c83e9002dd2f76df2066.tar.gz |
update pod
-rw-r--r-- | lib/MooseX/Net/API.pm | 43 |
1 files changed, 41 insertions, 2 deletions
diff --git a/lib/MooseX/Net/API.pm b/lib/MooseX/Net/API.pm index d1f66bc..3fad417 100644 --- a/lib/MooseX/Net/API.pm +++ b/lib/MooseX/Net/API.pm @@ -51,6 +51,7 @@ sub net_api_method { my $self = shift; my %args = @_; + # XXX apply to all if ($options{path} =~ /\$(\w+)/) { my $match = $1; if (my $value = delete $args{$match}) { @@ -72,6 +73,7 @@ sub net_api_method { } elsif ( $method =~ /^(?:POST|PUT)$/ ) { $req = HTTP::Request->new($method => $uri); + # XXX handle POST and PUT for params } else { croak "$method is not defined"; @@ -88,6 +90,7 @@ sub net_api_method { else { $code = delete $options{code}; } + $class->add_method( $name, MooseX::Net::API::Meta::Method->new( @@ -151,18 +154,54 @@ MooseX::Net::API - Easily create client for net API =head1 SYNOPSIS + package My::Net::API; + use Moose; use MooseX::Net::API; net_api_method => ( description => 'this get foo', method => 'GET', path => '/foo/', - arguments => qw[/user group/], + params => [qw/user group/], + required => [qw/user/], ); =head1 DESCRIPTION -MooseX::Net::API is +MooseX::Net::API is module to help to easily create a client to a web + API + +=head2 METHODS + +=over 4 + +=item B<net_api_method> + +=over 2 + +=item B<description> + +description of the method (this is a documentation) + +=item B<method> + +HTTP method (GET, POST, PUT, DELETE) + +=item B<path> + +path of the query + +=item B<params> + +list of params + +=item B<required> + +list of required params + +=back + +=back =head1 AUTHOR |