パッケージmx.utils
クラスpublic dynamic class ObjectProxy
継承ObjectProxy Inheritance Proxy Inheritance Object
実装 IExternalizable, IPropertyChangeNotifier

このクラスは、このプロキシによって管理されるアイテムの変更を追跡する機能を提供します。addEventListener() メソッドを使用することによって、任意の数のオブジェクトが、このオブジェクトでの変更を「リッスン」できます。



パブリックプロパティ
 プロパティ定義元
 Inheritedconstructor : Object
指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクタ関数への参照です。
Object
 Inheritedprototype : Object
[静的] クラスまたは関数オブジェクトのプロトタイプオブジェクトへの参照です。
Object
  uid : String
このオブジェクトの一意の ID です。
ObjectProxy
プロテクトプロパティ
 プロパティ定義元
  dispatcher : EventDispatcher
このプロキシの EventDispatcher への参照です。
ObjectProxy
  notifiers : Object
このプロキシが変更をリッスンしているプロパティ変更通知者のハッシュマップ。このマップのキーはプロパティ名です。
ObjectProxy
  object : Object
[読み取り専用] プロキシされているオブジェクトです。
ObjectProxy
  propertyList : Array
プロキシになるオブジェクトのプロパティ名すべてのリストが含まれています。
ObjectProxy
  proxyClass : Class
複合プロパティをプロキシする場合に作成するプロキシの種類を示します。
ObjectProxy
  type : QName
このオブジェクトに関連付けられた修飾型名です。
ObjectProxy
パブリックメソッド
 メソッド定義元
  
ObjectProxy(item:Object = null, uid:String = null, proxyDepth:int = -1)
指定したオブジェクト、ID、およびプロキシの深さでこのプロキシを初期化します。
ObjectProxy
  
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
リスナーがイベントの通知を受け取るように、イベントリスナーオブジェクトを登録します。
ObjectProxy
  
イベントをイベントフローに送出します。
ObjectProxy
  
特定のタイプのイベントに対して登録されたイベントリスナーがあるかどうかをチェックします。
ObjectProxy
 Inherited
オブジェクトに指定されたプロパティが定義されているかどうかを示します。
Object
 Inherited
Object クラスのインスタンスが、パラメータとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。
Object
  
複合プロパティが更新されたときに呼び出されます。
ObjectProxy
 Inherited
指定されたプロパティが存在し、列挙できるかどうかを示します。
Object
  
Flex では ObjectProxy のみを使用して匿名オブジェクトをラップするため、サーバー flex.messaging.io.ObjectProxy インスタンスはそれ自体を Map として直列化し、その Map がプレーン ActionScript オブジェクトとして返されます。
ObjectProxy
  
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
イベントリスナーを削除します。
ObjectProxy
 Inherited
ループ処理に対するダイナミックプロパティの可用性を設定します。
Object
 Inherited
指定されたオブジェクトのストリング表現を返します。
Object
 Inherited
指定されたオブジェクトのプリミティブな値を返します。
Object
  
指定されたイベントタイプについて、このオブジェクトまたはその祖先にイベントリスナーが登録されているかどうかをチェックします。
ObjectProxy
  
Flex ではラップする内部 ActionScript オブジェクトのみを直列化するため、サーバー flex.messaging.io.ObjectProxy はこの匿名オブジェクトの内容で設定され、Map としてユーザーに表示されます。
ObjectProxy
プロテクトメソッド
 メソッド定義元
  
callProperty(name:*, ... rest):*
[override] プロキシになるオブジェクトについて、指定された名前のメソッドの値を返します。
ObjectProxy
  
[override] プロキシになるオブジェクトで指定されたプロパティを削除し、削除通知をハンドラに送信します。
ObjectProxy
  
getComplexProperty(name:*, value:*):*
イベントバブリングのプロキシまたはデイジーチェーンになる必要がある複雑なプロパティの管理方法をサブクラスがオーバーライドする場所を提供します。
ObjectProxy
  
[override] プロキシになるオブジェクトの指定されたプロパティ値を返します。
ObjectProxy
  
setProperty(name:*, value:*):void
[override] プロキシになるオブジェクトで指定されたプロパティを更新し、更新通知をハンドラに送信します。
ObjectProxy
  
このメソッドは、プロキシになるオブジェクトのプロパティ名すべての配列を作成します。
ObjectProxy
プロパティの詳細
dispatcherプロパティ
protected var dispatcher:EventDispatcher

このプロキシの EventDispatcher への参照です。

notifiersプロパティ 
protected var notifiers:Object

このプロキシが変更をリッスンしているプロパティ変更通知者のハッシュマップ。このマップのキーはプロパティ名です。

objectプロパティ 
object:Object  [読み取り専用]

プロキシされているオブジェクトです。



実装
    object_proxy function get object():Object
