{ "type": "class",
  "qname": "mx.rpc.http.AbstractOperation",
  "baseClassname": "mx.rpc.AbstractOperation"
  ,
    "description": "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 <code>send(param1, param2)</code> 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.  <p>The exact way in which the HTTP operation arguments is put into the HTTP body is determined by the serializationFilter used.</p>",
  "tags": [
  {  "tagName": "playerversion",
         "values": ["Flash 9", "AIR 1.1"]},
      {  "tagName": "productversion",
         "values": ["Flex 3"]},
      {  "tagName": "langversion",
         "values": ["3.0"]}  ],
  "members": [
  { "type": "method",
        "qname": "mx.rpc.http.AbstractOperation",
        "namespace": "",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "Creates a new Operation.  HTTPMultiService, WebService, or RemoteObject.    Creates a new Operation.  HTTPMultiService, WebService, or RemoteObject.",
        "tags": [
        {  "tagName": "param",
               "values": ["service The object defining the type of service, such as", "name The name of the service.", "service The object defining the type of service, such as", "name The name of the service."]},
            {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ],
          "return": "",
          "params": [{ "name": "service", "type": "mx.rpc.AbstractService"},
        { "name": "name", "type": "String"}]}
      ,
      { "type": "field",
        "qname": "RESULT_FORMAT_E4X",
        "return": "String",
        "namespace": "mx_internal",
        "bindable": [],
        "details": ["static"],
        "deprecated": {},
          "description": "The result format &quot;e4x&quot; specifies that the value returned is an XML instance, which can be accessed using ECMAScript for XML (E4X) expressions.",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]},
      { "type": "field",
        "qname": "RESULT_FORMAT_FLASHVARS",
        "return": "String",
        "namespace": "mx_internal",
        "bindable": [],
        "details": ["static"],
        "deprecated": {},
          "description": "The result format &quot;flashvars&quot; specifies that the value returned is text containing name=value pairs separated by ampersands, which is parsed into an ActionScript object.",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]},
      { "type": "field",
        "qname": "RESULT_FORMAT_OBJECT",
        "return": "String",
        "namespace": "mx_internal",
        "bindable": [],
        "details": ["static"],
        "deprecated": {},
          "description": "The result format &quot;object&quot; specifies that the value returned is XML but is parsed as a tree of ActionScript objects. This is the default.",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]},
      { "type": "field",
        "qname": "RESULT_FORMAT_ARRAY",
        "return": "String",
        "namespace": "mx_internal",
        "bindable": [],
        "details": ["static"],
        "deprecated": {},
          "description": "The result format &quot;array&quot; is similar to &quot;object&quot; however the value returned is always an Array such that if the result returned from result format &quot;object&quot; is not an Array already the item will be added as the first item to a new Array.",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]},
      { "type": "field",
        "qname": "RESULT_FORMAT_TEXT",
        "return": "String",
        "namespace": "mx_internal",
        "bindable": [],
        "details": ["static"],
        "deprecated": {},
          "description": "The result format &quot;text&quot; specifies that the HTTPService result text should be an unprocessed String.",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]},
      { "type": "field",
        "qname": "CONTENT_TYPE_XML",
        "return": "String",
        "namespace": "mx_internal",
        "bindable": [],
        "details": ["static"],
        "deprecated": {},
          "description": "Indicates that the data being sent by the HTTP service is encoded as application/xml.",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]},
      { "type": "field",
        "qname": "CONTENT_TYPE_FORM",
        "return": "String",
        "namespace": "mx_internal",
        "bindable": [],
        "details": ["static"],
        "deprecated": {},
          "description": "Indicates that the data being sent by the HTTP service is encoded as application/x-www-form-urlencoded.",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]},
      { "type": "accessor",
        "access": "read-write",
        "return": "Array",
        "qname": "argumentNames",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "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.",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]},
      { "type": "accessor",
        "access": "read-write",
        "return": "String",
        "qname": "method",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "HTTP method for sending the request. Permitted values are <code>GET</code>, <code>POST</code>, <code>HEAD</code>, <code>OPTIONS</code>, <code>PUT</code>, <code>TRACE</code> and <code>DELETE</code>. Lowercase letters are converted to uppercase letters. The default value is <code>GET</code>.",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]},
      { "type": "accessor",
        "access": "read-write",
        "return": "String",
        "qname": "concurrency",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "Value that indicates how to handle multiple calls to the same service. The default value is <code>multiple</code>. The following values are permitted: <ul> <li><code>multiple</code> 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.</li> <li><code>single</code> Only a single request at a time is allowed on the operation; multiple requests generate a fault.</li> <li><code>last</code> Making a request cancels any existing request.</li> </ul>",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]},
      { "type": "accessor",
        "access": "read-write",
        "return": "int",
        "qname": "requestTimeout",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "Provides access to the request timeout in seconds for sent messages. If an acknowledgement, response or fault is not received from the remote destination before the timeout is reached the message is faulted on the client. A value less than or equal to zero prevents request timeout.",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["BlazeDS 4", "LCDS 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]},
      { "type": "accessor",
        "access": "read-write",
        "return": "String",
        "qname": "resultFormat",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "Value that indicates how you want to deserialize the result returned by the HTTP call. The value for this is based on the following: <ul> <li>Whether you are returning XML or name/value pairs.</li> <li>How you want to access the results; you can access results as an object, text, or XML.</li> </ul>  <p>The default value is <code>object</code>. The following values are permitted:</p> <ul> <li><code>object</code> The value returned is XML and is parsed as a tree of ActionScript objects. This is the default.</li> <li><code>array</code> 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.</li> <li><code>xml</code> The value returned is XML and is returned as literal XML in an ActionScript XMLnode object.</li> <li><code>flashvars</code> The value returned is text containing name=value pairs separated by ampersands, which is parsed into an ActionScript object.</li> <li><code>text</code> The value returned is text, and is left raw.</li> <li><code>e4x</code> 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.</li> </ul>",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]},
      { "type": "accessor",
        "access": "read-write",
        "return": "mx.rpc.http.SerializationFilter",
        "qname": "serializationFilter",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "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.",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]},
      { "type": "method",
        "qname": "getSerializationFilter",
        "namespace": "protected",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "Returns the serialization filter. Subclasses can override this method to control the retrieval of the HTTP request headers.",
        "tags": [
        {  "tagName": "return",
               "values": ["The serialization filter."]}  ],
          "return": "mx.rpc.http.SerializationFilter",
          "params": []}
      ,
      { "type": "accessor",
        "access": "read-write",
        "return": "Object",
        "qname": "request",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "Object of name-value pairs used as parameters to the URL. If the <code>contentType</code> property is set to <code>application/xml</code>, it should be an XML document.",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]},
      { "type": "accessor",
        "access": "read-write",
        "return": "String",
        "qname": "url",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "Location of the service. If you specify the <code>url</code> and a non-default destination, your destination in the services-config.xml file must allow the specified URL.",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]},
      { "type": "accessor",
        "access": "read-write",
        "return": "Boolean",
        "qname": "useProxy",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "Specifies whether to use the Flex proxy service. The default value is <code>false</code>. If you do not specify <code>true</code> 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 <code>useProxy</code> property is set to <code>false</code>.",
        "tags": [
        {  "tagName": "default",
               "values": ["false"]},
            {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]},
      { "type": "accessor",
        "access": "read-write",
        "return": "Function",
        "qname": "xmlDecode",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "ActionScript function used to decode a service result from XML. When the <code>resultFormat</code> is an object and the <code>xmlDecode</code> 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. <p>The function referenced by the <code>xmlDecode</code> 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 <code>null</code> or <code>undefined</code> causes a fault.</p>    \\n \\n \\n \\n \\n \\n     \\n \\n \\n \\n \\n \\n \\n \\n \\n",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]},
      { "type": "accessor",
        "access": "read-write",
        "return": "Function",
        "qname": "xmlEncode",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "ActionScript function used to encode a service request as XML. When the <code>contentType</code> of a request is <code>application/xml</code> and the request object passed in is an Object, Flex attempts to use the function specified in the <code>xmlEncode</code> property to turn it into a flash.xml.XMLNode object If the <code>xmlEncode</code> property is not set, Flex uses the default XMLEncoder to turn the object graph into a flash.xml.XMLNode object.  <p>The <code>xmlEncode</code> 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 <code>&lt;mx:XML&gt;</code> tag. Returning the wrong type of object causes a fault. The following example shows an &lt;mx:HTTPService&gt; tag that specifies an xmlEncode function:</p>  \\n \\n \\n \\n \\n \\n     \\n \\n \\n \\n \\n \\n",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]},
      { "type": "accessor",
        "access": "read-write",
        "return": "Object",
        "qname": "headers",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "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.",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]},
      { "type": "accessor",
        "access": "read-write",
        "return": "String",
        "qname": "contentType",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "Type of content for service requests. The default is <code>application/x-www-form-urlencoded</code> which sends requests like a normal HTTP POST with name-value pairs. <code>application/xml</code> send requests as XML.",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]},
      { "type": "accessor",
        "access": "read-write",
        "return": "Boolean",
        "qname": "showBusyCursor",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "If <code>true</code>, a busy cursor is displayed while a service is executing. The default value is <code>false</code>.",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]},
      { "type": "accessor",
        "access": "read-write",
        "return": "String",
        "qname": "rootURL",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "The URL that the HTTPService object should use when computing relative URLs. This property is only used when going through the proxy. When the <code>useProxy</code> property is set to <code>false</code>, the relative URL is computed automatically based on the location of the SWF running this application. If not set explicitly <code>rootURL</code> is automatically set to the URL of mx.messaging.config.LoaderConfig.url.",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ]},
      { "type": "method",
        "qname": "sendBody",
        "namespace": "public",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "return": "mx.rpc.AsyncToken",
          "params": [{ "name": "parameters", "type": "Object"}]}
      ,
      { "type": "method",
        "qname": "getHeaders",
        "namespace": "protected",
        "bindable": [],
        "details": [],
        "deprecated": {},
          "description": "Returns the HTTP request headers. Subclasses can override this method to control the retrieval of the HTTP request headers.",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Flex 3"]},
            {  "tagName": "return",
               "values": ["The HTTP request headers."]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ],
          "return": "Object",
          "params": []}
      ,
      { "type": "method",
        "qname": "invoke",
        "namespace": "mx_internal",
        "bindable": [],
        "details": ["override"],
        "deprecated": {},
          "return": "mx.rpc.AsyncToken",
          "params": [{ "name": "message", "type": "mx.messaging.messages.IMessage"},
        { "name": "token", "type": "mx.rpc.AsyncToken"}]}
      ,
      { "type": "method",
        "qname": "preHandle",
        "namespace": "mx_internal",
        "bindable": [],
        "details": ["override"],
        "deprecated": {},
          "return": "mx.rpc.AsyncToken",
          "params": [{ "name": "event", "type": "mx.messaging.events.MessageEvent"}]}
      ,
      { "type": "field",
        "qname": "_log",
        "return": "mx.logging.ILogger",
        "namespace": "mx_internal",
        "bindable": [],
        "details": [],
        "deprecated": {}},
      { "type": "field",
        "qname": "resourceManager",
        "return": "mx.resources.IResourceManager",
        "namespace": "mx_internal",
        "bindable": [],
        "details": [],
        "deprecated": {}}]
  }
