パッケージmx.rpc.http
クラスpublic class AbstractOperation
継承AbstractOperation Inheritance AbstractOperation Inheritance AbstractInvoker Inheritance EventDispatcher Inheritance Object
サブクラス Operation

HTTPService または HTTPMultiService によって特に使用される Operation です。Operation は、通常、サーバー側の単一の操作に対応するサービスの個別の操作です。Operation は、サービスに対して同じ名前の関数を呼び出すか、サービスのプロパティとして Operation にアクセスして send(param1, param2) メソッドを呼び出すことによって、呼び出すことができます。HTTP サービスは sendBody メソッドもサポートします。これによって、ユーザーは HTTP 応答の本文を直接に指定できます。send(param1, param2) メソッドを使用する場合、本文を形成するには、通常、操作の argumentNames プロパティを送信済みパラメータと組み合わせます。argumentNames[i] をキーとして使用し、対応するパラメータを値として使用するオブジェクトが作成されます。

HTTP 操作引数を HTTP 本文に設定する方法は、使用する serializationFilter で決まります。



パブリックプロパティ
 プロパティ定義元
  argumentNames : Array
メソッドの呼び出しに渡されるパラメータの名前が順に列挙されたリストです。
AbstractOperation
 Inheritedarguments : Object
Operation が呼び出されたときに Operation に渡されるパラメータです。
AbstractOperation
  concurrency : String
同一サービスに対する複数の呼び出しの処理方法を示す値です。
AbstractOperation
 Inheritedconstructor : Object
指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクタ関数への参照です。
Object
  contentType : String = "application/x-www-form-urlencoded"
サービス要求のコンテンツタイプです。
AbstractOperation
  headers : Object
サードパーティのエンドポイントに送信されるカスタム HTTP ヘッダです。
AbstractOperation
 InheritedlastResult : Object
[読み取り専用] 最後の呼び出しの結果です。
AbstractInvoker
 InheritedmakeObjectsBindable : Boolean
この値が true の場合、返された匿名オブジェクトは強制的にバインド可能オブジェクトにされます。
AbstractInvoker
  method : String
要求を送信するための HTTP メソッドです。
AbstractOperation
 Inheritedname : String
この Operation の名前です。
AbstractOperation
 InheritedoperationManager : Function
このプロパティを設定するのは、通常、サービスが外部的に呼び出される方法を修正せずに、サービス起動の動作を修正する必要のあるフレームワークコードです。
AbstractInvoker
 Inheritedproperties : Object
これは主に操作用に追加のユーザー指定プロパティを登録するフレームワーク開発者向けのフックです。
AbstractOperation
 Inheritedprototype : Object
[静的] クラスまたは関数オブジェクトのプロトタイプオブジェクトへの参照です。
Object
  request : Object
URL に渡すパラメータとして使用される、名前と値のペアのオブジェクトです。
AbstractOperation
 InheritedresultElementType : Class
resultType と同じように、指定の操作が使用する ActionScript クラスを定義するのに使用しますが、このプロパティは、複数値結果(例えば)を返す操作にのみ適用されます。
AbstractInvoker
  resultFormat : String
HTTP 呼び出しから返された結果を非直列化する方法を示す値です。
AbstractOperation
 InheritedresultType : Class
操作のオプション戻り型を指定します。
AbstractInvoker
  rootURL : String
相対 URL を計算するときに、HTTPService オブジェクトが使用する必要のある URL です。
AbstractOperation
  serializationFilter : SerializationFilter
SerializationFilter は、HTTP 要求のコンテンツを作成するために、引数が形式化される方法を制御できます。
AbstractOperation
 Inheritedservice : AbstractService
[読み取り専用] Operation が呼び出されているサービスにアクセスしやすくします。
AbstractOperation
  showBusyCursor : Boolean
true の場合、サービスの実行中にビジーカーソルが表示されます。
AbstractOperation
  url : String
サービスの場所を表します。
AbstractOperation
  useProxy : Boolean
Flex のプロキシサービスを利用するかどうかを指定します。
AbstractOperation
  xmlDecode : Function
サービス結果を XML からデコードする際に使用される ActionScript 関数です。
AbstractOperation
  xmlEncode : Function
サービス要求を XML にエンコードするために使用される ActionScript 関数です。
AbstractOperation
パブリックメソッド
 メソッド定義元
  
AbstractOperation(service:AbstractService = null, name:String = null)
新しい Operation を作成します。
AbstractOperation
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
イベントリスナーオブジェクトを EventDispatcher オブジェクトに登録し、リスナーがイベントの通知を受け取るようにします。
EventDispatcher
 Inherited
最後のサービス呼び出しまたは指定された ID を持つ呼び出しをキャンセルします。
AbstractInvoker
 Inherited
