NAME
JSON::RPC::Legacy::Procedure - JSON-RPC Service attributes
SYNOPSIS
package MyApp;use base ('JSON::RPC::Legacy::Procedure');sub sum : Public {my ($s, @arg) = @_;return $arg[0] + $arg[1];}# orsub sum : Public(a, b) {my ($s, $obj) = @_;return $obj->{a} + $obj->{b};}# orsub sum : Number(a:num, b:num) {my ($s, $obj) = @_;return $obj->{a} + $obj->{b};}# private method can't be called by clientssub _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.