classEditableRootCollectionSync
Source: editable-root-collection-sync.
Represents the definition of a synchronous editable root collection.
Properties
Methods
new EditableRootCollectionSync([eventHandlers])
Creates a new synchronous editable root collection instance.
The name of the model type available as: <instance>.constructor.modelType, returns 'EditableRootCollectionSync'.
Parameter
| Name | Type | Optional | Description |
|---|---|---|---|
|
eventHandlers |
Yes |
The event handlers of the instance. |
- Extends
- CollectionBase
- Fires
- EditableRootCollectionSync#event:preCreate
- EditableRootCollectionSync#event:postCreate
- EditableRootCollectionSync#event:preFetch
- EditableRootCollectionSync#event:postFetch
- EditableRootCollectionSync#event:preInsert
- EditableRootCollectionSync#event:postInsert
- EditableRootCollectionSync#event:preUpdate
- EditableRootCollectionSync#event:postUpdate
- EditableRootCollectionSync#event:preRemove
- EditableRootCollectionSync#event:postRemove
- EditableRootCollectionSync#event:preSave
- EditableRootCollectionSync#event:postSave
- Throws
-
Argument error: The event handlers must be an EventHandlerList object or null.
Properties
read-only$modelName
string
The name of the model.
read-onlycount
number
The count of the child objects in the collection.
Methods
staticcreate([eventHandlers]) → EditableRootCollectionSync
Creates a new editable business object collection.
Parameter
| Name | Type | Optional | Description |
|---|---|---|---|
|
eventHandlers |
Yes |
The event handlers of the instance. |
- Throws
-
Argument error: The event handlers must be an EventHandlerList object or null.
-
Authorization error: The user has no permission to execute the action.
-
Data portal error: Creating the business object collection has failed.
- Returns
-
EditableRootCollectionSyncA new editable business collection.
staticfetch([filter][, method][, eventHandlers]) → EditableRootCollectionSync
Retrieves an editable business object collection from the repository.
Parameters
| Name | Type | Optional | Description |
|---|---|---|---|
|
filter |
any type |
Yes |
The filter criteria. |
|
method |
string |
Yes |
An alternative fetch method of the data access object. |
|
eventHandlers |
Yes |
The event handlers of the instance. |
- Throws
-
Argument error: The method must be a string or null.
-
Argument error: The event handlers must be an EventHandlerList object or null.
-
Authorization error: The user has no permission to execute the action.
-
Data portal error: Fetching the business object collection has failed.
- Returns
-
EditableRootCollectionSyncThe required editable business object collection.
at(index) → EditableChildModelSync
Gets a collection item at a specific position.
Parameter
| Name | Type | Optional | Description |
|---|---|---|---|
|
index |
number |
|
The index of the required item in the collection. |
- Returns
-
EditableChildModelSyncThe required collection item.
checkRules()
Executes all the validation rules of the business object, including the ones of its child objects.
protectedchildHasChanged()
Notes that a child object has changed.
This method is called by child objects.
protectedcreate()
Initializes a newly created business object collection.
This method is called by a factory method with the same name.
- Throws
-
Authorization error: The user has no permission to execute the action.
-
Data portal error: Creating the business object collection has failed.
create(index) → EditableChildModelSync
Creates a new item and adds it to the collection at the specified index.
Parameter
| Name | Type | Optional | Description |
|---|---|---|---|
|
index |
number |
|
The index of the new item. |
- Returns
-
EditableChildModelSyncThe newly created business object.
every(callback) → boolean
Tests whether all items in the collection pass the test implemented by the provided function.
Parameter
| Name | Type | Optional | Description |
|---|---|---|---|
|
callback |
|
Function to test for each collection item. |
- Returns
-
booleanTrue when callback returns truthy value for each item, otherwise false.
protectedfetch([filter][, method])
Initializes a business object collection to be retrieved from the repository.
This method is called by a factory method with the same name.
Parameters
| Name | Type | Optional | Description |
|---|---|---|---|
|
filter |
any type |
Yes |
The filter criteria. |
|
method |
string |
Yes |
An alternative fetch method of the data access object. |
- Throws
-
Argument error: The method must be a string or null.
-
Authorization error: The user has no permission to execute the action.
-
Data portal error: Fetching the business object collection has failed.
filter(callback) → Array of EditableChildModelSync
Creates a new array with all collection items that pass the test implemented by the provided function.
Parameter
| Name | Type | Optional | Description |
|---|---|---|---|
|
callback |
|
Function to test for each collection item. |
- Returns
-
Array of EditableChildModelSyncThe new array of collection items.
forEach(callback)
Executes a provided function once per collection item.
Parameter
| Name | Type | Optional | Description |
|---|---|---|---|
|
callback |
|
Function that produces an item of the new collection. |
fromCto(cto)
Rebuilds the business object collection from a plain object array sent by the client.
Parameter
| Name | Type | Optional | Description |
|---|---|---|---|
|
cto |
object |
|
The client transfer object. |
getBrokenRules([namespace]) → bo.rules.BrokenRulesOutput
Gets the broken rules of the business object.
Parameter
| Name | Type | Optional | Description |
|---|---|---|---|
|
namespace |
string |
Yes |
The namespace of the message keys when messages are localizable. |
- Returns
-
bo.rules.BrokenRulesOutputThe broken rules of the business object.
getModelState() → string
Gets the state of the collection. Valid states are: pristine, created, changed, markedForRemoval and removed.
- Returns
-
stringThe state of the collection.
getResponse([message][, namespace]) → bo.rules.BrokenRulesResponse
Gets the response to send to the client in case of broken rules.
Parameters
| Name | Type | Optional | Description |
|---|---|---|---|
|
message |
string |
Yes |
Human-readable description of the reason of the failure. |
|
namespace |
string |
Yes |
The namespace of the message keys when messages are localizable. |
- Returns
-
bo.rules.BrokenRulesResponseThe broken rules response to send to the client.
isDeleted() → boolean
Indicates whether the business object collection will be deleted from the repository, i.e. its state is markedForRemoval.
- Returns
-
booleanTrue when the business object collection will be deleted, otherwise false.
isDirty() → boolean
Indicates whether the business object collection itself or any of its child objects differs the one that is stored in the repository, i.e. its state is created, changed or markedForRemoval.
- Returns
-
booleanTrue when the business object collection has been changed, otherwise false.
isNew() → boolean
Indicates whether the business object collection has been created newly and not has been yet saved, i.e. its state is created.
- Returns
-
booleanTrue when the business object collection is new, otherwise false.
isSavable() → boolean
Indicates whether the business object collection can be saved to the repository, i.e. it has ben changed and is valid, and the user has permission to save it.
- Returns
-
booleanTrue when the user can save the business object collection, otherwise false.
isSelfDirty() → boolean
Indicates whether the business object collection itself, ignoring its child objects, differs the one that is stored in the repository.
- Returns
-
booleanTrue when the business object collection itself has been changed, otherwise false.
isValid() → boolean
Indicates whether all validation rules of all business objects of the collection succeeds. A valid business object collection may have broken rules with severity of success, information and warning.
- Returns
-
booleanTrue when the business object collection is valid, otherwise false.
map(callback) → Array of any type
Creates a new array with the results of calling a provided function on every item in this collection.
Parameter
| Name | Type | Optional | Description |
|---|---|---|---|
|
callback |
|
Function to test for each collection item. |
- Returns
-
Array of any typeThe new array of callback results.
remove()
Marks the business object collection to be deleted from the repository on next save.
save() → EditableRootCollectionSync
Saves the changes of the business object collection to the repository.
- Throws
-
Authorization error: The user has no permission to execute the action.
-
Data portal error: Inserting the business object collection has failed.
-
Data portal error: Updating the business object collection has failed.
-
Data portal error: Deleting the business object collection has failed.
- Returns
-
EditableRootCollectionSyncThe business object collection with the new state after the save.
some(callback) → boolean
Tests whether some item in the collection pass the test implemented by the provided function.
Parameter
| Name | Type | Optional | Description |
|---|---|---|---|
|
callback |
|
Function to test for each collection item. |
- Returns
-
booleanTrue when callback returns truthy value for some item, otherwise false.
sort([fnCompare]) → Array of EditableChildModelSync
Sorts the items of the collection in place and returns the collection.
Parameter
| Name | Type | Optional | Description |
|---|---|---|---|
|
fnCompare |
Yes |
Function that defines the sort order. If omitted, the collection is sorted according to each character's Unicode code point value, according to the string conversion of each item. |
- Returns
-
Array of EditableChildModelSyncThe sorted collection.
toCto() → object
Transforms the business object collection to a plain object array to send to the client.
- Returns
-
objectThe client transfer object.
Events
postCreate
The event arises after the business object collection has been initialized in the repository.
Parameters
| Name | Type | Optional | Description |
|---|---|---|---|
|
eventArgs |
|
Data portal event arguments. |
|
|
newObject |
|
The instance of the collection after the data portal action. |
postFetch
The event arises after the collection instance has been retrieved from the repository.
Parameters
| Name | Type | Optional | Description |
|---|---|---|---|
|
eventArgs |
|
Data portal event arguments. |
|
|
newObject |
|
The collection instance after the data portal action. |
postInsert
The event arises after the business object collection has been created in the repository.
Parameters
| Name | Type | Optional | Description |
|---|---|---|---|
|
eventArgs |
|
Data portal event arguments. |
|
|
newObject |
|
The instance of the collection after the data portal action. |
postRemove
The event arises after the business object collection has been removed from the repository.
Parameters
| Name | Type | Optional | Description |
|---|---|---|---|
|
eventArgs |
|
Data portal event arguments. |
|
|
newObject |
|
The instance of the collection after the data portal action. |
postSave
The event arises after the business object collection has been saved in the repository. The event is preceded by a postInsert, postUpdate or postRemove event depending on the state of the business object collection.
Parameters
| Name | Type | Optional | Description |
|---|---|---|---|
|
eventArgs |
|
Data portal event arguments. |
|
|
newObject |
|
The instance of the collection after the data portal action. |
postUpdate
The event arises after the business object collection has been updated in the repository.
Parameters
| Name | Type | Optional | Description |
|---|---|---|---|
|
eventArgs |
|
Data portal event arguments. |
|
|
newObject |
|
The instance of the collection after the data portal action. |
preCreate
The event arises before the business object collection will be initialized in the repository.
Parameters
| Name | Type | Optional | Description |
|---|---|---|---|
|
eventArgs |
|
Data portal event arguments. |
|
|
oldObject |
|
The instance of the collection before the data portal action. |
preFetch
The event arises before the collection instance will be retrieved from the repository.
Parameters
| Name | Type | Optional | Description |
|---|---|---|---|
|
eventArgs |
|
Data portal event arguments. |
|
|
oldObject |
|
The collection instance before the data portal action. |
preInsert
The event arises before the business object collection will be created in the repository.
Parameters
| Name | Type | Optional | Description |
|---|---|---|---|
|
eventArgs |
|
Data portal event arguments. |
|
|
oldObject |
|
The instance of the collection before the data portal action. |
preRemove
The event arises before the business object collection will be removed from the repository.
Parameters
| Name | Type | Optional | Description |
|---|---|---|---|
|
eventArgs |
|
Data portal event arguments. |
|
|
oldObject |
|
The instance of the collection before the data portal action. |
preSave
The event arises before the business object collection will be saved in the repository. The event is followed by a preInsert, preUpdate or preRemove event depending on the state of the business object collection.
Parameters
| Name | Type | Optional | Description |
|---|---|---|---|
|
eventArgs |
|
Data portal event arguments. |
|
|
oldObject |
|
The instance of the collection before the data portal action. |
preUpdate
The event arises before the business object collection will be updated in the repository.
Parameters
| Name | Type | Optional | Description |
|---|---|---|---|
|
eventArgs |
|
Data portal event arguments. |
|
|
oldObject |
|
The instance of the collection before the data portal action. |