JSON::RPC::Common::Procedure::Return - JSON-RPC procedure return class
use JSON::RPC::Common::Procedure::Return;
# create a return from a call, retaining the ID
my $return = $call->return_result("foo");
# inflate gets a version specific class
my $return = JSON::RPC::Common::Procedure::Return->inflate(
version => "2.0",
result => "foo",
id => $id,
);
# you can specify a return with an error, it's just an attribute
my $return = JSON::RPC::Common::Procedure::Return->new(
error => ...,
);
This class abstracts JSON-RPC procedure returns (results).
Version specific implementation are provided as well.
- id
- The ID of the call this is a result for.
Results with no ID are typically error results for parse
fails, when the call ID could never be determined.
- result
- The JSON data that is the result of the call, if any.
- error
- The error, if any. This is a JSON::RPC::Common::Procedure::Return::Error
object (or a version specific subclass).
- error_class
- The error class to use when instantiating errors.
- inflate
- deflate
- Go to and from JSON data.
- inflate_error
- deflate_error
- Helpers for managing the error sub object.
- set_error
- Calls "create_error" with it's arguments
and sets the error to that.
E.g.
$res->set_error("foo");
$res->error->message; # "foo"
- create_error
- Instantiate a new error of class error_class using "new_dwim" in
JSON::RPC::Common::Procedure::Return::Error.
Yuval Kogman <nothingmuch@woobling.org>
This software is copyright (c) 2014 by Yuval Kogman and others.
This is free software; you can redistribute it and/or modify it
under the same terms as the Perl 5 programming language system itself.