(Adobe® Flex™ Data Services 2 のみ)
パッケージmx.messaging
public class MessageAgent
継承MessageAgent Inheritance EventDispatcher Inheritance Object
ImplementsIMXMLObject
SubclassesConsumer, Producer

MessageAgent クラスは、宛先に対するメッセージ処理に共通する基本的な低レベル機能を提供します。

メモ : 高度な使用のみを目的としています。このクラスは、既存のプロデューサクラスやコンシューマクラスなどのカスタムエージェントを作成する場合に使用します。

MXML シンタックスexpandedMXML シンタックスの非表示

All message agent classes, including the Producer and Consumer classes, extend MessageAgent and inherit the following tag attributes:

 <mx:tagname
Properties channelSet="No default." clientId="No default." connected="false" destination="No default." requestTimeout="-1" subtopic="No default." Events acknowledge="No default." channelConnect="No default." channelDisconnect="No default." channelFault="No default." fault="No default." propertyChange="No default." />


パブリックプロパティ
 プロパティ定義
  channelSet : ChannelSet
MessageAgent が使用する ChannelSet へのアクセスを提供します。
MessageAgent
  clientId : String
[read-only] MessageAgent のクライアント ID へのアクセスを提供します。
MessageAgent
  connected : Boolean
[read-only] この MessageAgent が現在、ChannelSet を介して宛先に接続されているかどうかを示します。
MessageAgent
 Inheritedconstructor : Object
指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクタ関数への参照です。
Object
  destination : String
MessageAgent の宛先へのアクセスを提供します。
MessageAgent
 Inheritedprototype : Object
[static] クラスまたは関数オブジェクトのプロトタイプオブジェクトへの参照です。
Object
  requestTimeout : int
送信メッセージの要求タイムアウト時間 (秒単位) に対するアクセスを提供します。
MessageAgent
  subtopic : String
MessageAgent が使用するリモート宛先のサブトピックへのアクセスを提供します。
MessageAgent
パブリック Methods
 メソッド定義
  
コンストラクタです。
MessageAgent
  
送信されたメッセージの結果を受信したときに MessageResponder によって呼び出されます。
MessageAgent
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
リスナーがイベントの通知を受け取るように、イベントリスナーオブジェクトを EventDispatcher オブジェクトに登録します。
EventDispatcher
  
CONNECT ChannelEvent を処理します。
MessageAgent
  
DISCONNECT ChannelEvent を処理します。
MessageAgent
  
ChannelFaultEvent を処理します。
MessageAgent
  
MessageAgent のネットワーク接続を切断します。
MessageAgent
 Inherited
イベントをイベントフローに送出します。
EventDispatcher
  
送信されたメッセージの失敗を受信したときに、MessageResponder によって呼び出されます。
MessageAgent
 Inherited
EventDispatcher オブジェクトに、特定のイベントタイプに対して登録されたリスナーがあるかどうかを確認します。
EventDispatcher
 Inherited
指定されたプロパティがオブジェクトに定義されているかどうかを示します。
Object
  
initialized(document:Object, id:String):void
実装オブジェクトが作成され、タグに指定されたすべてのプロパティが割り当てられた後に呼び出されます。
MessageAgent
 Inherited
Object クラスのインスタンスが、パラメータとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。
Object
  
MessageAgent をリモート宛先からログアウトします。
MessageAgent
 Inherited
指定されたプロパティが存在し、列挙できるかどうかを示します。
Object
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
EventDispatcher オブジェクトからリスナーを削除します。
EventDispatcher
  
setCredentials(username:String, password:String):void
MessageAgent が宛先の認証に使用する証明書を設定します。
MessageAgent
 Inherited
ループ処理に対するダイナミックプロパティの可用性を設定します。
Object
  
setRemoteCredentials(username:String, password:String):void
セカンダリシステムへの認証のためにリモート宛先に渡すリモート資格情報を設定します。
MessageAgent
 Inherited
指定されたオブジェクトのストリング表現を返します。
Object
 Inherited
