(BlazeDS のみ)
パッケージmx.messaging
クラスpublic class MessageAgent
継承MessageAgent Inheritance EventDispatcher Inheritance Object
実装 IMXMLObject
サブクラス AbstractConsumer, AbstractProducer

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." />


パブリックプロパティ
 プロパティ定義元
  authenticated : Boolean
[読み取り専用] この MessageAgent が宛先への接続に認証を使用するかどうかを示します。
MessageAgent
  channelSet : ChannelSet
MessageAgent が使用する ChannelSet へのアクセスを提供します。
MessageAgent
  clientId : String
[読み取り専用] MessageAgent のクライアント ID へのアクセスを提供します。
MessageAgent
  connected : Boolean
[読み取り専用] この MessageAgent が現在、ChannelSet を介して宛先に接続されているかどうかを示します。
MessageAgent
 Inheritedconstructor : Object
指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクタ関数への参照です。
Object
  destination : String
MessageAgent の宛先へのアクセスを提供します。
MessageAgent
 Inheritedprototype : Object
[静的] クラスまたは関数オブジェクトのプロトタイプオブジェクトへの参照です。
Object
  requestTimeout : int
送信メッセージの要求タイムアウト時間(秒単位)に対するアクセスを提供します。
MessageAgent
パブリックメソッド
 メソッド定義元
  
コンストラクタです。
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
  
渡されたメッセージに対し保留の要求がある場合、true を返します。
MessageAgent
  
実装オブジェクトが作成され、タグに指定されたすべてのプロパティが割り当てられた後に呼び出されます。
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, charset:String = null):void
MessageAgent が宛先の認証に使用する証明書を設定します。
MessageAgent
 Inherited
ループ処理に対するダイナミックプロパティの可用性を設定します。
Object
  
setRemoteCredentials(username:String, password:String, charset:String = null):void
セカンダリシステムへの認証のためにリモート宛先に渡すリモート資格情報を設定します。
MessageAgent
 Inherited
指定されたオブジェクトのストリング表現を返します。
Object
 Inherited
指定されたオブジェクトのプリミティブな値を返します。
Object
 Inherited
指定されたイベントタイプについて、この EventDispatcher オブジェクトまたはその祖先にイベントリスナーが登録されているかどうかを確認します。
EventDispatcher
プロテクトメソッド
 メソッド定義元
  
MessageAgent の初回の接続前に MessageAgent の channelSet プロパティを自動的に初期化します。
MessageAgent
  
internalSend(message:IMessage, waitForClientId:Boolean = true):void
エージェントの ChannelSet を使って、MessageAgent から宛先にメッセージを送信します。
MessageAgent
  
この関数をサブクラスでオーバーライドして、サブクラス固有のサーバーセッションタイムアウト動作による再認証を実装する必要があります。
MessageAgent
イベント
 イベント 概要 定義元
  送信したメッセージに対する応答メッセージを受信したときに送出されます。MessageAgent
 Inherited[ブロードキャスト イベント] Flash Player または AIR アプリケーションがオペレーティングシステムのフォーカスを取得して、アクティブになったときに送出されます。EventDispatcher
  MessageAgent が使用中の基本チャンネルが接続されたときに送出されます。MessageAgent
  MessageAgent が使用中の基本チャンネルが切断されたときに送出されます。MessageAgent
  MessageAgent が使用中の基本チャンネルでエラーが発生したときに送出されます。MessageAgent
 Inherited[ブロードキャスト イベント] Flash Player または AIR アプリケーションがオペレーティングシステムのフォーカスを失って、非アクティブになったときに送出されます。EventDispatcher
  メッセージエラーが発生したときに送出されます。MessageAgent
  MessageAgent の connected プロパティが変更されたときに送出されます。MessageAgent
プロパティの詳細
authenticatedプロパティ
authenticated:Boolean  [読み取り専用]

この MessageAgent が宛先への接続に認証を使用するかどうかを示します。

このプロパティはデータバインディングのソースとして使用できます。 このプロパティを変更すると、 propertyChange イベントが送出されます。



実装
    public function get authenticated():Boolean
channelSetプロパティ 
channelSet:ChannelSet

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

このプロパティはデータバインディングのソースとして使用できます。 このプロパティを変更すると、 propertyChange イベントが送出されます。



