ActionScript® 3.0 Reference for the Adobe® Flash® Platform
Home  |  Show Packages and Classes List |  Packages  |  Classes  |  What's New  |  Index  |  Appendixes
com.adobe.icc.editors.model 

LetterModel  - AS3 Asset Composer

Packagecom.adobe.icc.editors.model
Classpublic class LetterModel
InheritanceLetterModel Inheritance AssetModel Inheritance EventDispatcher Inheritance Object

Language Version: ActionScript 3.0
Product Version: Asset Composer Building Block 9.5
Runtime Versions: AIR (unsupported), Flash Player 9, Flash Player 10

The LetterModel class represents the domain object for the assets of type Letter. Domain objects can be leveraged to build presentation on top of them. They ease the process of coding views by abstracting all the service calls and maintaining meaningful states.



Public Properties
 PropertyDefined By
 InheritedactiveEndDate : Date
The activeEndDate of the underlying value object.
AssetModel
 InheritedactiveStartDate : Date
The activeStartDate date of the underlying value object.
AssetModel
  assignments : IList
The consolidated list of variable and field assignments of this letter.
LetterModel
 Inheritedcategory : Category
The Category of the underlying value object.
AssetModel
 Inheritedcomment : String
The comment of the underlying value object.
AssetModel
 Inheritedconstructor : Object
A reference to the class object or constructor function for a given object instance.
Object
 InheritedcrxVersion : String
The crx version of the underlying value object.
AssetModel
  dataDictionary : DataDictionary
The typed DataDictionary object being used by this module.
LetterModel
  dataDictionaryName : String
The name of the data dictionary being used by this module.
LetterModel
  dataDictRegistryService : DataDictionaryRegistryService
[static] The infrastructure service for data dictionary mainly used internally for fetching data dictionary objects.
LetterModel
 Inheriteddescription : String
The description of the underlying value object.
AssetModel
 InheritedextendedProperties : Object
The extended properties of the underlying value object.
AssetModel
  fields : IList
[read-only] Returns the list of fields in the base layout and all the container layouts.
LetterModel
 Inheritedid : String
The GUID of the underlying value object.
AssetModel
 InheritedisNew : Boolean
Indicates if this Asset is new.
AssetModel
 InheritedlastChangeBy : String
The lastChangeBy property of the underlying value object.
AssetModel
  layout : LayoutModel
The domain object of the layout associated with this letter.
LetterModel
  modules : IList
[read-only] The list of data modules being referred in this letter.
LetterModel
 Inheritedname : String
The name of the underlying value object.
AssetModel
  postProcess : String
The postprocess to be executed.
LetterModel
  service : ILetterService
[static] The letter service instance that is used for saving/retrieving the letter on the server.
LetterModel
 Inheritedstate : int
The state of the underlying value object.
AssetModel
  staticEventDispatcher : IEventDispatcher
[static] [read-only]
LetterModel
 InheritedsubCategory : Category
The Sub-Category of the underlying value object.
AssetModel
  targetAreaAssignments : IList
The list of target area assignments in this Letter.
LetterModel
  testDataFile : FileModel
The test data file that supplies the preview data.
LetterModel
 Inheritedversion : int
The version of the underlying value object.
AssetModel
 Inheritedvo : *
The value object which this asset domain object is built atop.
AssetModel
Protected Properties
 PropertyDefined By
 InheritedisCopy : Boolean
Indicates that the object is a copy of an existing Asset.
AssetModel
 InheritedoldId : String
Id of the Asset which was cloned to create this copy.
AssetModel
 InheritedpreferencesManager : PreferencesManager
To manage user preferences for category, subcategory and data dictionary.
AssetModel
Public Methods
 MethodDefined By
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registers an event listener object with an EventDispatcher object so that the listener receives notification of an event.
EventDispatcher
  
Creates a copy of the domain object.
LetterModel
  
createFromVO(letterVO:Letter, fetchFromServer:Boolean = true):LetterModel
[static] Creates the domain object from the corresponding value object.
LetterModel
 Inherited
Dispatches an event into the event flow.
EventDispatcher
  
Returns the target area assignment domain object for the passed target area.
LetterModel
  
Returns the list of variables being referred in this letter.
LetterModel
 Inherited
Checks whether the EventDispatcher object has any listeners registered for a specific type of event.
EventDispatcher
 Inherited
Indicates whether an object has a specified property defined.
Object
  
