Packagejp.co.fujitsu.reffi.client.flex.action
Classpublic class DispatchAction
InheritanceDispatchAction Inheritance BaseAction Inheritance AbstractAction Inheritance Object

[概 要]

モデルの処理結果(成功、失敗)を任意の実装メソッドに振り分けるアクションクラスです.

[詳 細]

BaseAction実装アクションでは、登録されたモデルの処理結果をsuccessForward、 failureForwardメソッドの二つの固定メソッドコールバックで取得しますが、 DispatchAction実装アクションでは、任意のメソッドをコールバックメソッドに 指定します。 BaseAction実装とはモデルの予約方法が異なります。 DispatchActionを実装したアクションでは、reserveModelsの代わりに reserveModelsAndCallbackMethod(CallbackMapping)を実装します。
         protected function reserveModelsAndCallbackMethod(callbackMapping:CallbackMapping):void {
             // HTTPServiceCore機能モデルが成功した場合successFetchDataメソッドが、失敗した場合filureFetchDataメソッドが呼ばれる
             callbackMapping.add(Class(HTTPServicetCore), "successFetchData", "failureFetchData");
         }
     
reserveModelsAndCallbackMethodで予約したコールバックメソッドを、以下のシグネチャで実装します。
         // モデル処理正常終了時にコールバックされる
         public function successFetchData(model:Model, resultEvent:Event):void {
            trace("データ取得成功");
         }
     
         // モデル処理異常終了時にコールバックされる
         public function failureFetchData(model:Model, faultEvent:Event):Event {
             trace("データ取得失敗");
             return e;
         }
     

[備 考]

Copyright (c) 2008-2009 FUJITSU Japan All rights reserved.



Public Properties
 PropertyDefined By
  callbackMapping : CallbackMapping
[概 要] 実行モデルクラス、成功、失敗コールバックメソッド名をマッピングするプロパティです.
DispatchAction
 Inheritedcontroller : BaseController
[概 要] このアクションを起動したコントローラオブジェクトです.
AbstractAction
 Inheriteddocument : Object
[概 要] このアクション(イベント)を起こしたUIComponentが所属するdocumentオブジェクトを設定します.
AbstractAction
 InheritedparameterMapping : ParameterMapping
[概 要] MVC各レイヤを伝播するパラメータオブジェクトです.
AbstractAction
Public Methods
 MethodDefined By
 Inherited
complete():void
[概 要] reserveModelsで登録されたモデル群が全て終了した契機でコールされます.
BaseAction
  
failureForward(index:int, model:BaseModel, faultEvent:Event):Event
[override] [概 要] オーバーライド不可です.
DispatchAction
 Inherited
nextModel(index:int, prev:ModelProcessEvent, next:BaseModel):Boolean
[概 要] 予約モデルがコントローラによって実行される直前にコールバックされるメソッドです.
BaseAction
  
[override] [概 要] コントローラにコールされるアクションの主幹メソッドです.
DispatchAction
  
successForward(index:int, model:BaseModel, resultEvent:Event):void
[override] [概 要] オーバーライド不可です.
DispatchAction
 Inherited
[概 要] validatorsで指定したValidatorがエラー検出した場合、テンプレートコールされます.
BaseAction
Protected Methods
 MethodDefined By
 Inherited
addPermanent(key:Object, value:Object):void
[概 要] nSWF間で共有可能な恒久領域に、引数keyで値valueを設定します.
AbstractAction
 Inherited
addPopUp(name:String, displayObject:IFlexDisplayObject, modal:Boolean = false, centered:Boolean = false):void
[概 要] ポップアップ画面を表示します.
AbstractAction
 Inherited
addSingletonPopUp(name:String, displayObject:IFlexDisplayObject, modal:Boolean = false, centered:Boolean = false):void
[概 要] シングルトンポップアップ画面を表示します.
AbstractAction
 Inherited
getApplication():Application
[概 要] このアクションを起動したコンポーネントが所属するApplicationを取得します.
AbstractAction
 Inherited
