IO::Async::Protocol::LineStream
Section: User Contributed Perl Documentation (3pm)
Updated: 2022-08-19
Index
Return to Main Contents
NAME
"IO::Async::Protocol::LineStream" - stream-based protocols using lines of
text
SYNOPSIS
Most likely this class will be subclassed to implement a particular network
protocol.
package Net::Async::HelloWorld;
use strict;
use warnings;
use base qw( IO::Async::Protocol::LineStream );
sub on_read_line
{
my $self = shift;
my ( $line ) = @_;
if( $line =~ m/^HELLO (.*)/ ) {
my $name = $1;
$self->invoke_event( on_hello => $name );
}
}
sub send_hello
{
my $self = shift;
my ( $name ) = @_;
$self->write_line( "HELLO $name" );
}
This small example elides such details as error handling, which a real
protocol implementation would be likely to contain.
DESCRIPTION
EVENTS
The following events are invoked, either using subclass methods or CODE
references in parameters:
on_read_line $line
Invoked when a new complete line of input is received.
PARAMETERS
The following named parameters may be passed to "new" or "configure":
on_read_line => CODE
CODE reference for the "on_read_line" event.
METHODS
write_line
$lineprotocol->write_line( $text )
Writes a line of text to the transport stream. The text will have the
end-of-line marker appended to it; $text should not end with it.
AUTHOR
Paul Evans <leonerd@leonerd.org.uk>
Index
- NAME
-
- SYNOPSIS
-
- DESCRIPTION
-
- EVENTS
-
- on_read_line $line
-
- PARAMETERS
-
- on_read_line => CODE
-
- METHODS
-
- write_line
-
- AUTHOR
-
This document was created by
man2html,
using the manual pages.
Time: 03:17:27 GMT, April 26, 2024