Indicates whether the data dictionary defined for this letter has been referred in any of the assignments.
LetterModel
  
The function indicates whether data dictionary is referenced in the nested layout.
LetterModel
 Inherited
Indicates whether an instance of the Object class is in the prototype chain of the object specified as the parameter.
Object
 Inherited
Indicates whether the specified property exists and is enumerable.
Object
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
Removes a listener from the EventDispatcher object.
EventDispatcher
  
Resets all the assignment lists in this Letter.
LetterModel
  
[override] Saves the underlying value object on the server.
LetterModel
  
setDataDictionaryName(ddName:String, fetchDataDictionary:Boolean = true):void
Sets the data dictionary name to the one specified and also fetches the corresponding DataDictionary object from the server.
LetterModel
  
[static] This method lets you inject a custom implementation of the infrastructure data dictionary service.
LetterModel
  
setLayout(layout:LayoutModel, resetAssignments:Boolean = true):void
Sets the layout for this letter.
LetterModel
  
[static] This method lets you inject a custom implementation of the infrastructure letter service.
LetterModel
 Inherited
Sets the availability of a dynamic property for loop operations.
Object
 Inherited
Returns the string representation of this object, formatted according to locale-specific conventions.
Object
 Inherited
Returns the string representation of the specified object.
Object
 Inherited
Returns the primitive value of the specified object.
Object
 Inherited
Checks whether an event listener is registered with this EventDispatcher object or any of its ancestors for the specified event type.
EventDispatcher
Protected Methods
 MethodDefined By
  
Fetches the data dictionary corresponding to the name specified.
LetterModel
Events
 Event Summary Defined By
 Inherited[broadcast event] Dispatched when the Flash Player or AIR application gains operating system focus and becomes active.EventDispatcher
 Inherited[broadcast event] Dispatched when the Flash Player or AIR application operating loses system focus and is becoming inactive.EventDispatcher
  Dispatched when the letter has been completely fetched from the server.LetterModel
  Dispatched when a module assignment is added to any of the target area assignments.LetterModel
  Dispatched when a module assignment is removed from any of the target area assignments.LetterModel
  Dispatched when the letter is successfully saved.LetterModel
  Dispatched when a fault occurs while saving the letter.LetterModel
  Dispatched when the current letter is requested for save.LetterModel
Property Detail

assignments

property
assignments:IList

Language Version: ActionScript 3.0
Product Version: Asset Composer Building Block 9.5
Runtime Versions: AIR (unsupported), Flash Player 9, Flash Player 10

The consolidated list of variable and field assignments of this letter.

This property can be used as the source for data binding. When this property is modified, it dispatches the assignmentsChange event.



Implementation
    public function get assignments():IList
    public function set assignments(value:IList):void

dataDictionary

property 
dataDictionary:DataDictionary

Language Version: ActionScript 3.0
Product Version: Asset Composer Building Block 9.5
Runtime Versions: AIR (unsupported), Flash Player 9, Flash Player 10

The typed DataDictionary object being used by this module. Assigning a value to this property updated the dataDictionaryName as well but not the other way round.

This property can be used as the source for data binding. When this property is modified, it dispatches the ddChange event.



Implementation
    public function get dataDictionary():DataDictionary
    public function set dataDictionary(value:DataDictionary):void

dataDictionaryName

property 
dataDictionaryName:String

Language Version: ActionScript 3.0
Product Version: Asset Composer Building Block 9.5
Runtime Versions: AIR (unsupported), Flash Player 9, Flash Player 10

The name of the data dictionary being used by this module. Merely setting this property wouldn't cause the dataDictionary to be retrieved. If the dataDictionary needs to be updated, setDataDictionaryName() method must be used instead.

This property can be used as the source for data binding. When this property is modified, it dispatches the ddNameChange event.



Implementation
    public function get dataDictionaryName():String
    public function set dataDictionaryName(value:String):void

Related API Elements

setDataDictionaryName()

dataDictRegistryService

property 
dataDictRegistryService:DataDictionaryRegistryService

Language Version: ActionScript 3.0
Product Version: Asset Composer Building Block 9.5
Runtime Versions: AIR (unsupported), Flash Player 9, Flash Player 10

The infrastructure service for data dictionary mainly used internally for fetching data dictionary objects.

This property can be used as the source for data binding. When this property is modified, it dispatches the propertyChange event.



Implementation
    public static function get dataDictRegistryService():DataDictionaryRegistryService
    public static function set dataDictRegistryService(value:DataDictionaryRegistryService):void