clearResult(fireBindingEvent:Boolean = true):void
インボーカの result プロパティを null に設定します。
AbstractInvoker
 Inherited
イベントをイベントフローに送出します。
EventDispatcher
 Inherited
EventDispatcher オブジェクトに、特定のイベントタイプに対して登録されたリスナーがあるかどうかを確認します。
EventDispatcher
 Inherited
オブジェクトに指定されたプロパティが定義されているかどうかを示します。
Object
 Inherited
Object クラスのインスタンスが、パラメータとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。
Object
 Inherited
指定されたプロパティが存在し、列挙できるかどうかを示します。
Object
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
EventDispatcher オブジェクトからリスナーを削除します。
EventDispatcher
 Inherited
メソッドを実行します。
AbstractOperation
  
AbstractOperation
 Inherited
ループ処理に対するダイナミックプロパティの可用性を設定します。
Object
 Inherited
このフックは lastResult プロパティを更新するために公開されます。
AbstractInvoker
 Inherited
指定されたオブジェクトのストリング表現を返します。
Object
 Inherited
指定されたオブジェクトのプリミティブな値を返します。
Object
 Inherited
指定されたイベントタイプについて、この EventDispatcher オブジェクトまたはその祖先にイベントリスナーが登録されているかどうかを確認します。
EventDispatcher
プロテクトメソッド
 メソッド定義元
  
HTTP 要求ヘッダーの取得を上書きするサブクラスのフックです。
AbstractOperation
  
指定操作に使用する直列化フィルタを上書きするサブクラスのフック
AbstractOperation
イベント
 イベント 概要 定義元
 Inherited[ブロードキャスト イベント] Flash Player または AIR アプリケーションがオペレーティングシステムのフォーカスを取得して、アクティブになったときに送出されます。EventDispatcher
 Inherited[ブロードキャスト イベント] Flash Player または AIR アプリケーションがオペレーティングシステムのフォーカスを失って、非アクティブになったときに送出されます。EventDispatcher
 InheritedOperation 呼び出しが失敗したときに送出されます。AbstractOperation
 InheritedOperation 呼び出しが正常に結果を返したときに送出されます。AbstractOperation
プロパティの詳細
argumentNamesプロパティ
public var argumentNames:Array

メソッドの呼び出しに渡されるパラメータの名前が順に列挙されたリストです。 arguments オブジェクトは順序が保証されていないハッシュマップであるため、この配列はすべてのものを正しく配置するのに役立ちます。 これは、Operation がタグ形式で使用される場合に、必要に応じて MXML コンパイラで自動的に設定されます。

concurrencyプロパティ 
concurrency:String

同一サービスに対する複数の呼び出しの処理方法を示す値です。 デフォルト値は multiple です。使用できる値は次のとおりです。



実装
    public function get concurrency():String
    public function set concurrency(value:String):void
contentTypeプロパティ 
public var contentType:String = "application/x-www-form-urlencoded"

サービス要求のコンテンツタイプです。 デフォルトは application/x-www-form-urlencoded で、名前と値のペアを持つ通常の HTTP POST のような要求を送信します。application/xml は要求を XML として送信します。

headersプロパティ 
public var headers:Object

サードパーティのエンドポイントに送信されるカスタム HTTP ヘッダです。 複数のヘッダを同じ名前で送信する必要がある場合は、値を配列として指定します。

methodプロパティ 
method:String

要求を送信するための HTTP メソッドです。 有効な値は GETPOSTHEADOPTIONSPUTTRACE および DELETE です。小文字は大文字に変換されます。 デフォルト値は GET です。



実装
    public function get method():String
    public function set method(value:String):void
requestプロパティ 
public var request:Object

URL に渡すパラメータとして使用される、名前と値のペアのオブジェクトです。 contentType プロパティが application/xml に設定されている場合は、XML ドキュメントにする必要があります。

resultFormatプロパティ 
resultFormat:String

HTTP 呼び出しから返された結果を非直列化する方法を示す値です。 この値は次の項目に基づいて決定します。

デフォルト値は object です。使用できる値は次のとおりです。



実装
    public function get resultFormat():String
    public function set resultFormat(value:String):void
rootURLプロパティ 
rootURL:String

相対 URL を計算するときに、HTTPService オブジェクトが使用する必要のある URL です。 このプロパティは、プロキシを介するときにだけ使用されます。 useProxy プロパティが false に設定されている場合、相対 URL はこのアプリケーションを実行する SWF の場所に基づいて自動的に計算されます。 明示的に設定されていない場合、rootURL は自動的に mx.messaging.config.LoaderConfig.url の URL に設定されます。



実装
    public function get rootURL():String
    public function set rootURL(value:String):void
serializationFilterプロパティ 
public var serializationFilter:SerializationFilter

