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::Base
XAS::Class
XAS::Constants
XAS::Exception
XAS::System
XAS::Utils
XAS::Apps::Base::Alerts
XAS::Apps::Base::Collector
XAS::Apps::Base::ExtractData
XAS::Apps::Base::ExtractGlobals
XAS::Apps::Base::RemoveData
XAS::Apps::Database::Schema
XAS::Apps::Templates::Daemon
XAS::Apps::Templates::Generic
XAS::Apps::Test::Echo::Client
XAS::Apps::Test::Echo::Server
XAS::Apps::Test::RPC::Client
XAS::Apps::Test::RPC::Methods
XAS::Apps::Test::RPC::Server
XAS::Collector::Alert
XAS::Collector::Base
XAS::Collector::Connector
XAS::Collector::Factory
XAS::Lib::App
XAS::Lib::App::Daemon
XAS::Lib::App::Daemon::POE
XAS::Lib::Connector
XAS::Lib::Counter
XAS::Lib::Daemon::Logger
XAS::Lib::Daemon::Logging
XAS::Lib::Gearman::Admin
XAS::Lib::Gearman::Admin::Status
XAS::Lib::Gearman::Admin::Worker
XAS::Lib::Gearman::Client
XAS::Lib::Gearman::Client::Status
XAS::Lib::Gearman::Worker
XAS::Lib::Net::Client
XAS::LIb::Net::Server
XAS::Lib::RPC::JSON::Client
XAS::Lib::RPC::JSON::Server
XAS::Lib::Session
XAS::Lib::Spool
XAS::Model::Database
XAS::Model::Database::Alert
XAS::Model::Database::Counter
XAS::Model::DBM
XAS::Monitor::Base
XAS::Monitor::Database
XAS::Monitor::Database::Alert
XAS::Scheduler::Base
XAS::System::Alert
XAS::System::Email
XAS::System::Environment
XAS::System::Logger
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.