Usage
For additional information visit:
Final classes in JET
Classes in JET are generally final and do not support subclassing. At the moment, final is not enforced. However, this will likely change in an upcoming JET release.
Constructor
new IndexerModelTreeDataSource(data, idAttribute, listener, options)
Parameters:
Name | Type | Argument | Description | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
data |
Array.<any> | an array of data used for Indexer and ListView | |||||||||||||||||||||
idAttribute |
string | the id attribute of the data | |||||||||||||||||||||
listener |
(section: string | object)=> Promise<string | object> | a callback function that handles when a section becomes current (user clicks on the section in the Indexer). the function takes the current section and must return a Promise which when resolve returns the section in which the ListView actually scrolls to. | |||||||||||||||||||||
options |
Object |
<optional> |
the options set on this IndexerModelTreeDataSource
Properties
|
Methods
-
fetchChildren(parentKey, range, callbacks, options) : {void}
-
Fetch the children
Parameters:
Name Type Argument Description parentKey
any the parent key. Specify null if fetching children from the root. range
Object information about the range, it must contain the following properties: start, count. Properties
Name Type Description start
number the start index of the range in which the children are fetched. count
number the size of the range in which the children are fetched. callbacks
Object the callbacks to be invoke when fetch children operation is completed. The valid callback types are "success" and "error". Properties
Name Type Argument Description success
function(oj.NodeSet) the callback to invoke when fetch completed successfully. error
function({status: *}) <optional>
the callback to invoke when fetch children failed. options
Object <optional>
optional parameters for this operation. Properties
Name Type Argument Description queueOnly
boolean <optional>
true if this fetch request is to be queued and not execute yet. The implementation must maintain the order of the fetch operations. When queueOnly is false/null/undefined, any queued fetch operations are then flushed and executed in the order they are queued. This flag is ignored if the datasource does not support batching. Returns:
- Type
- void
-
fetchDescendants(parent, callbacks, options) : {void}
-
Fetch all children and their children recursively from a specified parent.
Parameters:
Name Type Argument Description parent
any the parent key. Specify null to fetch everything from the root (i.e. expand all) callbacks
Object the callbacks to be invoke when fetch children operation is completed. The valid callback types are "success" and "error" options
Object <optional>
optional parameters for this operation - Inherited From:
Properties:
Name Type Argument Description callbacks.error
function({status: *}) <optional>
the callback to invoke when fetch children failed. callbacks.success
function(oj.NodeSet) the callback to invoke when fetch completed successfully. options.maxCount
number <optional>
the maximum number of children to fetch. If a non-positive number is specified, then the value is ignored and there is no maximum fetch count options.start
number <optional>
the index related to parent in which to begin fetching descendants from. If this is not specified, then value zero will be used Returns:
- Type
- void
-
getCapability(feature) : {string|null}
-
Determines whether this TreeDataSource supports the specified feature.
Parameters:
Name Type Description feature
string the feature in which its capabilities is inquired. Currently the valid features "sort", "move", "fetchDescendants", "batchFetch" - Inherited From:
Returns:
the name of the feature. Returns null if the feature is not recognized. For "sort", the valid return values are: "default", "none". For "fetchDescendants", the valid return values are: "enable", "disable", "suboptimal". For "move", the valid return values are: "default", "none". For "batchFetch", the valid return values are: "enable", "disable".
- Type
- string | null
-
getChildCount(parentKey) : {number}
-
Returns the number of children for a specified parent. If the value returned is not >= 0 then it is automatically assumed that the child count is unknown.
Parameters:
Name Type Description parentKey
any the parent key. Specify null if inquiring child count of the root. Returns:
the number of children for the specified parent.
- Type
- number
-
getIndexableSections : {Array.<string>|Array.<Object>}
-
Returns an array of objects each representing a section in the associated ListView.
Returns:
an array of all indexable sections
- Type
- Array.<string> | Array.<Object>
-
getMissingSections : {Array.<string>|Array.<Object>}
-
Returns an array of objects each representing a section that does not have a corresponding section in the associated ListView. It must be a subset of the return value of
getIndexableSections
. Return null or undefined if there's nothing missing.Returns:
an array of missing sections
- Type
- Array.<string> | Array.<Object>
-
getSortCriteria : {{key: any, direction: ('ascending'|'descending'|'none')}}
-
Returns the current sort criteria of the tree data.
Returns:
the current sort criteria. It should contain the following properties: key, direction where criteria.key the key identifying the attribute (column) to sort on. Value is null if it's not sorted. criteria.direction the sort direction, valid values are "ascending", "descending", "none" (default)
- Type
- {key: any, direction: ('ascending'|'descending'|'none')}
-
handleEvent(eventType, event) : {boolean}
-
Handle the event
Parameters:
Name Type Description eventType
string event type event
Object event - Inherited From:
Returns:
Returns false if event is cancelled
- Type
- boolean
-
Init : {void}
-
Initializes the instance.
Returns:
- Type
- void
-
move(rowToMove, referenceRow, position, callbacks) : {void}
-
Moves a row from one location to another (different position within the same parent or a completely different parent)
Parameters:
Name Type Description rowToMove
any the key of the row to move referenceRow
any the key of the reference row which combined with position are used to determine the destination of where the row should moved to. position
number | string The position of the moved row relative to the reference row. This can be a string: "before", "after", "inside", "first", "last", or the zero based index to position the element at a specific point among the reference row's current children. callbacks
Object the callbacks for the move function - Inherited From:
Properties:
Name Type Argument Description callbacks.error
function({status: *}) <optional>
the callback to invoke when move failed. callbacks.success
function():void the callback to invoke when the move completed successfully Returns:
- Type
- void
-
moveOK(rowToMove, referenceRow, position) : {('valid'|'invalid')}
-
Checks whether a move operation is valid.
Parameters:
Name Type Description rowToMove
any the key of the row to move referenceRow
any the key of the reference row which combined with position are used to determine the destination of where the row should moved to. position
number | string The position of the moved row relative to the reference row. This can be a string: "before", "after", "inside", "first", "last", or the zero based index to position the element at a specific point among the reference row's current children. - Inherited From:
Returns:
returns "valid" if the move is valid, "invalid" otherwise.
- Type
- ('valid'|'invalid')
-
off(eventType, eventHandler) : {void}
-
Detach an event handler.
Application can call this if it no longer wants to be notified of an event that it has attached an handler to using the
on
method.Parameters:
Name Type Description eventType
string eventType eventHandler
function(Object) event handler function - Inherited From:
Returns:
- Type
- void
-
on(eventType, eventHandler) : {void}
-
Attach an event handler.
Application can call this if it wants to be notified of an event. It can call the
off
method to detach the handler when it no longer wants to be notified.Parameters:
Name Type Description eventType
string eventType eventHandler
function(Object) event handler function - Inherited From:
Returns:
- Type
- void
-
setSection(section) : {Promise.<string>|Promise.<Object>}
-
Make a section current in the Indexer. The implementation should scroll the associated ListView so that the section becomes visible.
Parameters:
Name Type Description section
string | Object the current section Returns:
a Promise which when resolved will return the section that the associated ListView actually scrolls to. For example, the implementation could choose to scroll to the next available section in ListView if no data exists for that section.
- Type
- Promise.<string> | Promise.<Object>
-
sort(criteria, callbacks) : {void}
-
Performs a sort operation on the tree data.
Parameters:
Name Type Description criteria
Object the sort criteria. It must contain the following properties: key, direction callbacks
Object callbacks for the sort operation - Inherited From:
Properties:
Name Type Argument Description callbacks.error
function({status: *}) <optional>
the callback to invoke when sort failed. callbacks.success
function():void the callback to invoke when the sort completed successfully criteria.direction
'ascending' | 'descending' | 'none' the sort direction, valid values are "ascending", "descending", "none" (default) criteria.key
any the key identifying the attribute (column) to sort on Returns:
- Type
- void