指定されたオブジェクトのプリミティブな値を返します。
Object
 Inherited
指定されたイベントタイプについて、この EventDispatcher オブジェクトまたはその祖先にイベントリスナーが登録されているかどうかを確認します。
EventDispatcher
Protected Methods
 メソッド定義
  
MessageAgent の初回の接続前に MessageAgent の channelSet プロパティを自動的に初期化します。
MessageAgent
  
エージェントの ChannelSet を使って、MessageAgent から宛先にメッセージを送信します。
MessageAgent
イベント
 イベント一覧定義
   送信したメッセージに対する応答メッセージを受信したときに送出されます。MessageAgent
 Inherited Flash Player がオペレーティングシステムのフォーカスを取得して、アクティブになったときに送出されます。EventDispatcher
   MessageAgent が使用中の基本チャネルが接続されたときに送出されます。MessageAgent
   MessageAgent が使用中の基本チャネルが切断されたときに送出されます。MessageAgent
   MessageAgent が使用中の基本チャネルでエラーが発生したときに送出されます。MessageAgent
 Inherited Flash Player がオペレーティングシステムのフォーカスを失って、非アクティブになったときに送出されます。EventDispatcher
   メッセージエラーが発生したときに送出されます。MessageAgent
   MessageAgent の connected プロパティが変更されたときに送出されます。MessageAgent
プロパティの詳細
channelSetプロパティ
channelSet:ChannelSet  [read-write]

MessageAgent が使用する ChannelSet へのアクセスを提供します。ChannelSet は手動で作成して割り当てることができます。また、この MessageAgent の宛先に対して設定済みのチャネルを使って、動的に初期化することもできます。

実装
    public function get channelSet():ChannelSet
    public function set channelSet(value:ChannelSet):void
clientIdプロパティ 
clientId:String  [read-only]

MessageAgent のクライアント ID へのアクセスを提供します。エージェントには、リモート宛先によってクライアント ID が割り当てられます。

実装
    public function get clientId():String
connectedプロパティ 
connected:Boolean  [read-only]

この MessageAgent が現在、ChannelSet を介して宛先に接続されているかどうかを示します。このプロパティが変更されると、propertyChange イベントが送出されます。

このプロパティはデータバインディングのソースとして使用できます。

実装
    public function get connected():Boolean
destinationプロパティ 
destination:String  [read-write]

MessageAgent の宛先へのアクセスを提供します。MessageAgent が現在接続されている場合、宛先を変更すると切断されます。

このプロパティはデータバインディングのソースとして使用できます。

実装
    public function get destination():String
    public function set destination(value:String):void

Throws
InvalidDestinationError — 宛先が null または長さが 0 の場合。
requestTimeoutプロパティ 
requestTimeout:int  [read-write]

送信メッセージの要求タイムアウト時間 (秒単位) に対するアクセスを提供します。タイムアウトに達する前にリモート宛先から応答または失敗を受信しなかった場合、メッセージは失敗となります。ゼロ以下の値を設定すると、要求はタイムアウトになりません。

実装
    public function get requestTimeout():int
    public function set requestTimeout(value:int):void
subtopicプロパティ 
subtopic:String  [read-write]

MessageAgent が使用するリモート宛先のサブトピックへのアクセスを提供します。

このプロパティはデータバインディングのソースとして使用できます。

実装
    public function get subtopic():String
    public function set subtopic(value:String):void
コンストラクタの詳細
MessageAgent()コンストラクタ
public 関数 MessageAgent()

コンストラクタです。

メソッドの詳細
acknowledge()メソッド
public function acknowledge(ackMsg:AcknowledgeMessage, msg:IMessage):void

送信されたメッセージの結果を受信したときに MessageResponder によって呼び出されます。サブクラスでカスタム応答処理を実行する必要がある場合、このメソッドをサブクラスでオーバーライドすることができますが、super.acknowledge() も呼び出す必要があります。このメソッドにより、MessageAckEvent が送出されます。

パラメータ
ackMsg:AcknowledgeMessage — 返される AcknowledgMessage です。
 
