| Package | mx.utils | 
| Class | public dynamic class ObjectProxy | 
| Inheritance | ObjectProxy  Proxy | 
| Implements | IExternalizable, IPropertyChangeNotifier | 
| Subclasses | DataItem, ManagedObjectProxy | 
| Language Version: | ActionScript 3.0 | 
| Product Version: | Flex 3 | 
| Runtime Versions: | Flash Player 9, AIR 1.1 | 
addEventListener() method.
 
  | Property | Defined By | ||
|---|---|---|---|
| dispatcher : EventDispatcher 
      A reference to the EventDispatcher for this proxy. | ObjectProxy | ||
| notifiers : Object 
      A hashmap of property change notifiers that this proxy is 
      listening for changes from; the key of the map is the property name. | ObjectProxy | ||
| object : Object [read-only] 
      The object being proxied. | ObjectProxy | ||
| propertyList : Array 
      Contains a list of all of the property names for the proxied object. | ObjectProxy | ||
| proxyClass : Class 
      Indicates what kind of proxy to create
      when proxying complex properties. | ObjectProxy | ||
| type : QName 
      The qualified type name associated with this object. | ObjectProxy | ||
| Method | Defined By | ||
|---|---|---|---|
| 
      Initializes this proxy with the specified object, id and proxy depth. | ObjectProxy | ||
| addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void 
      Registers an event listener object  
      so that the listener receives notification of an event. | ObjectProxy | ||
| 
      Dispatches an event into the event flow. | ObjectProxy | ||
| 
      Checks whether there are any event listeners registered 
      for a specific type of event. | ObjectProxy | ||
| 
      Called when a complex property is updated. | ObjectProxy | ||
| 
      Since Flex only uses ObjectProxy to wrap anonymous objects,
      the server flex.messaging.io.ObjectProxy instance serializes itself
      as a Map that will be returned as a plain ActionScript object. | ObjectProxy | ||
| 
      Removes an event listener. | ObjectProxy | ||
| 
      Checks whether an event listener is registered with this object 
      or any of its ancestors for the specified event type. | ObjectProxy | ||
| 
      Since Flex only serializes the inner ActionScript object that it wraps,
      the server flex.messaging.io.ObjectProxy populates itself
      with this anonymous object's contents and appears to the user
      as a Map. | ObjectProxy | ||
| Method | Defined By | ||
|---|---|---|---|
| [override] 
      Returns the value of the proxied object's method with the specified name. | ObjectProxy | ||
| [override] 
      Deletes the specified property on the proxied object and
      sends notification of the delete to the handler. | ObjectProxy | ||
| 
      Provides a place for subclasses to override how a complex property that
      needs to be either proxied or daisy chained for event bubbling is managed. | ObjectProxy | ||
| [override] 
      Returns the specified property value of the proxied object. | ObjectProxy | ||
| [override] 
      Updates the specified property on the proxied object
      and sends notification of the update to the handler. | ObjectProxy | ||
| 
      This method creates an array of all of the property names for the 
      proxied object. | ObjectProxy | ||
| dispatcher | property | 
protected var dispatcher:EventDispatcher| Language Version: | ActionScript 3.0 | 
| Product Version: | Flex 3 | 
| Runtime Versions: | Flash Player 9, AIR 1.1 | 
A reference to the EventDispatcher for this proxy.
| notifiers | property | 
protected var notifiers:Object| Language Version: | ActionScript 3.0 | 
| Product Version: | Flex 3 | 
| Runtime Versions: | Flash Player 9, AIR 1.1 | 
A hashmap of property change notifiers that this proxy is listening for changes from; the key of the map is the property name.
| object | property | 
object:Object  [read-only] | Language Version: | ActionScript 3.0 | 
| Product Version: | Flex 3 | 
| Runtime Versions: | Flash Player 9, AIR 1.1 | 
The object being proxied.
Implementation
    object_proxy function get object():Object| propertyList | property | 
protected var propertyList:Array| Language Version: | ActionScript 3.0 | 
| Product Version: | Flex 3 | 
| Runtime Versions: | Flash Player 9, AIR 1.1 | 
      Contains a list of all of the property names for the proxied object.
      Descendants need to fill this list by overriding the
      setupPropertyList() method.
      
      
| proxyClass | property | 
protected var proxyClass:Class| Language Version: | ActionScript 3.0 | 
| Product Version: | Flex 3 | 
| Runtime Versions: | Flash Player 9, AIR 1.1 | 
Indicates what kind of proxy to create when proxying complex properties. Subclasses should assign this value appropriately.
| type | property | 
type:QName| Language Version: | ActionScript 3.0 | 
| Product Version: | Flex 3 | 
| Runtime Versions: | Flash Player 9, AIR 1.1 | 
The qualified type name associated with this object.
Implementation
    object_proxy function get type():QName    object_proxy function set type(value:QName):void| uid | property | 