getComponentById(id:String, searchRange:int = 0x03):DisplayObject
[概 要] 第一引数idをid属性として持つ画面コンポーネントを取得します.
AbstractAction
 Inherited
getComponentByIdFrom(container:DisplayObjectContainer, id:String):DisplayObject
[概 要] 第一引数containerから、第二引数idをid属性として持つ画面コンポーネントを取得します.
AbstractAction
 Inherited
getComponentByName(namePattern:String, searchRange:int = 0x03):DisplayObject
[概 要] 第一引数namePatternをname属性として持つ画面コンポーネントを取得します.
AbstractAction
 Inherited
getComponentByNameFrom(container:DisplayObjectContainer, namePattern:String):DisplayObject
[概 要] 第一引数containerから、第二引数namePatternをname属性として持つ画面コンポーネントを取得します.
AbstractAction
 Inherited
getComponentByNameParentTrace(namePattern:String):DisplayObject
[概 要] 第一引数namePatternをname属性として持つ画面コンポーネントを取得します.
AbstractAction
 Inherited
getComponentsById(id:String, searchRange:int = 0x03):Array
[概 要] 第一引数idをid属性として持つ画面コンポーネント配列を取得します.
AbstractAction
 Inherited
getComponentsByName(namePattern:String, searchRange:int = 0x03):Array
[概 要] 第一引数namePatternをname属性として持つ画面コンポーネント配列を取得します.
AbstractAction
 Inherited
getComponentsByNameFrom(container:DisplayObjectContainer, namePattern:String):Array
[概 要] 第一引数containerから、第二引数namePatternをname属性として持つ画面コンポーネント配列を取得します.
AbstractAction
 Inherited
[概 要] このアクションを起動したイベントのcurrentTargetを取得します.
AbstractAction
 Inherited
getEventSourceObject():DisplayObject
[概 要] 恒久的なイベントカレントターゲットです.
AbstractAction
 Inherited
[概 要] このアクションを起動したイベントのtargetを取得します.
AbstractAction
 Inherited
[概 要] AVM上にロードされているBaseControllerから、引数nameをnameとして持つものを取得します.
AbstractAction
 Inherited
[概 要] AVM上にロードされているBaseControllerのマッピングを取得します.
AbstractAction
 Inherited
getObjectById(id:String):Object
[概 要] 引数idをid属性として持つオブジェクトを取得します.
AbstractAction
 Inherited
getPermanent(key:Object):Object
[概 要] nSWF間で共有可能な恒久領域から、引数keyに対応する値を取得します.
AbstractAction
 Inherited
getPopUp(name:String):Array
[概 要] 既に表示されているポップアップ画面インスタンス配列を取得します.
AbstractAction
 Inherited
getSingletonPopUp(name:String):IFlexDisplayObject
[概 要] 既に表示されている重複を許可しないポップアップ画面インスタンスを取得します.
AbstractAction
 Inherited
isExistPopUp(name:String):Boolean
[概 要] 引数で指定した名前を持つポップアップ画面が既に画面表示されているかどうか調べます.
AbstractAction
 Inherited
[概 要] モデル群実行を非シーケンシャルに行うかどうかを設定するメソッドです.
BaseAction
 Inherited
[概 要] reserveModelsによって登録された全モデルが終了するまでモーダル状態にするかどうかのフラグを返却します.
BaseAction
 Inherited
prepare(parameterMapping:ParameterMapping):Boolean
[概 要] BaseAction内で最初にテンプレートコールされるメソッドです.
BaseAction
 Inherited
removeAllPopUp():Boolean
[概 要] 全てのポップアップ画面を画面から消去します.
AbstractAction
 Inherited
removePermanent(key:Object):void
[概 要] nSWF間で共有可能な恒久領域から、引数keyを削除します.
AbstractAction
 Inherited
removePopUp(name:String):Boolean
[概 要] 引数windowNameに対応するポップアップ画面を画面から消去します.
AbstractAction
  
reserveModels(models:Array):void
[override] [概 要] オーバーライド不可です.
DispatchAction
  