msg:IMessage — 元の送信メッセージです。
channelConnectHandler()メソッド 
public function channelConnectHandler(event:ChannelEvent):void

CONNECT ChannelEvent を処理します。カスタム処理の実行が必要なサブクラスでこのメソッドをオーバーライドし、super.channelConnectHandler() を呼び出す必要があります。

パラメータ
event:ChannelEvent — ChannelEvent です。
channelDisconnectHandler()メソッド 
public function channelDisconnectHandler(event:ChannelEvent):void

DISCONNECT ChannelEvent を処理します。カスタム処理の実行が必要なサブクラスでこのメソッドをオーバーライドし、super.channelDisconnectHandler() を呼び出す必要があります。

パラメータ
event:ChannelEvent — ChannelEvent です。
channelFaultHandler()メソッド 
public function channelFaultHandler(event:ChannelFaultEvent):void

ChannelFaultEvent を処理します。カスタム処理の実行が必要なサブクラスでこのメソッドをオーバーライドし、super.channelFaultHandler() を呼び出す必要があります。

パラメータ
event:ChannelFaultEvent — ChannelFaultEvent
disconnect()メソッド 
public function disconnect():void

MessageAgent のネットワーク接続を切断します。このメソッドは、未処理のネットワーク操作が完了するまで待つことはしません。

fault()メソッド 
public function fault(errMsg:ErrorMessage, msg:IMessage):void

送信されたメッセージの失敗を受信したときに、MessageResponder によって呼び出されます。サブクラスでカスタム失敗処理を実行する必要がある場合、このメソッドをサブクラスでオーバーライドすることができますが、super.fault() も呼び出す必要があります。このメソッドにより、MessageFaultEvent が送出されます。

パラメータ
errMsg:ErrorMessage — ErrorMessage です。
 
msg:IMessage — このエラーの原因となった元の送信メッセージです。
initChannelSet()メソッド 
protected function initChannelSet(message:IMessage):void

MessageAgent の初回の接続前に MessageAgent の channelSet プロパティを自動的に初期化します。カスタムの初期化を実行するために、サブタイプによってオーバーライドされることがあります。

パラメータ
message:IMessage — 送信の必要があるメッセージです。
initialized()メソッド 
public function initialized(document:Object, id:String):void

実装オブジェクトが作成され、タグに指定されたすべてのプロパティが割り当てられた後に呼び出されます。

パラメータ
document:Object — このオブジェクトを作成した MXML ドキュメントです。
 
id:String — ドキュメントがこのオブジェクトを参照するために使用する ID。オブジェクトがドキュメントの deep プロパティである場合、ID は null になります。
internalSend()メソッド 
protected final function internalSend(message:IMessage):void

エージェントの ChannelSet を使って、MessageAgent から宛先にメッセージを送信します。MessageAgent のサブクラスは、このメソッドを使ってメッセージを送信する必要があります。

パラメータ
message:IMessage — 送信するメッセージです。

スロー
InvalidDestinationError — 宛先が設定されていない場合。
logout()メソッド 
public function logout():void

MessageAgent をリモート宛先からログアウトします。宛先のログアウトは、サーバー設定で指定されているものと同じ ChannelSet を使用して接続されているあらゆるものに適用されます。たとえば、RTMP チャネルで複数の DataService コンポーネントが接続されており、そのうち 1 つで logout() が呼び出された場合、同じ ChannelSet を使用して接続しているその他すべてのクライアントコンポーネントもログアウトされます。

setCredentials()メソッド 
public function setCredentials(username:String, password:String):void

MessageAgent が宛先の認証に使用する証明書を設定します。証明書は、同じ ChannelSet 上で接続されているすべてのサービスに適用されます。

パラメータ
username:String — ユーザー名です。
 
password:String — パスワードです。
setRemoteCredentials()メソッド 
public function setRemoteCredentials(username:String, password:String):void

セカンダリシステムへの認証のためにリモート宛先に渡すリモート資格情報を設定します。

