Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
An Operation used specifically by HTTPService or HTTPMultiService. An Operation is an
individual operation on a service usually corresponding to a single operation on the server
side. An Operation can be called either by invoking the
function of the same name on the service or by accessing the Operation as a property on the service and
calling the
send(param1, param2)
method. HTTP services also support a sendBody
method which allows you to directly specify the body of the HTTP response. If you use the
send(param1, param2) method, the body is typically formed by combining the argumentNames
property of the operation with the parameters sent. An Object is created which uses the
argumentNames[i] as the key and the corresponding parameter as the value.
The exact way in which the HTTP operation arguments is put into the HTTP body is determined
by the serializationFilter used.
public var argumentNames:Array
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
An ordered list of the names of the arguments to pass to a method invocation. Since the arguments object is
a hashmap with no guaranteed ordering, this array helps put everything together correctly.
It will be set automatically by the MXML compiler, if necessary, when the Operation is used in tag form.
concurrency:String
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Value that indicates how to handle multiple calls to the same service. The default
value is multiple
. The following values are permitted:
multiple
Existing requests are not cancelled, and the developer is
responsible for ensuring the consistency of returned data by carefully
managing the event stream. This is the default value.single
Only a single request at a time is allowed on the operation;
multiple requests generate a fault.last
Making a request cancels any existing request.
Implementation public function get concurrency():String
public function set concurrency(value:String):void
contentType:String
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Type of content for service requests.
The default is application/x-www-form-urlencoded
which sends requests
like a normal HTTP POST with name-value pairs. application/xml
send
requests as XML.
Implementation public function get contentType():String
public function set contentType(value:String):void
public var headers:Object
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Custom HTTP headers to be sent to the third party endpoint. If multiple headers need to
be sent with the same name the value should be specified as an Array.
method:String
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
HTTP method for sending the request. Permitted values are GET
, POST
, HEAD
,
OPTIONS
, PUT
, TRACE
and DELETE
.
Lowercase letters are converted to uppercase letters. The default value is GET
.
Implementation public function get method():String
public function set method(value:String):void
public var request:Object
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Object of name-value pairs used as parameters to the URL. If
the contentType
property is set to application/xml
, it should be an XML document.
resultFormat:String
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Value that indicates how you want to deserialize the result
returned by the HTTP call. The value for this is based on the following:
- Whether you are returning XML or name/value pairs.
- How you want to access the results; you can access results as an object,
text, or XML.
The default value is object
. The following values are permitted:
object
The value returned is XML and is parsed as a tree of ActionScript
objects. This is the default.array
The value returned is XML and is parsed as a tree of ActionScript
objects however if the top level object is not an Array, a new Array is created and the result
set as the first item. If makeObjectsBindable is true then the Array
will be wrapped in an ArrayCollection.xml
The value returned is XML and is returned as literal XML in an
ActionScript XMLnode object.flashvars
The value returned is text containing
name=value pairs separated by ampersands, which
is parsed into an ActionScript object.text
The value returned is text, and is left raw.e4x
The value returned is XML and is returned as literal XML
in an ActionScript XML object, which can be accessed using ECMAScript for
XML (E4X) expressions.
Implementation public function get resultFormat():String
public function set resultFormat(value:String):void
rootURL:String
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
The URL that the HTTPService object should use when computing relative URLs.
This property is only used when going through the proxy.
When the useProxy
property is set to false
, the relative URL is computed automatically
based on the location of the SWF running this application.
If not set explicitly rootURL
is automatically set to the URL of
mx.messaging.config.LoaderConfig.url.
Implementation public function get rootURL():String
public function set rootURL(value:String):void
public var serializationFilter:SerializationFilter
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
A SerializationFilter can control how the arguments are formatted to form the content
of the HTTP request. It also controls how the results are converted into ActionScript
objects. It can be set either explicitly using this property or indirectly using the
resultFormat property.
showBusyCursor:Boolean
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
If true
, a busy cursor is displayed while a service is executing. The default
value is false
.
Implementation public function get showBusyCursor():Boolean
public function set showBusyCursor(value:Boolean):void
url:String
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Location of the service. If you specify the url
and a non-default destination,
your destination in the services-config.xml file must allow the specified URL.
Implementation public function get url():String
public function set url(value:String):void
useProxy:Boolean
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Specifies whether to use the Flex proxy service. The default value is false
. If you
do not specify true
to proxy requests though the Flex server, you must ensure that the player
can reach the target URL. You also cannot use destinations defined in the services-config.xml file if the
useProxy
property is set to false
.
The default value is false.
Implementation public function get useProxy():Boolean
public function set useProxy(value:Boolean):void
public var xmlDecode:Function
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
ActionScript function used to decode a service result from XML.
When the resultFormat
is an object and the xmlDecode
property is set,
Flex uses the XML that the HTTPService returns to create an
Object. If it is not defined the default XMLDecoder is used
to do the work.
The function referenced by the xmlDecode
property must
take a flash.xml.XMLNode object as a parameter and should return
an Object. It can return any type of object, but it must return
something. Returning null
or undefined
causes a fault.
The following example shows an <mx:HTTPService> tag that specifies an xmlDecode function:
<mx:HTTPService id="hs" xmlDecode="xmlDecoder" url="myURL" resultFormat="object" contentType="application/xml">
<mx:request><source/>
<obj>{RequestObject}</obj>
</mx:request>
</mx:HTTPService>
The following example shows an xmlDecoder function:
function xmlDecoder (myXML)
{
// Simplified decoding logic.
var myObj = {};
myObj.name = myXML.firstChild.nodeValue;
myObj.honorific = myXML.firstChild.attributes.honorific;
return myObj;
}
public var xmlEncode:Function
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
ActionScript function used to encode a service request as XML.
When the contentType
of a request is application/xml
and the
request object passed in is an Object, Flex attempts to use
the function specified in the xmlEncode
property to turn it
into a flash.xml.XMLNode object If the xmlEncode
property is not set,
Flex uses the default
XMLEncoder to turn the object graph into a flash.xml.XMLNode object.
The xmlEncode
property takes an Object and should return
a flash.xml.XMLNode object. In this case, the XMLNode object can be a flash.xml.XML object,
which is a subclass of XMLNode, or the first child of the
flash.xml.XML object, which is what you get from an <mx:XML>
tag.
Returning the wrong type of object causes a fault.
The following example shows an <mx:HTTPService> tag that specifies an xmlEncode function:
<mx:HTTPService id="hs" xmlEncode="xmlEncoder" url="myURL" resultFormat="object" contentType="application/xml">
<mx:request><source/>
<obj>{RequestObject}</obj>
</mx:request>
</mx:HTTPService>
The following example shows an xmlEncoder function:
function xmlEncoder (myObj)
{
return new XML("");
}
public function AbstractOperation(service:AbstractService = null, name:String = null)
Language Version: | ActionScript 3.0 |
Product Version: | Flex 3 Creates a new Operation. |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Creates a new Operation.
Parameters | service:AbstractService (default = null ) — The object defining the type of service, such as
HTTPMultiService, WebService, or RemoteObject.
|
|
| name:String (default = null ) — The name of the service.
|
protected function getHeaders():Object
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Returns the HTTP request headers.
Subclasses can override this method to control
the retrieval of the HTTP request headers.
Returns | Object — The HTTP request headers.
|
protected function getSerializationFilter():SerializationFilter
Returns the serialization filter.
Subclasses can override this method to control
the retrieval of the HTTP request headers.
Returns public function sendBody(parameters:Object):mx.rpc:AsyncToken
Parameters
Returns