[概 要] 機能モデル、成功イベントハンドラ名、失敗イベントハンドラ名を予約します.
DispatchAction
 Inherited
trap(e:Error):Error
[概 要] Action内で発生した同期エラーをハンドリングします.
BaseAction
 Inherited
validate(validators:Array):ValidateErrors
[概 要] バリデーションを行うメソッドです.
AbstractAction
 Inherited
validators(validators:Array):void
[概 要] このイベントアクションフローで必要なバリデーション情報を指定追加します.
BaseAction
 Inherited
[概 要] モデル終了までのモーダル状態時にプログレスバーに表示するメッセージを取得します。 [詳 細] このメソッドをオーバーライドしなかった場合はプログレスバーのデフォルトメッセージが 表示されます。 [備 考]
BaseAction
Property Detail
callbackMappingproperty
callbackMapping:CallbackMapping

[概 要]

実行モデルクラス、成功、失敗コールバックメソッド名をマッピングするプロパティです.

[詳 細]

DispatchアクションがsuccessForward、failureFowardをハンドリングすると、 このプロパティから対応するメソッド名を取得、コールします。

[備 考]


Implementation
    public function get callbackMapping():CallbackMapping
    public function set callbackMapping(value:CallbackMapping):void

See also

Method Detail
failureForward()method
override public final function failureForward(index:int, model:BaseModel, faultEvent:Event):Event

[概 要]

オーバーライド不可です.

[詳 細]

callbackMappingプロパティから引数index番目の情報を取得して 対応する失敗イベントハンドリングメソッド名を取得、 同名のメソッドを以下のシグネチャでコールします。 faultEvent = 失敗イベントハンドルメソッド名(model:BaseModel, faultEvent:Event);

[備 考]

Parameters

index:int — 結果を返却したモデルの実行インデックス
 
model:BaseModel — 結果を返却したモデルインスタンス
 
faultEvent:Event — モデル異常終了時のイベント

Returns
Event — 引数faultEvent、若しくはオーバーライドメソッドで変換されたイベント
reserveModels()method 
override protected final function reserveModels(models:Array):void

[概 要]

オーバーライド不可です.

[詳 細]

reserveModelsAndCallbackMethodメソッドをオーバーライドして下さい。

[備 考]

Parameters

models:Array

reserveModelsAndCallbackMethod()method 
protected function reserveModelsAndCallbackMethod(callbackMapping:CallbackMapping):void

[概 要]

機能モデル、成功イベントハンドラ名、失敗イベントハンドラ名を予約します.

[詳 細]

引数callbackMappingに対してコントローラに実行委譲する機能モデルクラス型、 その機能モデルが成功した時のイベントハンドラ名、失敗した時のイベントハンドラ名を 追加します。

[備 考]

Parameters

callbackMapping:CallbackMapping

run()method 
override public function run(parameterMapping:ParameterMapping):ParameterMapping

[概 要]

コントローラにコールされるアクションの主幹メソッドです.

[詳 細]

BaseAction#runを実行した後、reserveModelsAndCallbackMethodメソッドの テンプレートコールを行います。 オーバーライドされたreserveModelsAndCallbackMethodで登録された 機能モデルはparameterMapping#modelsとして登録されます。

[備 考]

Parameters

parameterMapping:ParameterMapping — MVC各レイヤを伝播するパラメータオブジェクト

Returns
ParameterMapping — 継承Actionから収集した、コントローラに返却される制御情報
successForward()method 
override public final function successForward(index:int, model:BaseModel, resultEvent:Event):void

[概 要]

オーバーライド不可です.

[詳 細]

callbackMappingプロパティから引数index番目の情報を取得して 対応する成功イベントハンドリングメソッド名を取得、 同名のメソッドを以下のシグネチャでコールします。 成功イベントハンドルメソッド名(model:BaseModel, resultEvent:Event);

[備 考]

Parameters

index:int — 結果を返却したモデルの実行インデックス
 
model:BaseModel — 結果を返却したモデルインスタンス
 
resultEvent:Event — モデル処理結果オブジェクト