パラメータ
username:String — ユーザー名です。
 
password:String — パスワードです。
イベントの詳細
acknowledgeevent 
イベントオブジェクトの型: mx.messaging.events.MessageAckEvent
MessageAckEvent.type property = mx.messaging.events.MessageAckEvent.ACKNOWLEDGE

送信したメッセージに対する応答メッセージを受信したときに送出されます。

ACKNOWLEDGE イベント型。確認応答の受信時に送出されます。

この定数の値は "acknowledge" です。

イベントオブジェクトの各プロパティには次の値が設定されています。

プロパティ
acknowledgeMessage MessageEvent のメッセージプロパティを AcknowledgeMessage として取得するためのユーティリティプロパティです。
bubblesfalse
cancelablefalse
currentTargetイベント処理を行うイベントリスナーの定義用オブジェクトを表します。たとえば、イベントリスナーの登録に myButton.addEventListener() を使用すると、currentTarget の値は "myButton" となります。
correlate この応答に関連付けられた元のメッセージ。
messageこのイベントに関連付けられたメッセージ。
targetイベントを送出したオブジェクトを表します。このオブジェクトは必ずイベントを受け取るオブジェクトとは限りません。イベントを受け取るオブジェクトにアクセスするには、currentTarget プロパティを使用します。
channelConnectevent  
イベントオブジェクトの型: mx.messaging.events.ChannelEvent
ChannelEvent.type property = mx.messaging.events.ChannelEvent.CONNECT

MessageAgent が使用中の基本チャネルが接続されたときに送出されます。

CONNECT イベント型。チャネルがエンドポイントに接続されたことを示します。

この定数の値は "channelConnect" です。

イベントオブジェクトの各プロパティには次の値が設定されています。

プロパティ
bubblesfalse
cancelablefalse
channelこのイベントがトリガされたチャネルです。
currentTargetイベント処理を行うイベントリスナーの定義用オブジェクトを表します。たとえば、イベントリスナーの登録に myButton.addEventListener() を使用すると、currentTarget の値は "myButton" となります。
targetイベントを送出したオブジェクトを表します。このオブジェクトは必ずイベントを受け取るオブジェクトとは限りません。イベントを受け取るオブジェクトにアクセスするには、currentTarget プロパティを使用します。
reconnecting このイベントを生成したチャネルが再接続中かどうかを示します。
rejected このイベントを生成したチャネルが拒否されたかどうかを示します。アクティビティがないことによりチャネルが切断された場合は、これが true になり、フェイルオーバーが行われず、代替チャネルへの接続も行われません。
channelDisconnectevent  
イベントオブジェクトの型: mx.messaging.events.ChannelEvent
ChannelEvent.type property = mx.messaging.events.ChannelEvent.DISCONNECT

MessageAgent が使用中の基本チャネルが切断されたときに送出されます。

DISCONNECT イベント型。チャネルがエンドポイントから切断されたことを示します。

この定数の値は "channelDisconnect" です。

イベントオブジェクトの各プロパティには次の値が設定されています。

プロパティ
bubblesfalse
cancelablefalse
channelこのイベントがトリガされたチャネルです。
currentTargetイベント処理を行うイベントリスナーの定義用オブジェクトを表します。たとえば、イベントリスナーの登録に myButton.addEventListener() を使用すると、currentTarget の値は "myButton" となります。
targetイベントを送出したオブジェクトを表します。このオブジェクトは必ずイベントを受け取るオブジェクトとは限りません。イベントを受け取るオブジェクトにアクセスするには、currentTarget プロパティを使用します。
reconnecting このイベントを生成したチャネルが再接続中かどうかを示します。
rejected このイベントを生成したチャネルが拒否されたかどうかを示します。アクティビティがないことによりチャネルが切断された場合は、これが true になり、フェイルオーバーが行われず、代替チャネルへの接続も行われません。
channelFaultevent  
イベントオブジェクトの型: mx.messaging.events.ChannelFaultEvent
ChannelFaultEvent.type property = mx.messaging.events.ChannelFaultEvent.FAULT

