This component helps you manage the results for asynchronous calls made from
RPC based services, typically from MXML components. While each individual service
and operation dispatches result and fault events, it is common to need to use the
same operation in different parts of your application. Using one event listener
or lastResult value across the entire application can be awkward. Rather than creating
two service components which refer to the same service, you can use a simple lightweight
CallResponder to manage the event listeners and lastResult value for a specific invocation
of a service.
You set the token property of this component to the AsyncToken returned by the
service. You can then add event listeners on this component instead of having to
add them to each AsyncToken returned. This component also maintains the
lastResult property which is a copy of the value returned by the last successful
result event dispatched by a token monitored by this service. Though you can
bind to either the callResponder.token.result or
callResponder.lastResult, the latter will be preserved while a second
call to the same service is in progress while the former will be reset as soon
as a new service invocation is started.
Dispatched when an Operation invocation successfully returns.
CallResponder
Property Detail
lastResult
property
lastResult:*
Language Version :
ActionScript 3.0
Product Version :
Flex 3
Runtime Versions :
Flash Player 9, AIR 1.1
This property stores the result property of the token each time it
delivers a successful result. You can bind to or access this property
instead of the token.result property to keep your code from seeing that
value cleared out on the second and subsequent call to a particular service
method. Additionally, if a fault occurs this value will still be set to
the last successful result returned by a token monitored by this CallResponder.
This property can be used as the source for data binding.
Implementation public function get lastResult():* public function set lastResult(value:any):void
Each CallResponder dispatches result and fault events received
from a single token. This property value specifies that token. You typically
set this property to the AsyncToken object returned by the service.
This property can be used as the source for data binding.
Implementation public function get token():AsyncToken public function set token(value:AsyncToken):void
Method Detail
fault
()
method
public function fault(data:Object):void
Language Version :
ActionScript 3.0
Product Version :
Flex 3
Runtime Versions :
Flash Player 9, AIR 1.1
This method is called by the AsyncToken when it wants to deliver a
FaultEvent to the CallResponder. You do not call
this method directly.
Parameters
data:Object — The FaultEvent delivered by the AsyncToken
result
()
method
public function result(data:Object):void
Language Version :
ActionScript 3.0
Product Version :
Flex 3
Runtime Versions :
Flash Player 9, AIR 1.1
This method is called by the AsyncToken when it wants to deliver a
ResultEvent to the CallResponder. You do not call
this method directly.
Parameters
data:Object — The ResultEvent delivered by the AsyncToken
The properties of the event object have the following values:
Property
Value
bubbles
false
cancelable
true, calling preventDefault()
from the associated token's responder.fault method will prevent
the service or operation from dispatching this event
currentTarget
The Object that defines the
event listener that handles the event. For example, if you use
myButton.addEventListener() to register an event listener,
myButton is the value of the currentTarget.
fault
The Fault object that contains the
details of what caused this event.
message
The Message associated with this event.
target
The Object that dispatched the event;
it is not always the Object listening for the event.
Use the currentTarget property to always access the
Object listening for the event.
token
The token that represents the call
to the method. Used in the asynchronous completion token pattern.
Dispatched when an Operation invocation successfully returns.
The RESULT event type.
The properties of the event object have the following values:
Property
Value
bubbles
false
cancelable
true, preventDefault()
from the associated token's responder.result method will prevent
the service or operation from dispatching this event
currentTarget
The Object that defines the
event listener that handles the event. For example, if you use
myButton.addEventListener() to register an event listener,
myButton is the value of the currentTarget.
message
The Message associated with this event.
target
The Object that dispatched the event;
it is not always the Object listening for the event.
Use the currentTarget property to always access the
Object listening for the event.
result
Result that the RPC call returns.
token
The token that represents the indiviudal call
to the method. Used in the asynchronous completion token pattern.