実装
    public function get channelSet():ChannelSet
    public function set channelSet(value:ChannelSet):void
clientIdプロパティ 
clientId:String  [読み取り専用]

MessageAgent のクライアント ID へのアクセスを提供します。MessageAgent はリモート宛先によってクライアント ID を割り当てられます。この値は、メッセージをリモート宛先から適切な MessageAgent へとルーティングするために使用されます。

このプロパティはデータバインディングのソースとして使用できます。 このプロパティを変更すると、 propertyChange イベントが送出されます。



実装
    public function get clientId():String
connectedプロパティ 
connected:Boolean  [読み取り専用]

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

このプロパティはデータバインディングのソースとして使用できます。 このプロパティを変更すると、 propertyChange イベントが送出されます。



実装
    public function get connected():Boolean
destinationプロパティ 
destination:String

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

このプロパティはデータバインディングのソースとして使用できます。 このプロパティを変更すると、 propertyChange イベントが送出されます。



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

例外
InvalidDestinationError — 宛先が null または長さが 0 の場合。
requestTimeoutプロパティ 
requestTimeout:int

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

このプロパティはデータバインディングのソースとして使用できます。 このプロパティを変更すると、 propertyChange イベントが送出されます。



実装
    public function get requestTimeout():int
    public function set requestTimeout(value:int):void
コンストラクタの詳細
MessageAgent()コンストラクタ
public function 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 — このエラーの原因となった元の送信メッセージです。

hasPendingRequestForMessage()メソッド 
public function hasPendingRequestForMessage(msg:IMessage):Boolean

渡されたメッセージに対し保留の要求がある場合、true を返します。このメソッドはサブクラスでオーバーライドされる必要があります。

パラメータ

msg:IMessage — 保留の要求が存在するかどうかを確認する対象のメッセージです。

戻り値
Boolean — メッセージで渡されたものに対する保留中の要求がある場合は、true を返します。
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 function internalSend(message:IMessage, waitForClientId:Boolean = true):void

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

パラメータ

message:IMessage — 送信するメッセージです。
 
waitForClientId:Boolean (default = true) — true の場合、clientId がエージェントに割り当てられるまでメッセージはキューに置かれることがあります。通常、これは必要な動作です。自動再接続、自動再サブスクライブなどの特別な動作の場合、エージェントは false を渡してデフォルトのキューイング動作をオーバーライドすることがあります。


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

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

reAuthorize()メソッド 
protected function reAuthorize(msg:IMessage):void

この関数をサブクラスでオーバーライドして、サブクラス固有のサーバーセッションタイムアウト動作による再認証を実装する必要があります。通常は、切断、接続、メッセージ再送信パターンに続きます。

パラメータ

msg:IMessage — エラーの原因となったメッセージです。再認証による切断または接続の後、再度送信する必要があります。

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

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

パラメータ

username:String — ユーザー名です。
 
password:String — パスワードです。
 
charset:String (default = null) — 資格情報をエンコードする際に使用する文字セットエンコーディングです。デフォルトは null で、旧式文字セットの ISO-Latin-1 を示します。サポートされているその他の文字セットは "UTF-8" のみです。


例外
IllegalOperationError — 2 つの状況:資格情報が既に設定済みでリモートの宛先の認証が進行中である場合、または指定した認証済みの資格情報が現在の認証済みの資格情報と一致しない場合。
setRemoteCredentials()メソッド 
public function setRemoteCredentials(username:String, password:String, charset:String = null):void

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

パラメータ

username:String — ユーザー名です。
 
password:String — パスワードです。
 
charset:String (default = null) — リモート資格情報をエンコードする際に使用する文字セットエンコーディングです。デフォルトは null で、旧式文字セットの ISO-Latin-1 を示します。現在サポートされているその他のオプションは "UTF-8" のみです。

イベントの詳細
acknowledge イベント
イベントオブジェクトの型: mx.messaging.events.MessageAckEvent
プロパティ MessageAckEvent.type = mx.messaging.events.MessageAckEvent.ACKNOWLEDGE

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

関連項目





 

 

このページに新しいコメントが追加された場合に、電子メールでの通知を希望する。 | コメントレポート

現在のページ: http://livedocs.adobe.com/flex/3_jp/langref/mx/messaging/MessageAgent.html