This is a callback which will be put off until later.
Why do we want this? Well, in cases where a function in a threaded
program would block until it gets a result, for Twisted it should
not block. Instead, it should return a Deferred.
This can be implemented for protocols that run over the network by
writing an asynchronous protocol for twisted.internet. For methods
that come from outside packages that are not under our control, we use
threads (see for example twisted.enterprise.adbapi).
Methods
|
|
|
|
__init__
|
__init__ ( self )
|
|
_runCallbacks
|
_runCallbacks (
self,
result,
isError,
)
|
|
addCallback
|
addCallback (
self,
callback,
*args,
*kw,
)
|
|
addCallbacks
|
addCallbacks (
self,
callback,
errback=None,
callbackArgs=None,
callbackKeywords=None,
errbackArgs=None,
errbackKeywords=None,
asDefaults=0,
)
Add a pair of callbacks (success and error) to this Deferred.
These will be executed when the master callback is run.
Exceptions
|
|
AlreadyArmedError( "You cannot add callbacks after a deferred" "has already been armed." )
|
|
|
addErrback
|
addErrback (
self,
errback,
*args,
*kw,
)
|
|
arm
|
arm ( self )
State that this function is ready to be called.
This is to prevent callbacks from being executed sometimes
synchronously and sometimes asynchronously. The system
expecting a Deferred will explicitly arm the delayed after
it has been returned; at that point, it may fire later.
|
|
armAndCallback
|
armAndCallback ( self, result )
Utility method to arm me and immediately issue a callback.
|
|
armAndChain
|
armAndChain ( self, deferred )
Utility method to add another deferred to me as a set of callbacks.
Arguments:
deferred: the Deferred to be armed and fired when my callback arrives.
|
|
armAndErrback
|
armAndErrback ( self, error )
Utility method to arm me and immediately issue an error callback.
|
|
callback
|
callback ( self, result )
Run all success callbacks that have been added to this Deferred.
Each callback will have its result passed as the first
argument to the next; this way, the callbacks act as a
processing chain .
If this deferred has not been armed yet, nothing will happen until it
is armed.
|
|
chainDeferred
|
chainDeferred ( self, d )
|
|
errback
|
errback ( self, error )
Run all error callbacks that have been added to this Deferred.
Each callback will have its result passed as the first
argument to the next; this way, the callbacks act as a
processing chain .
If this deferred has not been armed yet, nothing will happen until it
is armed.
|
|