MessageAgent が使用中の基本チャネルでエラーが発生したときに送出されます。

FAULT イベント型。フォルトが発生したチャネルを示します。

この定数の値は "channelFault" です。

イベントオブジェクトの各プロパティには次の値が設定されています。

プロパティ
bubblesfalse
cancelablefalse
channelこのイベントを生成したチャネル。
currentTargetイベント処理を行うイベントリスナーの定義用オブジェクトを表します。たとえば、イベントリスナーの登録に myButton.addEventListener() を使用すると、currentTarget の値は "myButton" となります。
faultCode失敗に関する宛先固有の詳細を提供します。
faultDetail失敗の宛先固有の理由へのアクセスを提供します。
faultStringチャネル自体がフォルトを生成しなかった場合は、フォルトの根本的な理由へのアクセスを提供します。
reconnecting このイベントを生成したチャネルが再接続中かどうかを示します。
rootCause チャネル自体がフォルトを生成しなかった場合は、フォルトの根本的な理由へのアクセスを提供します。
targetイベントを送出したオブジェクトを表します。このオブジェクトは必ずイベントを受け取るオブジェクトとは限りません。イベントを受け取るオブジェクトにアクセスするには、currentTarget プロパティを使用します。
faultevent  
イベントオブジェクトの型: mx.messaging.events.MessageFaultEvent
MessageFaultEvent.type property = mx.messaging.events.MessageFaultEvent.FAULT

メッセージエラーが発生したときに送出されます。

FAULT イベント型。メッセージフォルトの発生時に送出されます。

この定数の値は "fault" です。

イベントオブジェクトの各プロパティには次の値が設定されています。

プロパティ
bubblesfalse
cancelablefalse
currentTargetイベント処理を行うイベントリスナーの定義用オブジェクトを表します。たとえば、イベントリスナーの登録に myButton.addEventListener() を使用すると、currentTarget の値は "myButton" となります。
faultCode失敗に関する宛先固有の詳細を提供します。
faultDetail失敗の宛先固有の理由へのアクセスを提供します。
faultStringチャネル自体がフォルトを生成しなかった場合は、フォルトの根本的な理由へのアクセスを提供します。
messageこのイベントの ErrorMessage。
rootCause 失敗の根本的な理由へのアクセスを提供します (存在する場合)。
targetイベントを送出したオブジェクトを表します。このオブジェクトは必ずイベントを受け取るオブジェクトとは限りません。イベントを受け取るオブジェクトにアクセスするには、currentTarget プロパティを使用します。
propertyChangeevent  
イベントオブジェクトの型: mx.events.PropertyChangeEvent
PropertyChangeEvent.type property = mx.events.PropertyChangeEvent.PROPERTY_CHANGE

MessageAgent の connected プロパティが変更されたときに送出されます。また、コンシューマの subscribed が変更されたときにも送出されます。

PropertyChangeEvent.PROPERTY_CHANGE 定数により、PropertyChange イベントのイベントオブジェクトの type プロパティ値が定義されます。

イベントオブジェクトの各プロパティには次の値が設定されています。

プロパティ
bubblesコンストラクタによって決定されます。デフォルトは false です。
cancelableコンストラクタによって決定されます。デフォルトは false です。
kind変更の種類。PropertyChangeEventKind.UPDATE または PropertyChangeEventKind.DELETE のいずれかです。
oldValue元のプロパティの値です。
newValue新しいプロパティの値 (存在する場合) です。
property変更されたプロパティです。
source変更されたプロパティを含むオブジェクトです。
currentTargetイベント処理を行うイベントリスナーの定義用オブジェクトを表します。たとえば、イベントリスナーの登録に myButton.addEventListener() を使用すると、currentTarget の値は "myButton" となります。
targetイベントを送出したオブジェクトを表します。このオブジェクトは必ずイベントを受け取るオブジェクトとは限りません。イベントを受け取るオブジェクトにアクセスするには、currentTarget プロパティを使用します。

関連項目