NAME
POE::Component::IKC::Channel - POE Inter-Kernel Communication I/O session
SYNOPSIS
use POE;
use POE::Component::IKC::Channel;
create_ikc_channel($handle, $name, $on_connect, $subscribe);
DESCRIPTION
This module implements an POE IKC I/O. When a new connection is established, IKC::Server
and IKC::Client
create an IKC::Channel
to handle the I/O.
EXPORTED FUNCTIONS
create_ikc_channel($handle, $kernel_name, $on_connect)
-
This function initiates all the work of connecting to a IKC connection channel.
IKC communication happens in 2 phases : negociation phase and normal phase.
The negociation phase uses
Filter::Line
and is used to exchange various parameters between kernels (example : kernel names, what type of freeze/thaw to use, etc). After negociation,IKC::Channel
switches to aFilter::Reference
and creates aIKC::Responder
, if needed. After this, the channel forwards reads and writes betweenWheel::ReadWrite
and the Responder.IKC::Channel
is also in charge of cleaning up kernel names when the foreign kernel disconnects.$handle
-
The perl handle we should hand to
Wheel::ReadWrite::new
. $kernel_name
-
The name of the local kernel. This is a stop-gap until event naming has been resolved.
$on_connect
-
Code ref that is called when the negociation phase has terminated. Normaly, you would use this to start the sessions that post events to foreign kernels.
$subscribe
-
Array ref of specifiers (either foreign sessions, or foreign states) that you want to subscribe to. $on_connect will only be called if you can subscribe to all those specifiers. If it can't, it will die().
BUGS
AUTHOR
Philip Gwyn, <fil@pied.nu>
SEE ALSO
POE, POE::Component::IKC::Server, POE::Component::IKC::Client, POE::Component::IKC::Responder
2 POD Errors
The following errors were encountered while parsing the POD:
- Around line 512:
'=item' outside of any '=over'
- Around line 554:
You forgot a '=back' before '=head1'