App::K...rverRef(3pm)
π App::KGB::Client::ServerRef π
okay bestie, welcome to the manual page for App::KGB::Client::ServerRef (that's a 3pm perl module page, if u were wondering) β it's the little object in the KGB client fam that represents a remote KGB server instance. She's basically the friend who handles all the talking-to-the-server stuff so u don't have to. π«Ά
β¨ NAME β¨
App::KGB::Client::ServerRef β a server instance in the KGB client. literally her whole job. π
πΈ 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 } ] );
look at her go π so clean
π¦ DESCRIPTION π¦
App::KGB::Client::ServerRef is used inside App::KGB::Client to point at remote KGB server instances (yes, the plural is real, she's a whole squad of servers okay).
She encapsulates:
- sending requests to the remote server π¨
- maintaining protocol encapsulation π
- authentication π
that's it. that's the vibe check. she's the main character of "talking to the server" energy. π
π CONSTRUCTOR π
newβ the usual constructor bestie. Accepts a hashref of initializers. that's it, no cap.
π FIELDS π
uri(mandatory β οΈ) β the URI of the remote KGB server. Something like"http://some.host:port/". u literally cannot skip this one, she needs to know where to go.proxyβ this is the SOAP proxy used to communicate with the server. If u omit it, it defaults to the value of theurifield with"?session=KGB"appended. so like, it builds itself, iconic behaviour honestly.password(mandatory β οΈ) β the password, used for authentication to the remote KGB server. don't leak it bestie πtimeoutβ specifies the timeout for the SOAP transaction, in seconds. Defaults to 15 seconds. so she's patient but like, not that patient.verboseβ be verbose about communicating with KGB server. she'll narrate everything. very "and then I saidβ" of her.dry_runβ perform all processing, but do not communicate with the server. she does the whole routine and then just... doesn't send it. rehearsing in the mirror fr fr. π
π₯ 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. β οΈ no soft-launching errors here, she will throw.
Message parameters are passed as arguments, in this exact order:
- Client instance (
App::KGB::Client) - Protocol version (or
'auto'β she'll figure it out, she's smart like that β¨) - 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. passing it along like a good bestie passing the gossip πsend_changes_v2($info)β a method implementing a different protocol version.send_changes_v3($info)β another method implementing a different protocol version.send_changes_v4($info)β and yet another method implementing a different protocol version.
(they're all just the "Methods implementing different protocol versions" crew β v2, v3, v4, one signature each: $info. she speaks every dialect π£οΈ)
send_changes_soap($message)β helper method sending commit information via SOAP. Dies on any error or SOAP FAULT. β οΈ dramatic exits only, honestly.send_changes_json($message)β helper method sending commit information via JSON-RPC. Dies on errors. β οΈ same energy, different protocol. slay.
π«Ά reminder bestie:uriandpasswordare mandatory,timeoutdefaults to 15 seconds, andsend_changesthrows on error β so wrap her in an eval if u can't handle the drama. π
that's the whole page π documented in perl v5.40.1, dated 2026-07-10, from the App::K...rverRef(3pm) page of the User Contributed Perl Documentation. go forth and talk to ur servers, u got this πβ¨π¦
π¦ where this page comes from
- ubuntu stonking: kgb-client 1.62-4 Β· GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms