Net::DBus::Callback(3)

NAME
Net::DBus::Callback - a callback for receiving reactor events

SYNOPSIS
  use Net::DBus::Callback;

  # Assume we have a 'terminal' object and its got a method
  # to be invoked everytime there is input on its terminal.
  #
  # To create a callback to invoke this method one might use
  my $cb = Net::DBus::Callback->new(object => $terminal,
                                    method => "handle_stdio");

  # Whatever is monitoring the stdio channel, would then
  # invoke the callback, perhaps passing in a parameter with
  # some 'interesting' data, such as number of bytes available
  $cb->invoke($nbytes)

  #... which results in a call to
  #  $terminal->handle_stdio($nbytes)

DESCRIPTION
This module provides a simple container for storing details about a callback to be invoked at a later date. It is used when registering to receive events from the Net::DBus::Reactor class

METHODS

my $cb = Net::DBus::Callback->new(method => $name, [args => \@args])
    Creates a new callback object, for invoking a plain old function. The "method" parameter should be the fully qualified function name to invoke, including the package name. The optional "args" parameter is an array reference of parameters to be pass to the callback, in addition to those passed into the "invoke" method.

my $cb = Net::DBus::Callback->new(object => $object, method => $name, [args => \@args])
    Creates a new callback object, for invoking a method on an object. The "method" parameter should be the name of the method to invoke, while the "object" parameter should be a blessed object on which the method will be invoked. The optional "args" parameter is an array reference of parameters to be pass to the callback, in addition to those passed into the "invoke" method.

$cb->invoke(@args)
    Invokes the callback. The argument list passed to the callback is a combination of the arguments supplied in the callback constructor, followed by the arguments supplied in the "invoke" method.

AUTHOR
Daniel P. Berrange.

COPYRIGHT
Copyright (C) 2004-2006 Daniel P. Berrange

SEE ALSO
Net::DBus::Reactor