NAME

XAS::Lib::RPC::JSON::Client - A JSON RPC interface for the XAS environment

SYNOPSIS

my $client = XAS::Lib::RPC::JSON::Client->new(
    -port => 9505,
    -host => 'localhost',
);

DESCRIPTION

This modules implements a simple JSON RPC v2.0 client. It needs be extended to be usefull. It doesn't support "Notification" calls.

METHODS

new

This initializes the module. There are three parameters that can be passed. They are the following:

-port

The IP port to connect to (default 9505).

-host

The host to connect to (default 127.0.0.1).

-timeout

An optional timeout, this defaults to 60 seconds.

connect

Connect to the defined server.

disconnect

Disconnect from the defined server.

call

This method is used to format the JSON packet and send it to the server. Any errors returned from the server are parsed and then thrown.

-method

The name of the RPC method to invoke.

-id

The id used to identify this method call.

-params

A hashref of the parameters to be passed to the method.

SEE ALSO

XAS

AUTHOR

Kevin L. Esteb, <kevin@kesteb.us>

COPYRIGHT AND LICENSE

Copyright (C) 2012 by Kevin L. Esteb

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.8 or, at your option, any later version of Perl 5 you may have available.