Packagejp.co.fujitsu.reffi.client.flex.model.timer
Classpublic class TimerProcessCore
InheritanceTimerProcessCore Inheritance BaseModel Inheritance flash.events.EventDispatcher

[概 要]

一定周期で任意の処理を行う為の機能モデルクラスです.

[詳 細]

以下のプロパティを設定することで動作します。 TimerProcessCoreオブジェクトは、上記の設定によって指定周期毎にModelProcessEvent.SUCCESSイベントを発行し、 コントローラによってTimerProcessCoreをリザーブしたアクションのsuccessForwardメソッドがコールバックされます。 ・5秒毎に3回successForwardを呼び出すアクション
        public class SimpleTimerAction extends BaseAction {
            
            override protected function reserveModels(models:Array):void {
                models.push(Class(TimerProcessCore));
            }
            
            override public function nextModel(index:int, prev:ModelProcessEvent, next:BaseModel):Boolean {
                if(index == 0) {
                    TimerProcessCore(next).timerId = "simpleTimer";
                    TimerProcessCore(next).interval = 5000;
                    TimerProcessCore(next).repeat = 3;
                }
                
                return true;
            }
            
            override public function successForward(index:int, model:BaseModel, resultEvent:Event):void {
                trace("5秒毎に計3回コールバックされます");
            }
        }
     
又、intervalActionプロパティが設定されていると、指定周期毎にコントローラに intervalAction(BaseAction継承クラス)の実行を委譲します。 この場合、TimerProcessCoreをリザーブしたアクションのsuccessForwardが呼ばれる契機は、intervalActionの終了、 つまりintervalAction#complete()が呼ばれるタイミングになります。 以下のコードはサーバ時間を取得するアクションを定期的に実行します。

[備 考]

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



Public Properties
 PropertyDefined By
  active : Boolean
[概 要] 開始状態を指定します.
TimerProcessCore
 Inheritedcontroller : BaseController
[概 要] このモデルを起動したコントローラインスタンスです.
BaseModel
 InheritedexecuteIndex : int
[概 要] 実行インデックス設定.
BaseModel
  interval : Number
[概 要] タイマー実行間隔です.
TimerProcessCore
  intervalAction : Class
[概 要] インターバル実行するアクションクラスです.
TimerProcessCore
 InheritedparameterMapping : ParameterMapping
[概 要] MVC各レイヤを伝播するパラメータオブジェクトです.
BaseModel
  repeat : int
[概 要] 繰り返す回数を指定します.
TimerProcessCore
 Inheritedskip : Boolean
[概 要] このモデルを実行するか、コントローラが判断する為のフラグです.
BaseModel
 InheritedsuccessCount : int
[概 要] モデルインスタンス生存中に、何回モデル処理が成功したかを保持します.
BaseModel
  timerId : String
[概 要] 使用するタイマーの識別子です.
TimerProcessCore
Public Methods
 MethodDefined By
 Inherited
[概 要] モデル処理失敗イベントを発行するメソッドです.
BaseModel
 Inherited
[概 要] モデル処理完了イベントを発行するメソッドです.
BaseModel
 Inherited
[概 要] モデル処理成功イベントを発行するメソッドです.
BaseModel
 Inherited
[概 要] ModelProcessEvent.SUCCESS発行回数を1増加させます.
BaseModel
  
resultHandler(event:TimerEvent):void
[概 要] タイマーイベントのハンドラです.
TimerProcessCore
 Inherited
run():void
[概 要] コントローラにコールされるモデルの主幹メソッドです.
BaseModel
Protected Methods
 MethodDefined By
 Inherited
[概 要] run()が終了したタイミングでテンプレートコールされるメソッドです.
BaseModel
  
mainProc():void
[override] [概 要] タイマーの開始、終了を行います.
TimerProcessCore
  
onSuccess(event:TimerEvent):void
[概 要] オーバーライド用タイマーイベントハンドラです.
TimerProcessCore
 Inherited
postProc():void
[概 要] 後処理テンプレートメソッドです.
BaseModel
 Inherited
preProc():Boolean
[概 要] 前処理テンプレートメソッドです.
BaseModel
 Inherited
trap(e:Error):Error
[概 要] run()内で発生した全例外をハンドリングするメソッドです.
BaseModel
Property Detail
activeproperty
active:Boolean

[概 要]

開始状態を指定します.

[詳 細]

true:tick開始 false : tick停止

[備 考]

The default value is true.


Implementation
    public function get active():Boolean
    public function set active(value:Boolean):void
intervalproperty 
interval:Number

[概 要]

タイマー実行間隔です.

[詳 細]

実行間隔をミリ秒で指定します。

[備 考]


Implementation
    public function get interval():Number
    public function set interval(value:Number):void
intervalActionproperty 
intervalAction:Class

[概 要]

インターバル実行するアクションクラスです.

[詳 細]

このプロパティが設定されている場合は、タイマーイベントでこのアクションが コントローラに実行委譲されます。

[備 考]

実行するアクションの処理が、intervalプロパティで指定した時間内に終わらない ものであった場合、負荷が累積します。 その場合、アクションの処理を軽減するか、intervalプロパティを長く設定するなどの対処が必要です。


Implementation
    public function get intervalAction():Class
    public function set intervalAction(value:Class):void
repeatproperty 
repeat:int

[概 要]

繰り返す回数を指定します.

[詳 細]

intervalを何回繰り返すかを指定します。 指定が無い場合、無制限に実行されます。

[備 考]


Implementation
    public function get repeat():int
    public function set repeat(value:int):void
timerIdproperty 
timerId:String

[概 要]

使用するタイマーの識別子です.

[詳 細]

タイマーをストップさせる為に使用します。 同時に同じtimerIdを持つTimerを実行しようとするとCoreLogicErrorがスローされます。

[備 考]


Implementation
    public function get timerId():String
    public function set timerId(value:String):void
Method Detail
mainProc()method
override protected function mainProc():void

[概 要]

タイマーの開始、終了を行います.

[詳 細]

activeプロパティがtrueの場合はタイマー開始、falseの場合はタイマー停止します。 具体的なタイマー制御処理はTimerProcessCoreManagerに委譲されます。

[備 考]

onSuccess()method 
protected function onSuccess(event:TimerEvent):void

[概 要]

オーバーライド用タイマーイベントハンドラです.

[詳 細]

継承クラスでタイマーイベントをハンドリングする為に使用します。

[備 考]

Parameters

event:TimerEvent

resultHandler()method 
public final function resultHandler(event:TimerEvent):void

[概 要]

タイマーイベントのハンドラです.

[詳 細]

intervalAction指定が無い場合にTimerによってコールバックされます。

[備 考]

Parameters

event:TimerEvent