fields

property 
fields:IList  [read-only]

Language Version: ActionScript 3.0
Product Version: Asset Composer Building Block 10
Runtime Versions: AIR (unsupported), Flash Player 10.2

Returns the list of fields in the base layout and all the container layouts.

This property can be used as the source for data binding. When this property is modified, it dispatches the fieldAssignmentsChange event.



Implementation
    public function get fields():IList

layout

property 
layout:LayoutModel

Language Version: ActionScript 3.0
Product Version: Asset Composer Building Block 9.5
Runtime Versions: AIR (unsupported), Flash Player 9, Flash Player 10

The domain object of the layout associated with this letter.

This property can be used as the source for data binding. When this property is modified, it dispatches the propertyChange event.



Implementation
    public function get layout():LayoutModel
    public function set layout(value:LayoutModel):void

modules

property 
modules:IList  [read-only]

Language Version: ActionScript 3.0
Product Version: Asset Composer Building Block 9.5
Runtime Versions: AIR (unsupported), Flash Player 9, Flash Player 10

The list of data modules being referred in this letter.



Implementation
    public function get modules():IList

postProcess

property 
postProcess:String

Language Version: ActionScript 3.0
Product Version: Asset Composer Building Block 9.5
Runtime Versions: AIR (unsupported), Flash Player 9, Flash Player 10

The postprocess to be executed.



Implementation
    public function get postProcess():String
    public function set postProcess(value:String):void

service

property 
service:ILetterService

Language Version: ActionScript 3.0
Product Version: Asset Composer Building Block 9.5
Runtime Versions: AIR (unsupported), Flash Player 9, Flash Player 10

The letter service instance that is used for saving/retrieving the letter on the server. This service is internally invoked by the LetterModel class for performing CRUD operations.

This property can be used as the source for data binding. When this property is modified, it dispatches the propertyChange event.



Implementation
    public static function get service():ILetterService
    public static function set service(value:ILetterService):void

staticEventDispatcher

property 
staticEventDispatcher:IEventDispatcher  [read-only]



Implementation
    public static function get staticEventDispatcher():IEventDispatcher

targetAreaAssignments

property 
targetAreaAssignments:IList

Language Version: ActionScript 3.0
Product Version: Asset Composer Building Block 9.5
Runtime Versions: AIR (unsupported), Flash Player 9, Flash Player 10

The list of target area assignments in this Letter.

This property can be used as the source for data binding. When this property is modified, it dispatches the targetAreaAssignmentsChange event.



Implementation
    public function get targetAreaAssignments():IList
    public function set targetAreaAssignments(value:IList):void

testDataFile

property 
testDataFile:FileModel

Language Version: ActionScript 3.0
Product Version: Asset Composer Building Block 9.5
Runtime Versions: AIR (unsupported), Flash Player 9, Flash Player 10

The test data file that supplies the preview data.



Implementation
    public function get testDataFile():FileModel
    public function set testDataFile(value:FileModel):void
Method Detail

copy

()method
public function copy():LetterModel

Language Version: ActionScript 3.0
Product Version: Asset Composer Building Block 9.5
Runtime Versions: AIR (unsupported), Flash Player 9, Flash Player 10

Creates a copy of the domain object.

Note that this is different than cloning via ObjectUtil.copy() since a "copied" object needs to be saved via a specific server api.

Returns
LetterModel — A copy of current domain object.

createFromVO

()method 
public static function createFromVO(letterVO:Letter, fetchFromServer:Boolean = true):LetterModel

Language Version: ActionScript 3.0
Product Version: Asset Composer Building Block 9.5
Runtime Versions: AIR (unsupported), Flash Player 9, Flash Player 10

Creates the domain object from the corresponding value object.

Value Objects are pure data entities mostly acting as parameters to the server apis. Domain objects are build atop to provide more meaningful business data and behavior thereby enabling faster and convenient UI view development. In some cases, the value objects could be shallow; for instance when obtained via Data Services. The complete value object could be requested by passing the fetchFromServer flag as true. In that case, the value object is obtained from the server via remoting call and the domain object shapes accordingly as the server response arrives.

Parameters

letterVO:Letter — The value object of the type Letter
 
fetchFromServer:Boolean (default = true) — Flag to indicate if the complete value object should be obtained from the server

Returns
LetterModel — The Letter domain object corresponding the passed letter value object.

