Packageorg.granite.tide
Interfacepublic interface IEntityManager extends flash.events.IEventDispatcher
ImplementorsBaseContext

IEntityManager is the interface for entity management (!) It is implemented by the Tide context



Public Properties
 PropertyDefined by
  meta_destination : String
[read-only] Return the remote Flex destination
IEntityManager
Public Methods
 MethodDefined by
  
meta_getEntityProperty(entity:IEntity, propName:String, value:*):*
Intercept a property getter
IEntityManager
  
meta_isEntityChanged(entity:IEntity, propName:String = null, value:* = null):Boolean
Check if entity has changed since last save point
IEntityManager
  
meta_isEntityPropertyChanged(entity:IEntity, propName:String, value:Object):Boolean
Check if entity property has been changed since last remote call
IEntityManager
  
meta_mergeExternal(obj:Object, previous:Object = null, expr:IExpression = null, parent:Object = null, propertyName:String = null, setter:Function = null, forceUpdate:Boolean = false):Object
Merge an object coming from the server in the context
IEntityManager
  
meta_objectEquals(obj1:Object, obj2:Object):Boolean
Equality for objects, using uid property when possible
IEntityManager
  
Discard changes of entity from last version received from the server
IEntityManager
  
meta_setEntityProperty(entity:IEntity, propName:String, oldValue:*, newValue:*):void
Intercept a property setter
IEntityManager
Property detail
meta_destinationproperty
meta_destination:String  [read-only]

Return the remote Flex destination

Implementation
    public function get meta_destination():String
Method detail
meta_getEntityProperty()method
public function meta_getEntityProperty(entity:IEntity, propName:String, value:*):*

Intercept a property getter

Parameters
entity:IEntity — intercepted entity
 
propName:String — intercepted property name
 
value:* — current value

Returns
*
meta_isEntityChanged()method 
public function meta_isEntityChanged(entity:IEntity, propName:String = null, value:* = null):Boolean

Check if entity has changed since last save point

Parameters
entity:IEntity — entity to restore
 
propName:String (default = null) — property name
 
value:* (default = null)

Returns
Boolean — entity is dirty
meta_isEntityPropertyChanged()method 
public function meta_isEntityPropertyChanged(entity:IEntity, propName:String, value:Object):Boolean

Check if entity property has been changed since last remote call

Parameters
entity:IEntity — entity to check
 
propName:String — property to check
 
value:Object — current value to compare with saved value

Returns
Boolean — true is value has been changed
meta_mergeExternal()method 
public function meta_mergeExternal(obj:Object, previous:Object = null, expr:IExpression = null, parent:Object = null, propertyName:String = null, setter:Function = null, forceUpdate:Boolean = false):Object

Merge an object coming from the server in the context

Parameters
obj:Object — external object
 
previous:Object (default = null) — previously existing object in the context (null if no existing object)
 
expr:IExpression (default = null) — current path from the context
 
parent:Object (default = null) — parent object for collections
 
propertyName:String (default = null) — property name of the current object in the parent object
 
setter:Function (default = null) — setter function for private property
 
forceUpdate:Boolean (default = false) — force update for externalized properties

Returns
Object — merged object (should === previous when previous not null)
meta_objectEquals()method 
public function meta_objectEquals(obj1:Object, obj2:Object):Boolean

Equality for objects, using uid property when possible

Parameters
obj1:Object — object
 
obj2:Object — object

Returns
Boolean — true when objects are instances of the same entity
meta_resetEntity()method 
public function meta_resetEntity(entity:IEntity):void

Discard changes of entity from last version received from the server

Parameters
entity:IEntity — entity to restore
meta_setEntityProperty()method 
public function meta_setEntityProperty(entity:IEntity, propName:String, oldValue:*, newValue:*):void

Intercept a property setter

Parameters
entity:IEntity — intercepted entity
 
propName:String — intercepted property name
 
oldValue:* — old value
 
newValue:* — new value