NAME
App::KGB::Client::ServerRef - server instance in KGB client
SYNOPSIS
use App::KGB::Client::ServerRef;
my $s = App::KGB::Client::ServerRef->new(
{ uri => "http://some.server:port/",
password => 's3cr1t',
timeout => 5
}
);
$s->send_changes( $client, $protocol_ver, $commit, $branch, $module, { extra => stuff } );
$s->relay_message( $client, $message, [ { opts } ] );
DESCRIPTION
App::KGB::Client::ServerRef is used in App::KGB::Client to refer to remote KGB server instances. It encapsulates sending requests to the remote server, maintaining protocol encapsulation and authentication.
CONSTRUCTOR
- new
-
The usual constructor. Accepts a hashref of initialiers.
FIELDS
- uri (mandatory)
-
The URI of the remote KGB server. Something like
http://some.host:port/
. - proxy
-
This is the SOAP proxy used to communicate with the server. If omitted, defaults to the value of uri field, with
?session=KGB
appended. - password (mandatory)
-
Password, to be used for authentication to the remote KGB server.
- timeout
-
Specifies the timeout for the SOAP transaction in seconds. Defaults to 15 seconds.
- verbose
-
Be verbose about communicating with KGB server.
METHODS
- send_changes (message parameters)
-
Transmits the change set and all data about it along with the necessary authentication hash. If an error occurs, an exception is thrown.
Message parameters are passed as arguments in the following order:
- Client instance (App::KGB::Client)
- Protocol version (or 'auto')
- Commit (an instance of App::KGB::Commit)
- Branch
- Module
- Extra
-
This is a hash reference with additional parameters.
- relay_message(client, message [, options hash ])
-
Sends a message to the server for relaying.
- send_changes_v2($info) =item send_changes_v3($info) =item send_changes_v4($info)
-
Methods implementing different protocol versions
- send_changes_soap($message)
-
Helper method sending commit information via SOAP. Dies on any error or SOAP FAULT.
- send_changes_json($message)
-
Helper method sending commit information via JSON-RPC. Dies on errors.