| ObjectProxy | () | Constructor | 
public function ObjectProxy(item:Object = null, uid:String = null, proxyDepth:int = -1)| Language Version: | ActionScript 3.0 | 
| Product Version: | Flex 3 | 
| Runtime Versions: | Flash Player 9, AIR 1.1 | 
Initializes this proxy with the specified object, id and proxy depth.
Parameters| item:Object(default =null)— Object to proxy.
      If no item is specified, an anonymous object will be constructed
      and assigned. | |
| uid:String(default =null)— String containing the unique id
      for this object instance.
      Required for IPropertyChangeNotifier compliance as every object must 
      provide a unique way of identifying it.
      If no value is specified, a random id will be assigned. | |
| proxyDepth:int(default =-1)— An integer indicating how many levels in a complex
      object graph should have a proxy created during property access.
      The default is -1, meaning "proxy to infinite depth". | 
Example
How to use this example
      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 | () | method | 
 public function addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void| Language Version: | ActionScript 3.0 | 
| Product Version: | Flex 3 | 
| Runtime Versions: | Flash Player 9, AIR 1.1 | 
      Registers an event listener object  
      so that the listener receives notification of an event. 
      For more information, including descriptions of the parameters see 
      addEventListener() in the 
      flash.events.EventDispatcher class.
     
      
Parameters
| type:String— The type of event. | |
| listener:Function— The listener function that processes the event. This function must accept
      an Event object as its only parameter and must return nothing. | |
| useCapture:Boolean(default =false)— Determines whether the listener works in the capture phase or the 
      target and bubbling phases. IfuseCaptureis set totrue, 
      the listener processes the event only during the capture phase and not in the 
      target or bubbling phase. IfuseCaptureisfalse, the
      listener processes the event only during the target or bubbling phase. To listen for
      the event in all three phases, calladdEventListenertwice, once withuseCaptureset totrue, then again withuseCaptureset tofalse. | |
| priority:int(default =0)— The priority level of the event listener. | |
| useWeakReference:Boolean(default =false)— Determines whether the reference to the listener is strong or
      weak. A strong reference (the default) prevents your listener from being garbage-collected.
      A weak reference does not. | 
Related API Elements
| callProperty | () | method | 
override flash_proxy function callProperty(name:*, ... rest):*| Language Version: | ActionScript 3.0 | 
| Product Version: | Flex 3 | 
| Runtime Versions: | Flash Player 9, AIR 1.1 | 
Returns the value of the proxied object's method with the specified name.
Parameters
| name:*— The name of the method being invoked. | |
| ... rest— An array specifying the arguments to the
      called method. | 
| *— The return value of the called method. | 
| deleteProperty | () | method | 
override flash_proxy function deleteProperty(name:*):Boolean| Language Version: | ActionScript 3.0 | 
| Product Version: | Flex 3 | 
| Runtime Versions: | Flash Player 9, AIR 1.1 | 
Deletes the specified property on the proxied object and sends notification of the delete to the handler.
Parameters
| name:*— Typically a string containing the name of the property,
      or possibly a QName where the property name is found by 
      inspecting thelocalNameproperty. | 
| Boolean— A Boolean indicating if the property was deleted. | 
| dispatchEvent | () | method | 
 public function dispatchEvent(event:Event):Boolean| Language Version: | ActionScript 3.0 | 
| Product Version: | Flex 3 | 
| Runtime Versions: | Flash Player 9, AIR 1.1 | 
Dispatches an event into the event flow. For more information, see the flash.events.EventDispatcher class.
Parameters
| event:Event— The Event object that is dispatched into the event flow. If the 
      event is being redispatched, a clone of the event is created automatically. 
      After an event is dispatched, its target property cannot be changed, so you 
      must create a new copy of the event for redispatching to work. | 
| Boolean— Returnstrueif the event was successfully dispatched. 
      A value 
      offalseindicates failure or thatpreventDefault()was called on the event. | 
Related API Elements
| getComplexProperty | () | method | 
 object_proxy function getComplexProperty(name:*, value:*):*| Language Version: | ActionScript 3.0 | 
| Product Version: | Flex 3 | 
| Runtime Versions: | Flash Player 9, AIR 1.1 | 
Provides a place for subclasses to override how a complex property that needs to be either proxied or daisy chained for event bubbling is managed.
Parameters
| name:*— Typically a string containing the name of the property,
      or possibly a QName where the property name is found by 
      inspecting thelocalNameproperty. | |
| value:*— The property value. | 
| *— The property value or an instance ofObjectProxy. | 
| getProperty | () | method | 
override flash_proxy function getProperty(name:*):*| Language Version: | ActionScript 3.0 | 
| Product Version: | Flex 3 | 
| Runtime Versions: | Flash Player 9, AIR 1.1 | 
Returns the specified property value of the proxied object.
Parameters
| name:*— Typically a string containing the name of the property,
      or possibly a QName where the property name is found by 
      inspecting thelocalNameproperty. | 
