Rechercher une page de manuel
POE::Component::Connection::Keepalive.3pm
Langue: en
Version: 2009-10-18 (fedora - 01/12/10)
Section: 3 (Bibliothèques de fonctions)
NAME
POE::Component::Connection::Keepalive - a wheel wrapper around a kept-alive socketSYNOPSIS
See the SYNOPSIS for POE::Component::Client::Keepalive for a complete working example. my $connection = $response->{connection}; $heap->{connection} = $connection; $connection->start( InputEvent => "got_input" ); delete $heap->{connection}; # When done with it.
DESCRIPTION
POE::Component::Connection::Keepalive is a helper class for POE::Component::Client::Keepalive. It wraps managed sockets, providing a few extra features.Connection objects free their underlying sockets when they are DESTROYed. This eliminates the need to explicitly free sockets when you are done with them.
Connection objects manage POE::Wheel::ReadWrite objects internally, saving a bit of effort.
- new
- Creates a new POE::Component::Connection::Keepalive instance. It accepts two parameters: A socket handle (socket) and a reference to a POE::Component::Client::Keepalive object to manage the socket when the connection is destroyed.
my $conn = POE::Component::Connection::Keepalive->new( socket => $socket_handle, manager => $poe_component_client_keepalive, );
new() is usually called by a POE::Component::Client::Keepalive object.
- start
- Starts a POE::Wheel::ReadWrite object. All parameters except Handle for start() are passed directly to POE::Wheel::ReadWrite's constructor. Handle is provided by the connection object. start() returns a reference to the new POE::Wheel::ReadWrite object, but it is not necessary to save a copy of that wheel. The connection object keeps a copy of the reference internally, so the wheel will persist as long as the connection does. The POE::Wheel::ReadWrite object will be DESTROYed when the connection object is.
# Asynchronous connection from Client::Keepalive. sub handle_connection { my $connection_info = $_[ARG0]; $_[HEAP]->{connection} = $connection_info->{connection}; $heap->{connection}->start( InputEvent => "got_input", ErrorEvent => "got_error", ); } # Stop the connection (and the wheel) when an error occurs. sub handle_error { delete $_[HEAP]->{connection}; }
- wheel
- Returns a reference to the internal POE::Wheel::ReadWrite object, so that methods may be called upon it.
$heap->{connection}->wheel()->pause_input();
- close
- Closes the connection immediately. Calls shutdown_input() and shutdown_output() on the wheel also.
- SEE ALSO
- POE POE::Component::Client::Keepalive POE::Wheel::ReadWrite
BUGS
None known.LICENSE
This distribution is copyright 2004-2009 by Rocco Caputo. All rights are reserved. This distribution is free software; you may redistribute it and/or modify it under the same terms as Perl itself.AUTHOR
Rocco Caputo <rcaputo@cpan.org>Special thanks to Rob Bloodgood.
POD ERRORS
Hey! The above document had some coding errors, which are explained below:- Around line 187:
- '=item' outside of any '=over'
- Around line 193:
- You forgot a '=back' before '=head1'
Contenus ©2006-2024 Benjamin Poulain
Design ©2006-2024 Maxime Vantorre