SerializationFilter は、HTTP 要求のコンテンツを作成するために、引数が形式化される方法を制御できます。また、結果が ActionScript オブジェクトに変換される方法も制御します。このプロパティを使用して明示的に設定することもできますし、resultFormat プロパティを使用して間接的に設定することもできます。

showBusyCursorプロパティ 
showBusyCursor:Boolean

true の場合、サービスの実行中にビジーカーソルが表示されます。 デフォルト値は false です。



実装
    public function get showBusyCursor():Boolean
    public function set showBusyCursor(value:Boolean):void
urlプロパティ 
url:String

サービスの場所を表します。 url とデフォルトでない宛先を指定した場合、services-config.xml ファイル内の宛先で、指定された URL が使用可能でなければなりません。



実装
    public function get url():String
    public function set url(value:String):void
useProxyプロパティ 
useProxy:Boolean

Flex のプロキシサービスを利用するかどうかを指定します。 デフォルト値は false です。true を指定しない場合(Flex サーバーを介して要求をプロキシしない場合)は、プレーヤーがターゲット URL に確実に到達できるようにする必要があります。 また、useProxy プロパティが false に設定されている場合、services-config.xml ファイルで定義された宛先を使用することはできません。

デフォルト値 : false.



実装
    public function get useProxy():Boolean
    public function set useProxy(value:Boolean):void
xmlDecodeプロパティ 
public var xmlDecode:Function

サービス結果を XML からデコードする際に使用される ActionScript 関数です。 resultFormat がオブジェクトで、xmlDecode プロパティが設定されている場合、Flex は HTTPService が返す XML を使用してオブジェクトを作成します。 それが定義されていない場合は、デフォルトの XMLDecoder を使用してこの処理が実行されます。

xmlDecode プロパティで参照される関数は、flash.xml.XMLNode オブジェクトをパラメータとして使用してオブジェクトを返す必要があります。 返されるオブジェクトはどのようなタイプでも構いませんが、必ずいずれかのオブジェクトが返される必要があります。 null または undefined が返されると失敗が発生します。

次に、xmlDecode 関数を指定した <mx:HTTPService> タグの例を示します。
   <mx:HTTPService id="hs" xmlDecode="xmlDecoder" url="myURL" resultFormat="object" contentType="application/xml">
        <mx:request><source/>
            <obj>{RequestObject}</obj>
        </mx:request>
   </mx:HTTPService>
次に、xmlDecoder 関数の例を示します。
function xmlDecoder (myXML)
{
 // Simplified decoding logic.
 var myObj = {};
 myObj.name = myXML.firstChild.nodeValue;
 myObj.honorific = myXML.firstChild.attributes.honorific;
 return myObj;
}

xmlEncodeプロパティ 
public var xmlEncode:Function

サービス要求を XML にエンコードするために使用される ActionScript 関数です。 要求の contentTypeapplication/xml で、渡された要求オブジェクトが Object の場合、Flex は xmlEncode プロパティで指定された関数を使用して flash.xml.XMLNode オブジェクトに変換しようとします。xmlEncode プロパティが設定されていない場合、Flex はデフォルトの XMLEncoder を使用して、オブジェクトグラフを flash.xml.XMLNode オブジェクトに変換します。

xmlEncode プロパティは Object を使用して、flash.xml.XMLNode オブジェクトを返す必要があります。 この場合、XMLNode オブジェクトは XMLNode のサブクラスである flash.xml.XML オブジェクトでも、<mx:XML> タグで取得できる flash.xml.XML オブジェクトの最初の子でも構いません。誤ったタイプのオブジェクトが返されると、処理が失敗します。 次に、xmlEncode 関数を指定した <mx:HTTPService> タグの例を示します。

  <mx:HTTPService id="hs" xmlEncode="xmlEncoder" url="myURL" resultFormat="object" contentType="application/xml">
        <mx:request><source/>
            <obj>{RequestObject}</obj>
        </mx:request>
   </mx:HTTPService>
    
次に、xmlEncoder 関数の例を示します。
function xmlEncoder (myObj)
{
  return new XML("");
}

コンストラクタの詳細
AbstractOperation()コンストラクタ
public function AbstractOperation(service:AbstractService = null, name:String = null)

新しい Operation を作成します。

パラメータ
service:AbstractService (default = null)
 
name:String (default = null)
メソッドの詳細
getHeaders()メソッド
protected function getHeaders():Object

HTTP 要求ヘッダーの取得を上書きするサブクラスのフックです。

戻り値
Object
getSerializationFilter()メソッド 
protected function getSerializationFilter():SerializationFilter

指定操作に使用する直列化フィルタを上書きするサブクラスのフック

戻り値
SerializationFilter
sendBody()メソッド 
public function sendBody(parameters:Object):AsyncToken

パラメータ

parameters:Object

戻り値
AsyncToken