Net::DBus::Binding::Server
Section: User Contributed Perl Documentation (3pm)
Updated: 2008-02-21
Index
Return to Main Contents
NAME
Net::DBus::Binding::Server - A server to accept incoming connections
SYNOPSIS
Creating a new server and accepting client connections
use Net::DBus::Binding::Server;
my $server = Net::DBus::Binding::Server->new(address => "unix:path=/path/to/socket");
$server->connection_callback(\&new_connection);
sub new_connection {
my $connection = shift;
.. work with new connection...
}
Managing the server and new connections in an event loop
my $reactor = Net::DBus::Binding::Reactor->new();
$reactor->manage($server);
$reactor->run();
sub new_connection {
my $connection = shift;
$reactor->manage($connection);
}
DESCRIPTION
A server for receiving connection from client programs.
The methods defined on this module have a close
correspondance to the dbus_server_XXX methods in the C API,
so for further details on their behaviour, the C API documentation
may be of use.
METHODS
- my $server = Net::DBus::Binding::Server->new(address => "unix:path=/path/to/socket");
-
Creates a new server binding it to the socket specified by the
"address" parameter.
- $status = $server->is_connected();
-
Returns zero if the server has been disconnected,
otherwise a positive value is returned.
- $server->disconnect()
-
Closes this server to the remote host. This method
is called automatically during garbage collection (ie
in the DESTROY method) if the programmer forgets to
explicitly disconnect.
- $server->set_watch_callbacks(\&add_watch, \&remove_watch, \&toggle_watch);
-
Register a set of callbacks for adding, removing & updating
watches in the application's event loop. Each parameter
should be a code reference, which on each invocation, will be
supplied with two parameters, the server object and the
watch object. If you are using a "Net::DBus::Binding::Reactor" object
as the application event loop, then the 'manage' method on
that object will call this on your behalf.
- $server->set_timeout_callbacks(\&add_timeout, \&remove_timeout, \&toggle_timeout);
-
Register a set of callbacks for adding, removing & updating
timeouts in the application's event loop. Each parameter
should be a code reference, which on each invocation, will be
supplied with two parameters, the server object and the
timeout object. If you are using a "Net::DBus::Binding::Reactor" object
as the application event loop, then the 'manage' method on
that object will call this on your behalf.
- $server->set_connection_callback(\&handler)
-
Registers the handler to use for dealing with
new incoming connections from clients. The code
reference will be invoked each time a new client
connects and supplied with a single parameter
which is the "Net::DBus::Binding::Connection" object representing
the client.
SEE ALSO
Net::DBus::Binding::Connection, Net::DBus::Binding::Bus, Net::DBus::Binding::Message::Signal, Net::DBus::Binding::Message::MethodCall, Net::DBus::Binding::Message::MethodReturn, Net::DBus::Binding::Message::Error
AUTHOR
Daniel Berrange <dan@berrange.com>
COPYRIGHT
Copyright 2004 by Daniel Berrange
Index
- NAME
-
- SYNOPSIS
-
- DESCRIPTION
-
- METHODS
-
- SEE ALSO
-
- AUTHOR
-
- COPYRIGHT
-
This document was created by
man2html,
using the manual pages.
Time: 19:49:23 GMT, April 27, 2011