propertyListプロパティ 
protected var propertyList:Array

プロキシになるオブジェクトのプロパティ名すべてのリストが含まれています。子孫は、setupPropertyList() メソッドをオーバーライドして、このリストに入力する必要があります。

proxyClassプロパティ 
protected var proxyClass:Class

複合プロパティをプロキシする場合に作成するプロキシの種類を示します。この値はサブクラスにより適宜割り当てられる必要があります。

typeプロパティ 
type:QName

このオブジェクトに関連付けられた修飾型名です。



実装
    object_proxy function get type():QName
    object_proxy function set type(value:QName):void
uidプロパティ 
uid:String

このオブジェクトの一意の ID です。



実装
    public function get uid():String
    public function set uid(value:String):void
コンストラクタの詳細
ObjectProxy()コンストラクタ
public function ObjectProxy(item:Object = null, uid:String = null, proxyDepth:int = -1)

指定したオブジェクト、ID、およびプロキシの深さでこのプロキシを初期化します。

パラメータ
item:Object (default = null) — プロキシするオブジェクトです。アイテムが指定されていない場合は、匿名オブジェクトが作成されて割り当てられます。
 
uid:String (default = null) — このオブジェクトインスタンスの一意の ID を含むストリングです。すべてのオブジェクトは固有の識別方法を提供しなければならないため、PropertyChangeNotifier に準拠するために必要です。値が指定されていない場合は、任意の ID が割り当てられます。
 
proxyDepth:int (default = -1) — 複合オブジェクトグラフで、プロパティへのアクセス中にプロキシを作成する必要のあるレベル数を示す整数です。デフォルトは -1 で、"無限の深さまでのプロキシ" を意味します。


例の使用法
      import mx.events.PropertyChangeEvent;
      import mx.utils.ObjectUtil;
      import mx.utils.ObjectProxy;
      import mx.utils.StringUtil;
           var a:Object = { name: "Tyler", age: 5, ssnum: "555-55-5555" };
      var p:ObjectProxy = new ObjectProxy(a);
      p.addEventListener(PropertyChangeEvent.PROPERTY_CHANGE, updateHandler);
      p.name = "Jacey";
      p.age = 2;
      delete p.ssnum;
           // handler function
      function updateHandler(event:PropertyChangeEvent):void
      {
          trace(StringUtil.substitute("updateHandler('{0}', {1}, {2}, {3}, '{4}')",
                                         event.kind,
                                         event.property,
                                         event.oldValue,
                                         event.newValue,
                                         event.target.uid));
      }
           // trace output
      updateHandler('opUpdate', name, Jacey, '698AF8CB-B3D9-21A3-1AFFDGHT89075CD2')
      updateHandler('opUpdate', age, 2, '698AF8CB-B3D9-21A3-1AFFDGHT89075CD2')
      updateHandler('opDelete', ssnum, null, '698AF8CB-B3D9-21A3-1AFFDGHT89075CD2')
      
メソッドの詳細
addEventListener()メソッド
public function addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void

リスナーがイベントの通知を受け取るように、イベントリスナーオブジェクトを登録します。パラメータの説明を含む詳細については、flash.events.EventDispatcher クラスの addEventListener() を参照してください。

パラメータ

type:String
 
listener:Function
 
useCapture:Boolean (default = false)
 
priority:int (default = 0)
 
useWeakReference:Boolean (default = false)

関連項目

callProperty()メソッド 
override flash_proxy function callProperty(name:*, ... rest):*

プロキシになるオブジェクトについて、指定された名前のメソッドの値を返します。

パラメータ

name:* — 呼び出されるメソッドの名前です。
 
... rest — 呼び出されるメソッドの引数を指定する配列です。

戻り値
* — 呼び出したメソッドの戻り値です。
deleteProperty()メソッド 
override flash_proxy function deleteProperty(name:*):Boolean

プロキシになるオブジェクトで指定されたプロパティを削除し、削除通知をハンドラに送信します。

パラメータ

name:* — 通常は、プロパティの名前を含むストリングです。localName プロパティの検証でプロパティ名が検出された場合は、QName になります。

戻り値
Boolean — プロパティが削除されたかどうかを示すブール値です。
dispatchEvent()メソッド 
public function dispatchEvent(event:Event):Boolean

イベントをイベントフローに送出します。詳細については、flash.events.EventDispatcher クラスを参照してください。

パラメータ

event:Event — イベントフローに送出されるイベントオブジェクトです。イベントが再度送出されると、イベントのクローンが自動的に作成されます。イベントが送出された後にそのイベントの target プロパティは変更できないため、再送出処理のためにはイベントの新しいコピーを作成する必要があります。

戻り値
Boolean — マトリックスが正常に反転された場合、true を返します。値が false の場合、イベントの送出に失敗したか、イベントで preventDefault() が呼び出されたことを示します。

