Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

json::rpc::procedure(3pm) [debian man page]

JSON::RPC::Procedure(3pm)				User Contributed Perl Documentation				 JSON::RPC::Procedure(3pm)

NAME
JSON::RPC::Procedure - JSON-RPC Service attributes SYNOPSIS
package MyApp; use base ('JSON::RPC::Procedure'); sub sum : Public { my ($s, @arg) = @_; return $arg[0] + $arg[1]; } # or sub sum : Public(a, b) { my ($s, $obj) = @_; return $obj->{a} + $obj->{b}; } # or sub sum : Number(a:num, b:num) { my ($s, $obj) = @_; return $obj->{a} + $obj->{b}; } # private method can't be called by clients sub _foobar : Private { # ... } DESCRIPTION
Using this module, you can write a subroutine with a special attribute. Currently, in below attributes, only Public and Private are available. Others are same as Public. Public Means that a client can call this procedure. Private Means that a client can't call this procedure. Arr Means that its return values is an array object. Obj Means that its return values is a member object. Bit Bool Means that a return values is a "true" or "false". Num Means that its return values is a number. Str Means that its return values is a string. Nil None Means that its return values is a "null". TODO
Auto Service Description Type check SEE ALSO
<http://json-rpc.org/wd/JSON-RPC-1-1-WD-20060807.html> AUTHOR
Makamaka Hannyaharamitu, <makamaka[at]cpan.org> COPYRIGHT AND LICENSE
Copyright 2007 by Makamaka Hannyaharamitu This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. perl v5.10.1 2008-09-01 JSON::RPC::Procedure(3pm)

Check Out this Related Man Page

JSON::RPC::Server::Daemon(3pm)				User Contributed Perl Documentation			    JSON::RPC::Server::Daemon(3pm)

NAME
JSON::RPC::Server::Daemon - JSON-RPC sever for daemon SYNOPSIS
# Daemon version #-------------------------- # In your daemon server script use JSON::RPC::Server::Daemon; JSON::RPC::Server::Daemon->new(LocalPort => 8080); ->dispatch({'/jsonrpc/API' => 'MyApp'}) ->handle(); #-------------------------- # In your application class package MyApp; use base qw(JSON::RPC::Procedure); # Perl 5.6 or more than sub echo : Public { # new version style. called by clients # first argument is JSON::RPC::Server object. return $_[1]; } sub sum : Public(a:num, b:num) { # sets value into object member a, b. my ($s, $obj) = @_; # return a scalar value or a hashref or an arryaref. return $obj->{a} + $obj->{b}; } sub a_private_method : Private { # ... can't be called by client } sub sum_old_style { # old version style. taken as Public my ($s, @arg) = @_; return $arg[0] + $arg[1]; } DESCRIPTION
This module is for http daemon servers using HTTP::Daemon or HTTP::Daemon::SSL. METHODS
They are inherited from the JSON::RPC::Server methods basically. The below methods are implemented in JSON::RPC::Server::Daemon. new Creates new JSON::RPC::Server::Daemon object. Arguments are passed to HTTP::Daemon or HTTP::Daemon::SSL. handle Runs server object and returns a response. retrieve_json_from_post retrieves a JSON request from the body in POST method. retrieve_json_from_get In the protocol v1.1, 'GET' request method is also allowable. it retrieves a JSON request from the query string in GET method. response returns a response JSON data to a client. SEE ALSO
HTTP::Daemon, HTTP::Daemon::SSL, JSON::RPC::Server, JSON::RPC::Procedure, JSON, <http://json-rpc.org/wd/JSON-RPC-1-1-WD-20060807.html>, <http://json-rpc.org/wiki/specification>, AUTHOR
Makamaka Hannyaharamitu, <makamaka[at]cpan.org> COPYRIGHT AND LICENSE
Copyright 2007-2008 by Makamaka Hannyaharamitu This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. perl v5.10.1 2008-09-01 JSON::RPC::Server::Daemon(3pm)
Man Page