fetchDataDictionary

()method 
protected function fetchDataDictionary():void

Language Version: ActionScript 3.0
Product Version: Asset Composer Building Block 9.5
Runtime Versions: AIR (unsupported), Flash Player 9, Flash Player 10

Fetches the data dictionary corresponding to the name specified.

getTargetAreaAssignment

()method 
public function getTargetAreaAssignment(area:*):com.adobe.icc.editors.model:TargetAreaAssignmentModel

Language Version: ActionScript 3.0
Product Version: Asset Composer Building Block 9.5
Runtime Versions: AIR (unsupported), Flash Player 9, Flash Player 10

Returns the target area assignment domain object for the passed target area.

Parameters

area:* — The target area

Returns
com.adobe.icc.editors.model:TargetAreaAssignmentModel — The target area assignment domain object

getVariables

()method 
public function getVariables():IList

Language Version: ActionScript 3.0
Product Version: Asset Composer Building Block 9.5
Runtime Versions: AIR (unsupported), Flash Player 9, Flash Player 10

Returns the list of variables being referred in this letter. This is a consolidated list of all the variables from all the referred modules.

Returns
IList — The list of variables being referred in this letter

isDDReferenced

()method 
public function isDDReferenced():Boolean

Language Version: ActionScript 3.0
Product Version: Asset Composer Building Block 9.5
Runtime Versions: AIR (unsupported), Flash Player 9, Flash Player 10

Indicates whether the data dictionary defined for this letter has been referred in any of the assignments.

Returns
Boolean — true, if the data dictionary is referred. false, otherwise.

isDDReferencedInNestedLayouts

()method 
public function isDDReferencedInNestedLayouts(targetAreaAssignments:IList):Boolean

Language Version: ActionScript 3.0
Product Version: Asset Composer Building Block 10.0
Runtime Versions: AIR (unsupported), Flash Player 10.2

The function indicates whether data dictionary is referenced in the nested layout.

Parameters

targetAreaAssignments:IList — list of target area assignments

Returns
Boolean — flag indicating whether data dictionary is referenced in the nested layout.

resetAssignmentLists

()method 
public function resetAssignmentLists(layout:LayoutModel):void

Language Version: ActionScript 3.0
Product Version: Asset Composer Building Block 9.5
Runtime Versions: AIR (unsupported), Flash Player 9, Flash Player 10

Resets all the assignment lists in this Letter.

Parameters

layout:LayoutModel — Layout Model

save

()method 
override public function save():void

Language Version: ActionScript 3.0
Product Version: Asset Composer Building Block 9.5
Runtime Versions: AIR (unsupported), Flash Player 9, Flash Player 10

Saves the underlying value object on the server.

Under the hood, separate calls are required for creating a new asset and copying or copying an existing one.

The save() method internally invokes the relevant server calls on the basis of its current state. The domain object constructed from the createFromVO() method would invoke the "update" api, the domain object starightaway instantiated on the client would inoke the "create" module api and the domain object obtained by the copy() method would internally call "copy api".

Invoking the save() implicitly invokes the validate() method to perform the necessary client side validations. Only when the client side validations are successful, is the actual save() call made. A save() method wouldn't proceed past the validation stage unless the object's state is made valid via user input or otherwise.

setDataDictionaryName

()method 
public function setDataDictionaryName(ddName:String, fetchDataDictionary:Boolean = true):void

Language Version: ActionScript 3.0
Product Version: Asset Composer Building Block 9.5
Runtime Versions: AIR (unsupported), Flash Player 9, Flash Player 10

Sets the data dictionary name to the one specified and also fetches the corresponding DataDictionary object from the server.

Parameters

ddName:String — Name of the data dictionary
 
fetchDataDictionary:Boolean (default = true) — flag to indicate if the corresponding data dictionary object needs to be fetched from the server.

setDataDictRegistryService

()method 
public static function setDataDictRegistryService(value:DataDictionaryRegistryService):void

Language Version: ActionScript 3.0
Product Version: Asset Composer Building Block 9.5
Runtime Versions: AIR (unsupported), Flash Player 9, Flash Player 10

This method lets you inject a custom implementation of the infrastructure data dictionary service. By default, the class DataDictionaryRegistryServiceImpl is used as the infrastructure service.

Parameters

value:DataDictionaryRegistryService — An implementation for DataDictionaryRegistryService.

setLayout

()method 
public function setLayout(layout:LayoutModel, resetAssignments:Boolean = true):void

