=encoding utf8
=head1 NAME
IOMux::Handler::Service - any mux service
=head1 INHERITANCE
IOMux::Handler::Service
is a IOMux::Handler
IOMux::Handler::Service is extended by
IOMux::Service::TCP
=head1 SYNOPSIS
# only use extensions
=head1 DESCRIPTION
This base-class defines what interface services provide. A service is
(in the general case) a socket which is listening to incoming connections)
Extends L<"DESCRIPTION" in IOMux::Handler|IOMux::Handler/"DESCRIPTION">.
=head1 METHODS
Extends L<"METHODS" in IOMux::Handler|IOMux::Handler/"METHODS">.
=head2 Constructors
Extends L<"Constructors" in IOMux::Handler|IOMux::Handler/"Constructors">.
=over 4
=item IOMux::Handler::Service-E<gt>B<new>(%options)
Inherited, see L<IOMux::Handler/"Constructors">
=item IOMux::Handler::Service-E<gt>B<open>($mode, $what, %options)
Inherited, see L<IOMux::Handler/"Constructors">
=back
=head2 Accessors
Extends L<"Accessors" in IOMux::Handler|IOMux::Handler/"Accessors">.
=over 4
=item $obj-E<gt>B<fh>()
Inherited, see L<IOMux::Handler/"Accessors">
=item $obj-E<gt>B<fileno>()
Inherited, see L<IOMux::Handler/"Accessors">
=item $obj-E<gt>B<mux>()
Inherited, see L<IOMux::Handler/"Accessors">
=item $obj-E<gt>B<name>()
Inherited, see L<IOMux::Handler/"Accessors">
=item $obj-E<gt>B<usesSSL>()
Inherited, see L<IOMux::Handler/"Accessors">
=back
=head2 User interface
Extends L<"User interface" in IOMux::Handler|IOMux::Handler/"User interface">.
=head2 Multiplexer
Extends L<"Multiplexer" in IOMux::Handler|IOMux::Handler/"Multiplexer">.
=head3 Connection
Extends L<"Connection" in IOMux::Handler|IOMux::Handler/"Connection">.
=over 4
=item $obj-E<gt>B<muxInit>( $mux, [$handler] )
Inherited, see L<IOMux::Handler/"Connection">
=item $obj-E<gt>B<muxRemove>()
Inherited, see L<IOMux::Handler/"Connection">
=item $obj-E<gt>B<muxTimeout>()
Inherited, see L<IOMux::Handler/"Connection">
=back
=head3 Reading
Extends L<"Reading" in IOMux::Handler|IOMux::Handler/"Reading">.
=over 4
=item $obj-E<gt>B<muxExceptFlagged>($fileno)
Inherited, see L<IOMux::Handler/"Reading">
=item $obj-E<gt>B<muxReadFlagged>($fileno)
Inherited, see L<IOMux::Handler/"Reading">
=back
=head3 Writing
Extends L<"Writing" in IOMux::Handler|IOMux::Handler/"Writing">.
=over 4
=item $obj-E<gt>B<muxWriteFlagged>($fileno)
Inherited, see L<IOMux::Handler/"Writing">
=back
=head3 Service
Extends L<"Service" in IOMux::Handler|IOMux::Handler/"Service">.
=over 4
=item $obj-E<gt>B<muxConnection>($client)
A new connection has arrived on the file-handle (socket) where we are
listening on. The connection has been accepted and the filehandle
of the new $client has been added to the MUX. You may wish to send an
initial string.
=back
=head2 Helpers
Extends L<"Helpers" in IOMux::Handler|IOMux::Handler/"Helpers">.
=over 4
=item $obj-E<gt>B<extractSocket>(HASH)
=item IOMux::Handler::Service-E<gt>B<extractSocket>(HASH)
Inherited, see L<IOMux::Handler/"Helpers">
=item $obj-E<gt>B<fdset>($state, $read, $write, $error)
Inherited, see L<IOMux::Handler/"Helpers">
=item $obj-E<gt>B<show>()
Inherited, see L<IOMux::Handler/"Helpers">
=back
=head1 SEE ALSO
This module is part of IOMux distribution version 1.00,
built on November 11, 2015. Website: F<http://perl.overmeer.net/>
All modules in this suite:
L</Any::Daemon>,
L</IOMux>, and
L</IOMux::HTTP>.
Please post questions or ideas to F<perl@overmeer.net>
=head1 LICENSE
Copyrights 2011-2015 by [Mark Overmeer]. For other contributors see ChangeLog.
This program is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.
See F<http://www.perl.com/perl/misc/Artistic.html>