NAME

Net::DBus::Binding::PendingCall - A handler for pending method replies

SYNOPSIS

my $call = Net::DBus::Binding::PendingCall->new(method_call => $call,
                                                pending_call => $reply);

# Wait for completion
$call->block;

# And get the reply message
my $msg = $call->get_reply;

DESCRIPTION

This object is used when it is necessary to make asynchronous method calls. It provides the means to be notified when the reply is finally received.

METHODS

my $call = Net::DBus::Binding::PendingCall->new(method_call => $method_call, pending_call => $pending_call);

Creates a new pending call object, with the method_call parameter being a reference to the Net::DBus::Binding::Message::MethodCall object whose reply is being waiting for. The pending_call parameter is a reference to the raw C pending call object.

$call->cancel

Cancel the pending call, causing any reply that is later received to be discarded.

my $boolean = $call->get_completed

Returns a true value if the pending call has received its reply, or a timeout has occurred.

$call->block

Block the caller until the reply is received or a timeout occurrs.

my $msg = $call->get_reply;

Retrieves the Net::DBus::Binding::Message object associated with the complete call.

$call->set_notify($coderef);

Sets a notification function to be invoked when the pending call completes. The callback will be passed a single argument which is this pending call object.

AUTHOR

Daniel P. Berrange

COPYRIGHT

Copyright (C) 2006-2011 Daniel P. Berrange

SEE ALSO

Net::DBus::Binding::Connection, Net::DBus::Binding::Message, Net::DBus::ASyncReply