関連項目

getComplexProperty()メソッド 
object_proxy function getComplexProperty(name:*, value:*):*

イベントバブリングのプロキシまたはデイジーチェーンになる必要がある複雑なプロパティの管理方法をサブクラスがオーバーライドする場所を提供します。

パラメータ

name:* — 通常は、プロパティの名前を含むストリングです。localName プロパティの検証でプロパティ名が検出された場合は、QName になります。
 
value:* — プロパティの値です。

戻り値
*ObjectProxy のプロパティ値またはインスタンスです。
getProperty()メソッド 
override flash_proxy function getProperty(name:*):*

プロキシになるオブジェクトについて、指定されたプロパティ値を返します。

パラメータ

name:* — 通常は、プロパティの名前を含むストリングです。localName プロパティの検証でプロパティ名が検出された場合は、QName になります。

戻り値
* — プロパティの値です。 インスタンスによっては、この値は ObjectProxy のインスタンスになる場合があります。
hasEventListener()メソッド 
public function hasEventListener(type:String):Boolean

特定のタイプのイベントに対して登録されたイベントリスナーがあるかどうかをチェックします。これにより、オブジェクトがイベントタイプの処理をイベントフロー階層のどこで変更したかを判断できます。詳細については、flash.events.EventDispatcher クラスを参照してください。

パラメータ

type:String — イベントのタイプです。

戻り値
Boolean — 指定したタイプのリスナーが登録されている場合は true、それ以外の場合は false を返します。

関連項目

propertyChangeHandler()メソッド 
public function propertyChangeHandler(event:PropertyChangeEvent):void

複合プロパティが更新されたときに呼び出されます。

パラメータ

event:PropertyChangeEvent — 変更されたイベント オブジェクトです。

readExternal()メソッド 
public function readExternal(input:IDataInput):void

Flex では ObjectProxy のみを使用して匿名オブジェクトをラップするため、サーバー flex.messaging.io.ObjectProxy インスタンスはそれ自体を Map として直列化し、その Map がプレーン ActionScript オブジェクトとして返されます。この値に、object_proxy オブジェクトプロパティを設定できます。

パラメータ

input:IDataInput — ObjectProxy が非直列化されるソースオブジェクトです。

removeEventListener()メソッド 
public function removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void

イベントリスナーを削除します。対応するリスナーが EventDispatcher オブジェクトに登録されていない場合は、このメソッドを呼び出しても効果はありません。詳細については、flash.events.EventDispatcher クラスを参照してください。

パラメータ

type:String — イベントのタイプです。
 
listener:Function — 削除するリスナーオブジェクトです。
 
useCapture:Boolean (default = false) — リスナーが、キャプチャ段階、またはターゲットおよびバブリング段階に対して登録されたかどうかを示します。リスナーがキャプチャ段階だけでなくターゲット段階とバブリング段階にも登録されている場合は、removeEventListener() を 2 回呼び出して両方のリスナーを削除する必要があります。1 回は useCapturetrue に設定し、もう 1 回は useCapturefalse に設定する必要があります。

関連項目

setProperty()メソッド 
override flash_proxy function setProperty(name:*, value:*):void

プロキシになるオブジェクトで指定されたプロパティを更新し、更新通知をハンドラに送信します。

パラメータ

name:* — プロキシになるオブジェクトで更新するプロパティの名前を含むオブジェクトです。
 
value:* — プロキシになるオブジェクトに設定する値です。

setupPropertyList()メソッド 
protected function setupPropertyList():void

このメソッドは、プロキシになるオブジェクトのプロパティ名すべての配列を作成します。このリストにプロパティを追加する場合は、子孫でこのメソッドをオーバーライドする必要があります。必ず、super.setupPropertyList を呼び出してから propertyList プロパティを変更してください。

willTrigger()メソッド 
public function willTrigger(type:String):Boolean

指定されたイベントタイプについて、この オブジェクトまたはその祖先にイベントリスナーが登録されているかどうかを確認します。指定されたタイプのイベントがこの オブジェクトまたはその子孫に送出されたときに、イベントリスナーがイベントフローの任意の段階でトリガされる場合、このメソッドは true を返します。詳細については、flash.events.EventDispatcher クラスを参照してください。

パラメータ

type:String — イベントのタイプです。

戻り値
Boolean — 指定したタイプのリスナーがトリガされた場合は true、それ以外の場合は false を返します。

関連項目

writeExternal()メソッド 
public function writeExternal(output:IDataOutput):void

Flex ではラップする内部 ActionScript オブジェクトのみを直列化するため、サーバー flex.messaging.io.ObjectProxy はこの匿名オブジェクトの内容で設定され、Map としてユーザーに表示されます。

パラメータ

output:IDataOutput — ObjectProxy が非直列化されるソースオブジェクトです。





 

 

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

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