GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  ANYEVENT::CONNECTION (3)

.ds Aq ’

NAME

AnyEvent::Connection - Base class for tcp connectful clients

CONTENTS

SYNOPSIS



    package MyTCPClient;
    use base AnyEvent::Connection;

    package main;
    my $client = MyTCPClient->new(
        host => localhost,
        port => 12345,
    );
    $client->reg_cb(
        connected => sub {
            my ($client,$connection,$host,$port) = @_;
            # ...
            $client->after(
                $interval, sub {
                    # Called after interval, if connection still alive
                }
            );
        }
        connfail = sub {
            my ($client,$reason) = @_;
            # ...
        },
        disconnect => sub {
            my ($client,$reason) = @_;
        },
        error => sub {
            my ($client,$error) = @_;
            # Called in error conditions for callbackless methods
        },
    );
    $client->connect;



EVENTS

connected ($connobject, $host, $port) Called when client get connected.
connfail Called, when client fails to connect
disconnect Called whenever client disconnects
error Called in error conditions for callbackless methods (for ex: when calling push_write on non-connected client)

OPTIONS

host Host to connect to
port Port to connect to
timeout [ = 3 ] Connect/read/write timeout in seconds
reconnect [ = 1 ] If true, automatically reconnect after disconnect/connfail after delay $reconnect seconds
rawcon [ = AnyEvent::Connection::Raw ] Class that implements low-level connection

OPERATION METHODS

new Cleates connection object (see OPTIONS)
connect Begin connection
disconnect ($reason) Close current connection. reason is optional
reconnect Close current connection and establish a new one
after($interval, $cb->()) Helper method. AE::timer(after), associated with current connection

Will be destroyed if connection is destroyed, so no timer invocation after connection destruction.

periodic($interval, $cb->()) Helper method. AE::timer(periodic), associated with current connection

Will be destroyed if connection is destroyed, so no timer invocation after connection destruction.

periodic_stop() If called within periodic callback, periodic will be stopped.



    my $count;
    $client->periodic(1,sub {
        $client->periodic_stop if ++$count > 10;
    });
   
    # callback will be called only 10 times;



destroy Close connection, destroy all associated objects and timers, clean self

CONNECT METHODS

When connected, there are some methods, that proxied to raw connection or to AE::Handle
push_write See AE::Handle::push_write
push_read See AE::Handle::push_read
unshift_read See AE::Handle::unshift_read
say Same as push_write + newline
reply Same as push_write + newline
For next methods there is a feature. Callback will be called in any way, either by successful processing or by error or object destruction
recv($bytes, %args, cb => $cb->()) Similar to



    $fh->push_read(chunk => $bytes, $cb->());



command($data, %args, cb => $cb->()); Similar to



    $fh->push_write($data);
    $fh->push_read(line => $cb->());



AUTHOR

Mons Anderson, <mons at cpan.org>

BUGS

Please report any bugs or feature requests to bug-anyevent-connection at rt.cpan.org, or through the web interface at <http://rt.cpan.org/NoAuth/ReportBug.html?Queue=AnyEvent-Connection>. I will be notified, and then you’ll automatically be notified of progress on your bug as I make changes.

SUPPORT

You can find documentation for this module with the perldoc command.



    perldoc AnyEvent::Connection



You can also look for information at:
o RT: CPAN’s request tracker

<http://rt.cpan.org/NoAuth/Bugs.html?Dist=AnyEvent-Connection>

o AnnoCPAN: Annotated CPAN documentation

<http://annocpan.org/dist/AnyEvent-Connection>

o CPAN Ratings

<http://cpanratings.perl.org/d/AnyEvent-Connection>

o Search CPAN

<http://search.cpan.org/dist/AnyEvent-Connection/>

ACKNOWLEDGEMENTS

COPYRIGHT & LICENSE

Copyright 2009 Mons Anderson, all rights reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

Search for    or go to Top of page |  Section 3 |  Main Index


perl v5.20.3 ANYEVENT::CONNECTION (3) 2010-11-16

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.