パッケージnet.user1.reactor.snapshot
クラスpublic class Snapshot
継承Snapshot Inheritance flash.events.EventDispatcher
サブクラス AccountListSnapshot, AccountSnapshot, BannedListSnapshot, ClientCountSnapshot, ClientListSnapshot, ClientSnapshot, GatewaysSnapshot, NodeListSnapshot, RoomListSnapshot, RoomSnapshot, ServerModuleListSnapshot, UPCStatsSnapshot

バージョン : Reactor 1.0.0

Reactorの"snapshots"は伝統的なリクエスト/レスポンスの仕組みを提供し、Unionサーバーからオンデマンドのデータを取得します。 SnapshotクラスはReactorの全"スナップショット"クラスの抽象基底クラスであり、それぞれサーバーから特定のデータセットをロードします。 例えば、ClientCountSnapshotクラスは現在サーバーに接続中のクライアント数をロードします。 RoomSnapshotクラスは特定のルームを記述するデータマニフェストをロードします。 スナップショットクラスを使用してデータのスナップショットをリクエストするには、初めに希望のスナップショットオブジェクトを作成し、それからそのオブジェクトをReactorクラスのupdateSnapshot()メソッドに渡します。 例えば、サーバー上の全ルームのルームIDのリストをロードするには、次のようにRoomListSnapshotを使用してください:

  1. 最初に、RoomListSnapshotオブジェクトを作成してください:
       var snapshot:RoomListSnapshot = new RoomListSnapshot(null, true);
       
  2. 次に、スナップショットのデータがロードされたときに自動的に呼び出されるコールバックかリスナー関数を登録してください。
       // コールバック関数を登録します
       snapshot.onLoad = function ():void {
         trace("Here's the room list: " + snapshot.getRoomList());
       }
       
       // あるいはリスナー関数を登録します
       snapshot.addEventListener(SnapshotEvent.LOAD, loadListener);
       function loadListener (e:SnapshotEvent):void {
         trace("Here's the room list: " + RoomListSnapshot(e.target).getRoomList());
       }
       
  3. 最後に、ReactorのupdateSnapshot()メソッドにスナップショットオブジェクトを渡してください。
       reactor.updateSnapshot(snapshot);
       

このRoomListSnapshotオブジェクトがupdateSnapshot()リクエストの時点のサーバー状態のみを表すように、スナップショットはいったんロードされると同期は保たれません。 対照的に、UnionサーバーとReactor間の同期を管理するには、Reactor APIのメイン(net.user1.reactor)にあるクラスを使用してください。 例えば、ルームの同期が取れたリストを管理するには、RoomListSnapshotオブジェクトより、RoomManagerのwatchForRooms()メソッドを使用してください。

全てのスナップショットオブジェクトは、データをロードする時にSnapshotEvent.LOADをトリガーします。 いくつかのスナップショットオブジェクトはロード操作の状態を受け取る時にSnapshotEvent.STATUSもトリガーします。 詳細は、SnapshotEventを参照してください。

関連項目

SnapshotEvent
AccountSnapshot
AccountListSnapshot
ClientSnapshot
ClientListSnapshot
ClientCountSnapshot
RoomSnapshot
RoomListSnapshot
net.user1.reactor.Reactor.updateSnapshot()


パブリック プロパティ
 プロパティ定義元
  onLoad : Function
このスナップショットのデータがロードされたときに呼び出されるコールバック関数です。
Snapshot
パブリック メソッド
 メソッド定義元
  
コンストラクタ
Snapshot
  
getStatus():String
最も最近のスナップショットのロード操作のステータスを返します。
Snapshot
  
スナップショットが現在データをロード中かどうかを示します。
Snapshot
Events
 Event Summary 定義元
   先に呼び出されたReactorのupdateSnapshot()メソッドによってスナップショットオブジェクトが更新されたときに送出されます。Snapshot
   スナップショットオブジェクトが更新リクエストの結果を受信したときに送出されます。Snapshot
プロパティの詳細
onLoadプロパティ
public var onLoad:Function

バージョン : Reactor 1.0.0

このスナップショットのデータがロードされたときに呼び出されるコールバック関数です。

関連項目

コンストラクタの詳細
Snapshot()コンストラクタ
public function Snapshot()

コンストラクタ

メソッドの詳細
getStatus()メソッド
public function getStatus():String

バージョン : Reactor 1.0.0

最も最近のスナップショットのロード操作のステータスを返します。 ロード操作が現在進行中の場合、getStatus()はnullを返します。 getStatus() の返り値はスナップショットの種類に応じて、次のような可能性があります:

AccountListSnapshot

AccountSnapshot BannedListSnapshot ClientCountSnapshot ClientListSnapshot ClientSnapshot RoomListSnapshot RoomSnapshot UPCStatsSnapshot

戻り値
String

関連項目

updateInProgress()メソッド 
public function updateInProgress():Boolean

バージョン : Reactor 1.0.0

スナップショットが現在データをロード中かどうかを示します。 更新処理中は、このスナップショットの追加の更新リクエストは無視されます。

戻り値
Boolean
Event Detail
LOAD イベント
Event Object Type: SnapshotEvent
SnapshotEvent.type variable = net.user1.reactor.snapshot.SnapshotEvent.LOAD

先に呼び出されたReactorのupdateSnapshot()メソッドによってスナップショットオブジェクトが更新されたときに送出されます。

関連項目

STATUS イベント  
Event Object Type: SnapshotEvent
SnapshotEvent.type variable = net.user1.reactor.snapshot.SnapshotEvent.STATUS

スナップショットオブジェクトが更新リクエストの結果を受信したときに送出されます。

関連項目