| *— The value of the property.
      In some instances this value may be an instance ofObjectProxy. | 
| hasEventListener | () | method | 
 public function hasEventListener(type:String):Boolean| Language Version: | ActionScript 3.0 | 
| Product Version: | Flex 3 | 
| Runtime Versions: | Flash Player 9, AIR 1.1 | 
Checks whether there are any event listeners registered for a specific type of event. This allows you to determine where an object has altered handling of an event type in the event flow hierarchy. For more information, see the flash.events.EventDispatcher class.
Parameters
| type:String— The type of event | 
| Boolean— Returnstrueif a listener of the specified type is 
      registered;falseotherwise. | 
Related API Elements
| propertyChangeHandler | () | method | 
 public function propertyChangeHandler(event:PropertyChangeEvent):void| Language Version: | ActionScript 3.0 | 
| Product Version: | Flex 3 | 
| Runtime Versions: | Flash Player 9, AIR 1.1 | 
Called when a complex property is updated.
Parameters
| event:PropertyChangeEvent— An event object that has changed. | 
| readExternal | () | method | 
 public function readExternal(input:IDataInput):void| Language Version: | ActionScript 3.0 | 
| Product Version: | Flex 3 | 
| Runtime Versions: | Flash Player 9, AIR 1.1 | 
Since Flex only uses ObjectProxy to wrap anonymous objects, the server flex.messaging.io.ObjectProxy instance serializes itself as a Map that will be returned as a plain ActionScript object. You can then set the object_proxy object property to this value.
Parameters
| input:IDataInput— The source object from which the ObjectProxy is
      deserialized. | 
| removeEventListener | () | method | 
 public function removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void| Language Version: | ActionScript 3.0 | 
| Product Version: | Flex 3 | 
| Runtime Versions: | Flash Player 9, AIR 1.1 | 
Removes an event listener. If there is no matching listener registered with the EventDispatcher object, a call to this method has no effect. For more information, see the flash.events.EventDispatcher class.
Parameters
| type:String— The type of event. | |
| listener:Function— The listener object to remove. | |
| useCapture:Boolean(default =false)— Specifies whether the listener was registered for the capture 
      phase or the target and bubbling phases. If the listener was registered for both 
      the capture phase and the target and bubbling phases, two calls toremoveEventListener()are required to remove both, one call withuseCaptureset totrue, and another call withuseCaptureset tofalse. | 
Related API Elements
| setProperty | () | method | 
override flash_proxy function setProperty(name:*, value:*):void| Language Version: | ActionScript 3.0 | 
| Product Version: | Flex 3 | 
| Runtime Versions: | Flash Player 9, AIR 1.1 | 
Updates the specified property on the proxied object and sends notification of the update to the handler.
Parameters
| name:*— Object containing the name of the property that
      should be updated on the proxied object. | |
| value:*— Value that should be set on the proxied object. | 
| setupPropertyList | () | method | 
 protected function setupPropertyList():void| Language Version: | ActionScript 3.0 | 
| Product Version: | Flex 3 | 
| Runtime Versions: | Flash Player 9, AIR 1.1 | 
      This method creates an array of all of the property names for the 
      proxied object.
      Descendants must override this method if they wish to add more 
      properties to this list.
      Be sure to call super.setupPropertyList before making any
      changes to the propertyList property.
      
      
| willTrigger | () | method | 
 public function willTrigger(type:String):Boolean| Language Version: | ActionScript 3.0 | 
| Product Version: | Flex 3 | 
| Runtime Versions: | Flash Player 9, AIR 1.1 | 
      Checks whether an event listener is registered with this object 
      or any of its ancestors for the specified event type. 
      This method returns true if an event listener is triggered 
      during any phase of the event flow when an event of the specified 
      type is dispatched to this object or any of its descendants.
      For more information, see the flash.events.EventDispatcher class.
     
      
Parameters
| type:String— The type of event. | 
| Boolean— Returnstrueif a listener of the specified type will 
      be triggered;falseotherwise. | 
Related API Elements
| writeExternal | () | method | 
 public function writeExternal(output:IDataOutput):void| Language Version: | ActionScript 3.0 | 
| Product Version: | Flex 3 | 
| Runtime Versions: | Flash Player 9, AIR 1.1 | 
Since Flex only serializes the inner ActionScript object that it wraps, the server flex.messaging.io.ObjectProxy populates itself with this anonymous object's contents and appears to the user as a Map.
Parameters
| output:IDataOutput— The source object from which the ObjectProxy is
      deserialized. | 
Thu Dec 4 2014, 05:50 PM -08:00