Language Version: ActionScript 3.0
Product Version: Asset Composer Building Block 9.5
Runtime Versions: AIR (unsupported), Flash Player 9, Flash Player 10

Sets the layout for this letter.

Parameters

layout:LayoutModel — The domain object of the layout that needs to be associated with this Letter
 
resetAssignments:Boolean (default = true) — Whether the various assignment lists should be reset or not.

setLetterService

()method 
public static function setLetterService(value:ILetterService):void

Language Version: ActionScript 3.0
Product Version: Asset Composer Building Block 9.5
Runtime Versions: AIR (unsupported), Flash Player 9, Flash Player 10

This method lets you inject a custom implementation of the infrastructure letter service. By default, the class LetterServiceDelegate is used as the infrastructure service.

Parameters

value:ILetterService — An implementation for ILetterService.
Event Detail

fetchComplete

Event
Event Object Type: flash.events.Event
property Event.type = flash.events.Event

Language Version: ActionScript 3.0
Product Version: Asset Composer Building Block 9.5
Runtime Versions: AIR (unsupported), Flash Player 9, Flash Player 10

Dispatched when the letter has been completely fetched from the server.

moduleAssignmentAdd

Event  
Event Object Type: flash.events.Event
property Event.type = flash.events.Event

Language Version: ActionScript 3.0
Product Version: Asset Composer Building Block 9.5
Runtime Versions: AIR (unsupported), Flash Player 9, Flash Player 10

Dispatched when a module assignment is added to any of the target area assignments.

moduleAssignmentRemove

Event  
Event Object Type: flash.events.Event
property Event.type = flash.events.Event

Language Version: ActionScript 3.0
Product Version: Asset Composer Building Block 9.5
Runtime Versions: AIR (unsupported), Flash Player 9, Flash Player 10

Dispatched when a module assignment is removed from any of the target area assignments.

saveComplete

Event  
Event Object Type: com.adobe.icc.editors.events.AssetEvent
property AssetEvent.type = com.adobe.icc.editors.events.AssetEvent.SAVE_COMPLETE

Language Version: ActionScript 3.0
Product Version: Asset Composer Building Block 9.5
Runtime Versions: AIR (unsupported), Flash Player 9, Flash Player 10

Dispatched when the letter is successfully saved.

The AssetEvent.SAVE_COMPLETE constant defines the value of the type property of the event object for a saveComplete event.

The saveComplete event is dispatched when the domain object has been successfully saved on the server. Unlike the saving event, this is dispatched in an aysnchronous manner only after the server has responded with a result for the save api call.

This event can be used to stop UI animations indicating "save in progress" or to popup an info box indicating save success.

saveFault

Event  
Event Object Type: com.adobe.icc.editors.events.AssetEvent
property AssetEvent.type = com.adobe.icc.editors.events.AssetEvent.SAVE_FAULT

Language Version: ActionScript 3.0
Product Version: Asset Composer Building Block 9.5
Runtime Versions: AIR (unsupported), Flash Player 9, Flash Player 10

Dispatched when a fault occurs while saving the letter.

The AssetEvent.SAVE_FAULT constant defines the value of the type property of the event object for a saveFault event.

The saveFault event is dispatched when the server reports an error while saving the asset on the server. Unlike the saving event, this is dispatched in an aysnchronous manner only after the server has responded with a result for the save api call.

When this event is dispatched, the fault property contains the fault object encapsulating the error sent by the server. The fault property can be used to determine the faultCode and show an error message accordingly.

This event can be used to stop UI animations indicating "save in progress" or to popup an info box indicating save success.

saving

Event  
Event Object Type: com.adobe.icc.editors.events.AssetEvent
property AssetEvent.type = com.adobe.icc.editors.events.AssetEvent.SAVING

Language Version: ActionScript 3.0
Product Version: Asset Composer Building Block 9.5
Runtime Versions: AIR (unsupported), Flash Player 9, Flash Player 10

Dispatched when the current letter is requested for save. This event, being bubbling in nature, can be leveraged by the UI to display a progress bar or animation to indicate the save progress.

The AssetEvent.SAVING constant defines the value of the type property of the event object for a saving event.

The saving event is dispatched when the save() method has been called on the domain object. This event is dispatched before any server api is invoked but after the domain client validations are complete. This is because the actual save starts once the client validations are complete.

This event can be used to start a UI animation indicating "save in progress".