Package | mx.data |
Class | public class DataStore |
Inheritance | DataStore EventDispatcher Object |
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
commit()
method send only changes made to that
DataService.
When you use managed associations, the default changes so that all
DataService instances that share the same set of channels and have
the same value of the use-transactions flag share the same DataStore.
When you are sharing a DataStore, a single call to the commit()
method applies to all changes made by all DataService instances sharing that
DataStore.
The default changes because with managed associations, it is
possible that changes between destinations can have dependencies
so it is important to preserve the order of operations
on the client when sending messages to the server.
If you want to change the default, you can create your own DataStore
and manually assign it to the dataStore
property of one or more
DataService instances.
Do this when you first initialize your DataService, before you have
issued any other DataService api calls such as fill or getItem.
Note: All DataServices which share the same DataStore must be using the
same set of channels and the same setting for useTransactions
flag.
Settings that are not consistent will throw an error.
More examples
Property | Defined By | ||
---|---|---|---|
autoCommit : Boolean
If set to true, operations that modify the state managed by the
DataService are committed immediately. | DataStore | ||
autoCommitCollectionChanges : Boolean
When set to true, any changes made to a collection are committed
immediately if the autoCommit property is true. | DataStore | ||
autoCommitPropertyChanges : Boolean
When set to true and the autoCommit property
is set to true,
any property value change automatically leads to a "commit" for that
change. | DataStore | ||
autoConnect : Boolean
Indicates if this service should attempt to connect for any operations
that require a connection. | DataStore | ||
autoConnectInterval : int = 5000
Time interval in milliseconds to wait between attempts to connect to the
server when the autoConnect property is true. | DataStore | ||
autoMerge : Boolean
Controls how changes that other clients make are merged into this client's
current view of the data. | DataStore | ||
autoSaveCache : Boolean
The local cache of data and changes can be stored to disk. | DataStore | ||
cacheID : String
Provides access to the cache identifier for this service. | DataStore | ||
channelSet : ChannelSet
Provides access to the ChannelSet used by the this DataStore. | DataStore | ||
commitQueueMode : int
Controls when a committed batch of changes is sent to the server when you call
commit on a second batch while the client is still waiting for a reply from
a previously committed batch. | DataStore | ||
commitRequired : Boolean [read-only]
Indicates if there are pending updates that must be committed. | DataStore | ||
conflicts : Conflicts [read-only]
The list of conflicts for all managed items. | DataStore | ||
connected : Boolean [read-only]
Indicates whether the DataStore is connected. | DataStore | ||
constructor : Object
A reference to the class object or constructor function for a given object instance. | Object | ||
currentBatch : MessageBatch [read-only]
The current batch of changes waiting to be committed to the server
when you autoCommit=false. | DataStore | ||
destination : String [read-only]
The destination for this DataStore. | DataStore | ||
detectConflictsOnRefresh : Boolean = true
A flag you can set to disable conflict detection during the refresh/reconnect
operation. | DataStore | ||
encryptLocalCache : Boolean
Some local disk cache storage implementations support encyrption of
the stored data. | DataStore | ||
fallBackToLocalFill : Boolean
This flag determines whether the application should query against the
local store when it is not connected. | DataStore | ||
identifier : String
The identifier of this DataStore. | DataStore | ||
ignoreCollectionUpdates : Boolean
Indicates if changes to managed collections should be ignored instead of
being communicated to the server on a commit. | DataStore | ||
isInitialized : Boolean [read-only]
Indicates when this DataStore is initialized and ready for use. | DataStore | ||
mergeRequired : Boolean [read-only]
Indicates if there are any pending changes that must be
merged. | DataStore | ||
priority : int
The default message priority for the messages sent by the DataStore. | DataStore | ||
processingServerChanges : Boolean
Indicates whether or not pushed server changes are currently being merged
into the client's view of the managed objects. | DataStore | ||
prototype : Object [static]
A reference to the prototype object of a class or function object. | Object | ||
requestTimeout : int
Provides access to the request timeout in seconds for an operation. | DataStore | ||
restoreCommittedUnsentBatchesOnFault : Boolean = false
When the client receives an error processing a message, setting this
property to true causes it to "uncommit" any batches which you've committed
but have not yet been sent to the server. | DataStore | ||
saveCacheMinIntervalMillis : int = 0
This time interval can be set to reduce the frequency of how often the cache is saved. | DataStore | ||
throwErrorOnIDChange : Boolean = true
A flag you can set to false to restore the LiveCycle Data Services 2.6
behavior of logging an error but not throwing an error when the UID property is changed. | DataStore | ||
uncommittedBatches : ArrayCollection [read-only]
The list of MessageBatches which are currently uncommitted. | DataStore |
Method | Defined By | ||
---|---|---|---|
DataStore(destination:String, useTransactions:Boolean, adapter:DataServiceAdapter = null, offlineAdapter:DataServiceOfflineAdapter = null)
Normally, a DataStore is created automatically for you but you
can create your own DataStore and assign it to the dataStore property
of a DataService. | DataStore | ||
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 | ||
Commits pending changes for collections and items managed by this DataStore. | DataStore | ||
Indicates if there are pending updates on a particular object
that are waiting to be committed. | DataStore | ||
Forces a connection attempt by this service to the remote destination. | DataStore | ||
createBatch(itemsOrCollection:Array = null, cascadeCommit:Boolean = false, properties:Object = null):MessageBatch
Takes any changes specified by this operation, creates a new MessageBatch and
puts that batch into the uncommittedBatches list. | DataStore | ||
Forces all data services using this data store to be disconnected. | DataStore | ||
Dispatches an event into the event flow. | EventDispatcher | ||
This method will fill the specified ListCollectionView
with all cache identifiers previously used in the application. | DataStore | ||
Checks whether the EventDispatcher object has any listeners registered for a specific type
of event. | EventDispatcher | ||
Indicates whether an object has a specified property defined. | Object | ||
Initializes the DataStore which involves initialization of metadata of
all the attached ConcreteDataService instances. | DataStore | ||
Indicates whether an instance of the Object class is in the prototype chain of the object specified
as the parameter. | Object | ||
Log the user out from the current destination. | DataStore | ||
Merges any pending updates into the managed set of objects. | DataStore | ||
Indicates whether the specified property exists and is enumerable. | Object | ||
Refetch all data managed on the client. | DataStore | ||
Release all data managed on the client. | DataStore | ||
Removes a listener from the EventDispatcher object. | EventDispatcher | ||
Reverts all pending (uncommitted) changes for all DataServices
managed by this DataStore. | DataStore | ||
Reverts all pending (uncommitted) changes for any items in the specified
managed collection. | DataStore | ||
Set the credentials for this DataStore destination. | DataStore | ||
Sets the availability of a dynamic property for loop operations. | Object | ||
Set the credentials for the 3rd party of this DataStore destination. | DataStore | ||
Returns the string representation of this object, formatted according to locale-specific conventions. | Object | ||
Returns the string representation of the specified object. | Object | ||
Returns the primitive value of the specified object. | Object | ||
Checks whether an event listener is registered with this EventDispatcher object or any of
its ancestors for the specified event type. | EventDispatcher |
Event | Summary | Defined By | ||
---|---|---|---|---|
[broadcast event] Dispatched when the Flash Player or AIR application gains operating system focus and becomes active. | EventDispatcher | |||
Dispatched when a conflict is detected between either pending changes on this client and changes submitted by another client, or when changes submitted by this client result detect a conflict error at the remote destination. | DataStore | |||
[broadcast event] Dispatched when the Flash Player or AIR application operating loses system focus and is becoming inactive. | EventDispatcher | |||
The FaultEvent.FAULT event is dispatched when the commit call returns an error. | DataStore | |||
The ResultEvent.RESULT event is dispatched when the commit call successfully returns. | DataStore |
Constant | Defined By | ||
---|---|---|---|
CQ_AUTO : int = 1 [static]
Specifies to check for simple dependencies between any outstanding batches
and the next batch to commit. | DataStore | ||
CQ_NOWAIT : int = 3 [static]
Specifies to send the second batch immediately, not checking for dependencies. | DataStore | ||
CQ_ONE_AT_A_TIME : int = 0 [static]
Specifies to wait for a previous batch to complete before committing a new batch. | DataStore |
autoCommit | property |
autoCommit:Boolean
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
If set to true
, operations that modify the state managed by the
DataService are committed immediately. If set to false
, you
must explicitly call the commit()
method to send the changes to the server.
The default value is true.
Implementation
public function get autoCommit():Boolean
public function set autoCommit(value:Boolean):void
autoCommitCollectionChanges | property |
autoCommitCollectionChanges:Boolean
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
When set to true
, any changes made to a collection are committed
immediately if the autoCommit
property is true
.
When it is set to false
,
any add/remove operations you perform on a collection are not committed
immediately.
The default value is true.
Implementation
public function get autoCommitCollectionChanges():Boolean
public function set autoCommitCollectionChanges(value:Boolean):void
autoCommitPropertyChanges | property |
autoCommitPropertyChanges:Boolean
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
When set to true
and the autoCommit
property
is set to true
,
any property value change automatically leads to a "commit" for that
change.
If false
, changing the property on a VO will
not automatically cause a commit call. To commit an update, you instead
can call the commit()
method explicitly,
or you can call the DataManager.updateItem()
method
to commit changes to just that item.
The default value is true.
Implementation
public function get autoCommitPropertyChanges():Boolean
public function set autoCommitPropertyChanges(value:Boolean):void
autoConnect | property |
autoConnect:Boolean
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Indicates if this service should attempt to connect for any operations
that require a connection.
Operations such as fill()
, getItem()
,
and count()
attempt to connect
if the service is disconnected and autoConnect
is set
to true
.
Use this property to control occasionally connected application behavior.
Implementation
public function get autoConnect():Boolean
public function set autoConnect(value:Boolean):void
autoConnectInterval | property |
public var autoConnectInterval:int = 5000
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Time interval in milliseconds to wait between attempts to connect to the
server when the autoConnect
property is true
.
The default value is 5000.
autoMerge | property |
autoMerge:Boolean
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Controls how changes that other clients make are merged into this client's
current view of the data. If this property is false
, messages are
queued up until the application invokes the merge()
method explicitly.
If this property is true
, changes are applied as they come in. If the client
has pending uncommitted changes made to an item that conflict with the merged changes, a conflict
is generated and added to the list of unresolved conflicts for this client. You can listen for
change events on this property to be notified when a
merge needs to be applied.
Implementation
public function get autoMerge():Boolean
public function set autoMerge(value:Boolean):void
autoSaveCache | property |
autoSaveCache:Boolean
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
The local cache of data and changes can be stored to disk.
When autoSaveCache
is true
each time a change
is made or a remote request is returned that data will be saved to disk.
If there is a problem saving the data either because the disk is full
or write permissions have been denied a FaultEvent
will be
dispatched or a Fault
will be thrown.
Setting this value to false
(the default) will not save any
data or changes to disk.
To force the current data and changes to be saved locally use the
saveCache
method.
Implementation
public function get autoSaveCache():Boolean
public function set autoSaveCache(value:Boolean):void
Related API Elements
cacheID | property |
cacheID:String
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Provides access to the cache identifier for this service.
A cache identifier must be set prior to performing any operations that
require interaction with data stored locally on disk.
If a cache identifier is not set all cache methods and properties are
considered inconsistent DataServiceError
will be
thrown during any operation that requires data from the local disk.
This property is provides a unique "session" identifier for data stored
locally.
A developer must set this property to a unique value for the
application.
A value of null
or empty string is considered unset.
Implementation
public function get cacheID():String
public function set cacheID(value:String):void
channelSet | property |
channelSet:ChannelSet
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Provides access to the ChannelSet used by the this DataStore.
The ChannelSet can be manually constructed and assigned, or it will be
dynamically created to use the configured Channels for the
destinations
using this DataStore. The channelSet
should be the same for all DataService objects using the same DataStore.
Implementation
public function get channelSet():ChannelSet
public function set channelSet(value:ChannelSet):void
commitQueueMode | property |
commitQueueMode:int
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Controls when a committed batch of changes is sent to the server when you call commit on a second batch while the client is still waiting for a reply from a previously committed batch. If the batch is immediately sent to the server, it can cause problems if changes in this batch are dependent upon changes made by the server when committing the previous batch. For example, you may be updating an item created by the server in the first batch. If the server assigned id has not yet been received by the client, the update will not include the proper id for that item. If the second batch always waits for the first batch to complete, it can increase the time it makes to perform a series of changes that are time dependent (e.g. if you are updating a cursor position over and over again).
The default mode is CQ_AUTO. This mode checks for simple dependencies between any outstanding batches and the next batch to commit. If it sees that there are none, it sends the new batch immediately. If it sees that it has an update or a delete which depend upon an outstanding create, it holds the update/delete until the create completes. This imposes some overhead on each commit to check for dependencies but is typically a good compromise between the other two modes, CQ_NOWAIT and CQ_ONE_AT_A_TIME.
CQ_NOWAIT will send the second batch immediately, not checking for dependencies. You might use this mode if you are assigning ids for new objects on the client and need to overlap batches to achieve performance goals.
CQ_ONE_AT_A_TIME will always wait for a previous batch to complete before committing a new batch. This mode simplifies error handling logic by ensuring the server will not receive a batch of changes missing changes made by the server in handling the previous batch. It also ensures that if an error occurs handling one batch that the server won't receive a second batch until the errors for the first one are resolved on the client.
The default value is CQ_AUTO.
Implementation
public function get commitQueueMode():int
public function set commitQueueMode(value:int):void
commitRequired | property |
commitRequired:Boolean
[read-only] Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Indicates if there are pending updates that must be committed.
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 commitRequired():Boolean
conflicts | property |
conflicts:Conflicts
[read-only] Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
The list of conflicts for all managed items.
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 conflicts():Conflicts
connected | property |
connected:Boolean
[read-only] Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Indicates whether the DataStore is connected.
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 connected():Boolean
currentBatch | property |
currentBatch:MessageBatch
[read-only] Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
The current batch of changes waiting to be committed to the server
when you autoCommit=false
.
You can use this property to iterate through the
changes that will be applied when you call the commit()
method.
A batch can be committed or reverted independently of the other batches.
The entire set of uncommitted batches is stored in the uncommittedBatches
property.
The value of the currentBatch
property is always the last batch
in the uncommittedBatches
list.
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 currentBatch():MessageBatch
destination | property |
detectConflictsOnRefresh | property |
public var detectConflictsOnRefresh:Boolean = true
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
A flag you can set to disable conflict detection during the refresh/reconnect
operation.
In LiveCycle Data Services version 2.6.1,
conflict detection was not done on refresh so you can set this
to false
to restore the 2.6.1 behavior.
The default value is true.
encryptLocalCache | property |
encryptLocalCache:Boolean
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3.1 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Some local disk cache storage implementations support encyrption of the stored data. Setting this flag to true will enable encryption for local stores that do support it.
Implementation
public function get encryptLocalCache():Boolean
public function set encryptLocalCache(value:Boolean):void
fallBackToLocalFill | property |
fallBackToLocalFill:Boolean
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3.1 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
This flag determines whether the application should query against the
local store when it is not connected. By default when the offline adapter is
configured to support dynamic query execution, invoking fill()
will not query
the local store when the application is not connected. If fallBackToLocalFill is
set to true, then the local store queried as well when the application
is disconnected.
Implementation
public function get fallBackToLocalFill():Boolean
public function set fallBackToLocalFill(value:Boolean):void
identifier | property |
identifier:String
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
The identifier of this DataStore. This optional property is used with cache configuration to uniquely identify this DataStore. This value must be session independent, that is, you should not create this identifier at runtime using a method like UIDUtil.createUID() If this value is not assigned one is calculated based on server configuration values for the associated channels.
Implementation
public function get identifier():String
public function set identifier(value:String):void
ignoreCollectionUpdates | property |
ignoreCollectionUpdates:Boolean
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3.1 |
Runtime Versions: | Flash Player 9, AIR 1.5 |
Indicates if changes to managed collections should be ignored instead of being communicated to the server on a commit.
Implementation
public function get ignoreCollectionUpdates():Boolean
public function set ignoreCollectionUpdates(value:Boolean):void
isInitialized | property |
isInitialized:Boolean
[read-only] Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Indicates when this DataStore is initialized and ready for use. This property is only needed when working with a runtime configured application or one that needs access to locally cached data on disk.
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 isInitialized():Boolean
mergeRequired | property |
mergeRequired:Boolean
[read-only] Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Indicates if there are any pending changes that must be merged.
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 mergeRequired():Boolean
priority | property |
priority:int
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
The default message priority for the messages sent by the DataStore. The valid values are 0 to 9 (0 being lowest) and -1 means that the DataStore does not have a priority set. Note that if the message already has a priority defined, that takes precedence over this priority.
Implementation
public function get priority():int
public function set priority(value:int):void
processingServerChanges | property |
processingServerChanges:Boolean
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Indicates whether or not pushed server changes are currently being merged into the client's view of the managed objects. This happens at any time when autoMerge is true. If autoMerge is false, this will only be set when you are explictly calling the merge method. The point of this flag is to let you know the difference between an asynchronous server pushed changed and one made by the user in your set methods.
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 processingServerChanges():Boolean
public function set processingServerChanges(value:Boolean):void
requestTimeout | property |
requestTimeout:int
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Provides access to the request timeout in seconds for an operation. A value less than or equal to zero prevents request timeout.
Implementation
public function get requestTimeout():int
public function set requestTimeout(value:int):void
restoreCommittedUnsentBatchesOnFault | property |
public var restoreCommittedUnsentBatchesOnFault:Boolean = false
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
When the client receives an error processing a message, setting this
property to true
causes it to "uncommit" any batches which you've committed
but have not yet been sent to the server.
If you set the commitQueueMode
property to
ONE_AT_A_TIME
and set this property to true
,
you can only deal with one batches errors
at a time. Otherwise, it is possible to receive faults from a series of
faults which can make resolving them a bit more complicated.
The default value is false.
saveCacheMinIntervalMillis | property |
public var saveCacheMinIntervalMillis:int = 0
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
This time interval can be set to reduce the frequency of how often the cache is saved.
When the autoSaveCache
property is true
,
LiveCycle Data Services saves the cache after each change.
If you have a reasonable large cache, this can be expensive so you might want to reduce the
frequency in which the cache is saved.
If you set this property to 1000 milliseconds, the
cache is saved no more than once per second.
The default value is 0.
throwErrorOnIDChange | property |
public var throwErrorOnIDChange:Boolean = true
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
A flag you can set to false
to restore the LiveCycle Data Services 2.6
behavior of logging an error but not throwing an error when the UID property is changed.
The default value is true.
uncommittedBatches | property |
uncommittedBatches:ArrayCollection
[read-only] Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
The list of MessageBatches which are currently uncommitted.
To preserve data integrity, in general the order of operations should
not be altered so this list is read-only. You create a new batch by calling
the createBatch()
method.
This method adds a new batch to the end of the uncommittedBatches
list
and sets currentBatch
to be the last element in that list.
These properties are bindable so you can watch for the commitRequired
flag
in a particular batch to see if it has changes, or bind against the items
property to get the list of MessageCacheItems waiting to be committed as part
of that batch.
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 uncommittedBatches():ArrayCollection
DataStore | () | Constructor |
public function DataStore(destination:String, useTransactions:Boolean, adapter:DataServiceAdapter = null, offlineAdapter:DataServiceOfflineAdapter = null)
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Normally, a DataStore is created automatically for you but you
can create your own DataStore and assign it to the dataStore
property
of a DataService. To do this, you must ensure all data services
that share the same data store use the same channel set and have
the same value of the use-transactions
configuration setting.
Use this constructor to create a DataStore where the destination
parameter contains the destination of one of the DataServices using
this data store. This is just used to look up the channel set.
You also should provide the value for the use-transactions
flag for
this data store.
destination:String — A destination.
| |
useTransactions:Boolean — true to use transactions.
| |
adapter:DataServiceAdapter (default = null ) — The adapter.
| |
offlineAdapter:DataServiceOfflineAdapter (default = null ) — Offline adapter for local cache support.
|
commit | () | method |
public function commit(itemsOrCollections:Array = null, cascadeCommit:Boolean = false):mx.rpc:AsyncToken
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Commits pending changes for collections and items managed by this DataStore.
When the autoCommit
property is true
, transactions
are not used and you do not need to call this method.
To use transactions, set the autoCommit
property to
false
and call this method directly to commit a batch of changes.
You typically just call "commit()" with no arguments which will commit all pending
changes. You can supply optional arguments to commit a subset of the pending
changes.
You must resolve all outstanding conflicts before you can commit changes to any item in the DataStore.
If the assembler is configured to have use-transactions set to true, all changes are committed atomically. If any operation fails, none of the operations in the batch are applied. If use-transactions is set to false, the operations are each committed individually until a failure occurs at which point processing stops. Any changes that occur before the error are applied, any changes which occur after the error are not applied. When an error occurs when processing a batch, the changes are put back into the uncommitted queue. You need to call revertChanges if you want to remove the changes which caused the error.
By default, the commit method will commit all pending changes for all items which have been created, modified, and deleted for this DataStore. If you want to commit a subset of these changes, you can specify a combination of managed ArrayCollection instances and/or managed items which define the subset of changes you want included in the batch. For each array collection you specify, any changes made either to the membership or order of items in that array collection or any changes to items in that array collection are committed. You can also specify a list of individual managed items so that only changes for those items are committed. If you specify any objects in the itemsOrCollections parameter which are not managed collections or items, a DataServiceError is thrown.
If you are using the itemsOrCollections parameter and your items have association properties which refer to other items, you can use the cascadeCommit parameter to control whether or not changes made to associated items are also included in batch. For example, if you specify a Group item in the items parameter, and the Group instance has a members property which refers to a list of Person instances when cascadeCommit is true changes to any Person instance will also be included in the set of changes committed. If cascadeCommit is false, only changes to the Group would be included. Use cascadeCommit=true to ensure that any dependent changes are included in the batch.
Parameters
itemsOrCollections:Array (default = null ) — This is an optional parameter which defaults to null when
you want to commit all pending changes. If you want to commit a subset of the pending
changes use this argument to specify a list of managed ListCollectionView instances
and/or managed items. ListCollectionView objects are most typically ArrayCollections
you have provided to your fill method. The items appropriate for this method are
any managed version of the item. These are any items you retrieve from getItem, createItem
or using the getItemAt method from a managed collection. Only changes for the
items defined by any of the values in this array will be committed.
| |
cascadeCommit:Boolean (default = false ) — If true , also commit changes made to any associated
items supplied in this list.
|
mx.rpc:AsyncToken — AsyncToken that is returned in call property of
either the ResultEvent.RESULT or in the
FaultEvent.FAULT .
Custom data can be attached to this object and inspected later
during the event handling phase. If no changes have been made
to the relevant items, null is returned instead of an AsyncToken.
|
commitRequiredOn | () | method |
public function commitRequiredOn(item:Object):Boolean
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3.1 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Indicates if there are pending updates on a particular object that are waiting to be committed.
Parameters
item:Object — The object that might have changes.
|
Boolean — true if the object has pending changes,
and false if the object is null or if there are no changes.
|
connect | () | method |
public function connect():mx.rpc:AsyncToken
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Forces a connection attempt by this service to the remote destination.
This method may be used in conjunction with the autoConnect
property and disconnect()
method to control connection
status.
mx.rpc:AsyncToken — AsyncToken reference to the token that will identify this
operation in a result or fault event dispatched from this service.
When calling connect() the token's result handler will
always be called and the result will be the current value of this
service's connected property.
|
createBatch | () | method |
public function createBatch(itemsOrCollection:Array = null, cascadeCommit:Boolean = false, properties:Object = null):MessageBatch
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Takes any changes specified by this operation, creates a new MessageBatch and puts that batch into the uncommittedBatches list. If itemsOrCollection=null, the entire set of messages in the currentBatch are put into the new batch and a new batch is created as the currentBatch. You call this method when you want to partition a set of changes to mark a block of work that can be committed or reverted as a unit. For example, if you create a parent object and create a child which is associated with that parent, I might then call 'createBatch()' to put both of these changes into a group. If you do this twice, you'd have two batches each creating one parent and one child. You can then commit each group of changes independently as long as they are committed in the order in which the batches were created. You also could revert the most recent batch and it would leave the first batch unchanged. A simple multi-level"undo" system can be implemented this way simply by calling createBatch(null) after each operation.
You can mark a batch with a set of user-defined properties with the MessageBatch.properties property (or the properties argument to this method). This information gets saved and restored with the batch when using the offline feature and can be used to identify the batch on the client. Values placed in here must be serializable (i.e. Objects or classes with [RemoteClass]).
If you supply a value for the itemsOrCollection parameter, a new batch is created which just has the changes for the item or collection of items. If you set cascadeCommit to true, any changes for associated items are also included in the set of messages split out into the new batch.
Parameters
itemsOrCollection:Array (default = null ) — may be either an array of items or an array of managed collections.
If the former, change messages for each of the items are split out into the new batch. If the latter,
changes for each each item in each of the collections are split out into the new batch. If null,
the entire set of messages in the currentBatch are put into the new batch and a new batch is created as the currentBatch.
| |
cascadeCommit:Boolean (default = false ) — when true, any changes for associated items are also included in the set of messages split out
into the new batch.
| |
properties:Object (default = null ) — user-defined proeprties to mark the batch.
|
MessageBatch — the newly created MessageBatch.
|
disconnect | () | method |
public function disconnect():void
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Forces all data services using this data store to be disconnected.
getCacheIDs | () | method |
public function getCacheIDs(view:ListCollectionView):mx.rpc:AsyncToken
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
This method will fill the specified ListCollectionView
with all cache identifiers previously used in the application.
Parameters
view:ListCollectionView — ListcollectionView reference to a collection that should be
filled with all cache identifiers previously used in the application.
|
mx.rpc:AsyncToken — AsyncToken reference to the token that will identify this
operation in a result or fault event dispatched from this service.
|
initialize | () | method |
public function initialize(success:Function, failed:Function):void
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Initializes the DataStore which involves initialization of metadata of all the attached ConcreteDataService instances. Upon successful completion or failure the appropriate callback is invoked. If the data store is already initialized the success callback is invoked immediately. The callbacks are required to be parameterless functions.
Parameters
success:Function — The callback invoked when initialization successfully completes. Can be null.
| |
failed:Function — The callback invoked when initialization fails. Can be null.
|
logout | () | method |
public function logout():void
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Log the user out from the current destination. Calling this method will log out all associated DataService instances.
merge | () | method |
public function merge():void
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Merges any pending updates into the managed set of objects. The process of merging changes can detect conflicts.
refresh | () | method |
public function refresh():mx.rpc:AsyncToken
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Refetch all data managed on the client.
Returnsmx.rpc:AsyncToken — the token that can be used to determine
when the result or fault has occurred for this operation.
|
release | () | method |
public function release(clear:Boolean = true, copyStillManagedItems:Boolean = true):void
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Release all data managed on the client. This will free up the item and query caches on the client for all data as well as unsubscribing from any auto-sync'd data on the server.
Parameters
clear:Boolean (default = true ) — Indicates if the all items should be removed from
the list. In addition no copies will be made of any item.
| |
copyStillManagedItems:Boolean (default = true ) — If after releasing this data service references from managed
associations from another data services might hold references to some of these managed
objects. In that case, some managed collections in this data service might still be actively managed.
If you pass true for this flag, these references are either removed (clear=true) or cloned (clear=flase).
If you pass in false for this flag, those active references are left alone. Using false is the fastest
way to clear the state of the system. Using true ensures you don't have any managed
state in references to collections or items you retrieved from this data service.
|
revertChanges | () | method |
public function revertChanges():Boolean
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Reverts all pending (uncommitted) changes for all DataServices managed by this DataStore.
ReturnsBoolean — true if any changes were reverted.
|
revertChangesForCollection | () | method |
public function revertChangesForCollection(collection:ListCollectionView):Boolean
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Reverts all pending (uncommitted) changes for any items in the specified managed collection.
Parameters
collection:ListCollectionView — The collection to revert.
|
Boolean — true if any changes were reverted
|
setCredentials | () | method |
public function setCredentials(username:String, password:String, charset:String = null):void
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Set the credentials for this DataStore destination.
Parameters
username:String — The username for the destination
| |
password:String — The password for the destination
| |
charset:String (default = null ) — The character set encoding to use while encoding the
credentials. The default is null, which implies the legacy charset of
ISO-Latin-1. The only other supported charset is "UTF-8".
|
setRemoteCredentials | () | method |
public function setRemoteCredentials(username:String, password:String, charset:String = null):void
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Set the credentials for the 3rd party of this DataStore destination.
Parameters
username:String — The username for the destination
| |
password:String — The password for the destination
| |
charset:String (default = null ) — The character set encoding to use while encoding the
credentials. The default is null, which implies the legacy charset of
ISO-Latin-1. The only other supported charset is "UTF-8".
|
conflict | Event |
mx.data.events.DataConflictEvent
property DataConflictEvent.type =
mx.data.events.DataConflictEvent.CONFLICT
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Dispatched when a conflict is detected between either pending changes on this client and changes submitted by another client, or when changes submitted by this client result detect a conflict error at the remote destination. The DataStore dispatches conflict events for all destinations which share the DataStore, or you can listen for conflict events for a specific type on a DataService. Use the DataStore when you have an object with associations as in that case, you may need to resolve conflicts in a specific order to maintain integrity of those associations.
TheCONFLICT
constant defines the value of the type
property
of the event object for a conflict
event.
The properties of the event object have the following values:
Property | Value |
---|---|
bubbles | false |
cancelable | false |
currentTarget | The Object that defines the
event listener that handles the event. For example, if you use
myButton.addEventListener() to register an event listener,
myButton is the value of the currentTarget . |
conflict | The Conflict object that holds the conflict that occurred. |
message | The Message associated with this event. |
target | The Object that dispatched the event;
it is not always the Object listening for the event.
Use the currentTarget property to always access the
Object listening for the event. |
fault | Event |
mx.rpc.events.FaultEvent
property FaultEvent.type =
mx.rpc.events.FaultEvent.FAULT
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
The FaultEvent.FAULT
event is dispatched when the commit
call returns an error.
The properties of the event object have the following values:
Property | Value |
---|---|
bubbles | false |
cancelable | true, calling preventDefault() from the associated token's responder.fault method will prevent the service or operation from dispatching this event |
currentTarget | The Object that defines the
event listener that handles the event. For example, if you use
myButton.addEventListener() to register an event listener,
myButton is the value of the currentTarget . |
fault | The Fault object that contains the details of what caused this event. |
message | The Message associated with this event. |
target | The Object that dispatched the event;
it is not always the Object listening for the event.
Use the currentTarget property to always access the
Object listening for the event. |
token | The token that represents the call to the method. Used in the asynchronous completion token pattern. |
result | Event |
mx.rpc.events.ResultEvent
property ResultEvent.type =
mx.rpc.events.ResultEvent.RESULT
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
The ResultEvent.RESULT
event is dispatched when the commit
call successfully returns.
The properties of the event object have the following values:
Property | Value |
---|---|
bubbles | false |
cancelable | true, preventDefault() from the associated token's responder.result method will prevent the service or operation from dispatching this event |
currentTarget | The Object that defines the
event listener that handles the event. For example, if you use
myButton.addEventListener() to register an event listener,
myButton is the value of the currentTarget . |
message | The Message associated with this event. |
target | The Object that dispatched the event;
it is not always the Object listening for the event.
Use the currentTarget property to always access the
Object listening for the event. |
result | Result that the RPC call returns. |
token | The token that represents the indiviudal call to the method. Used in the asynchronous completion token pattern. |
CQ_AUTO | Constant |
public static const CQ_AUTO:int = 1
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Specifies to check for simple dependencies between any outstanding batches and the next batch to commit.
CQ_NOWAIT | Constant |
public static const CQ_NOWAIT:int = 3
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Specifies to send the second batch immediately, not checking for dependencies.
CQ_ONE_AT_A_TIME | Constant |
public static const CQ_ONE_AT_A_TIME:int = 0
Language Version: | ActionScript 3.0 |
Product Version: | Adobe Digital Enterprise Platform Data Services for Java EE 3 |
Runtime Versions: | Flash Player 9, AIR 1.1 |
Specifies to wait for a previous batch to complete before committing a new batch.
Mon Nov 28 2011, 06:48 AM -08:00