Final Class: CollectionTableDataSource

Oracle® JavaScript Extension Toolkit (JET)
15.1.0

F83698-01

Since:
  • 1.0
Module:
  • ojcollectiontabledatasource

Note: This class is deprecated since 6.0.0. Use CollectionDataProvider instead.

QuickNav

Fields

Description

Object representing data available from an Collection object, such as an external data source. This data source can be used by ListView, NavigationList, TabBar, and Table.

See the Table - Using Collection demo for an example.

Refer to TableDataSource for other data sources that represent tabular data.


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 CollectionTableDataSource(data, options)

Parameters:
Name Type Argument Description
data Collection data supported by the components
options Object | null <optional>
Options for the TableDataSource
Properties
Name Type Argument Description
startFetch "enabled" | "disabled" <optional>
Control whether to start initial fetch when the TableDataSource is bound to a component. Valid values are:

"enabled" (default) - Start initial fetch automatically when the TableDataSource is bound to a component.
"disabled" - Do not start initial fetch automatically. Application will call the fetch() method to start the first fetch.

Fields

comparator

If set to a function(row1, row2), then this function is called comparing raw row data (see the JavaScript array.sort() for details)

sortCriteria :Object

The sort criteria. Whenever sort() is called with the criteria parameter, that value is copied to this property. If sort() is called with empty sort criteria then the criteria set in this property is used.
Properties:
Name Type Description
criteria.direction 'ascending' | 'descending' | 'none' the sort direction, valid values are "ascending", "descending", "none" (default)
criteria.key any The key that identifies which field to sort
Inherited From:

Methods

at(index, options) : {Promise.<(null|TableDataSource.RowData)>}

Return the row data found at the given index.
Parameters:
Name Type Argument Description
index number Index for which to return the row data.
options Object <optional>
Options to control the at.
Returns:

Promise resolves to a compound object which has the structure below. If the index is out of range, Promise resolves to null.

dataThe raw row data
indexThe index for the row
keyThe key value for the row

Type
Promise.<(null|TableDataSource.RowData)>

fetch(options) : {Promise.<(null|TableDataSource.RowDatas)>}

Fetch the row data.
Parameters:
Name Type Argument Description
options Object <optional>
Options to control fetch
Properties
Name Type Argument Description
startIndex number <optional>
The index at which to start fetching records.
silent boolean <optional>
If set, do not fire a sync event.
Returns:

Promise object resolves to a compound object which contains an array of row data objects, an array of ids, and the startIndex triggering done when complete.

The structure of the resolved compound object is:

dataAn array of raw row data
keysAn array of key values for the rows
startIndexThe startIndex for the returned set of rows

Type
Promise.<(null|TableDataSource.RowDatas)>

get(id, options) : {Promise.<(null|TableDataSource.RowData)>}

Return the first row data whose id value is the given id
Parameters:
Name Type Argument Description
id string ID for which to return the row data, if found.
options Object <optional>
Options to control the get.
Returns:

Promise which resolves to a compound object which has the structure below where the id matches the given id. If none are found, resolves to null.

dataThe raw row data
indexThe index for the row
keyThe key value for the row

Type
Promise.<(null|TableDataSource.RowData)>

getCapability(feature) : {string|null}

Determines whether this TableDataSource supports certain feature.
Parameters:
Name Type Description
feature string the feature in which its capabilities is inquired. Currently the only valid feature is "sort".
Returns:

the name of the feature. For "sort", the valid return values are: "full", "none". Returns null if the feature is not recognized.

Type
string | null

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 : {undefined}

Initializes the instance.
Inherited From:
Returns:
Type
undefined

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

sort(criteria) : {Promise.<null>}

Performs a sort on the data source.
Parameters:
Name Type Argument Description
criteria Object <optional>
the sort criteria.
Properties
Name Type Description
key any The key that identifies which field to sort
direction 'ascending' | 'descending' | 'none' the sort direction, valid values are "ascending", "descending", "none" (default)
Returns:

promise object triggering done when complete.

Type
Promise.<null>

totalSize : {number}

Return the total size of data available, including server side if not local.
Returns:

total size of data

Type
number

totalSizeConfidence : {('actual'|'estimate'|'atLeast'|'unknown')}

Returns the confidence for the totalSize value.
Returns:

"actual" if the totalSize is the time of the fetch is an exact number "estimate" if the totalSize is an estimate "atLeast" if the totalSize is at least a certain number "unknown" if the totalSize is unknown

Type
('actual'|'estimate'|'atLeast'|'unknown')