Query whether a background CORBA operation has completed or not.

Usage

getRequestStatus(requestName, requestNumber=0, block=F)

Arguments

requestName the name of the group in which the background/deferred request has been stored. This is the same as the value for the .deferred argument used in the .Corba call generating the request.
requestNumber The index of the request in the list of requests stored under the name requestName. This uses 1-based counting.
block logical indicating whether we should wait until the call has returned (or completed with an error) or just query the current status and immediately return

Description

This allows us to determine if a remote background call has terminated. We can optionally wait for it to complete or return immediately and continue on with local computations, periodically returning.

Details

The requests are stored in an internal C++ table and will not persist across sessions.

Value

a vector of the same length as the argument requestNumber in which each element indicates whether that request has completed (TRUE) or not (FALSE).

Note

In the future, it would be good to add an error status.

Author(s)

Duncan Temple Lang

References

http://www.omegahat.org/CORBA

See Also

getRequestValue, getRequestServer, deferredRequestList, removeRequest, .Corba

Examples


 .Corba("server", "test", .deferred="name")
 while(getRequestStatus("name",1) == 0)
    cat("Still waiting\n")


[Package Contents]