Class: CollectionTableDataSource

Oracle® JavaScript Extension Toolkit (JET)
7.1.0

F18183-01

QuickNav

Fields


CollectionTableDataSource extends oj.TableDataSource

Version:
  • 7.1.0
Since:
  • 1.0
Module:
  • ojcollectiontabledatasource

Module usage

See JET Module Loading for an overview of module usage within JET.

Description

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

See the Table - Using oj.Collection demo for an example.

Refer to oj.TableDataSource for other data sources that represent tabular data.
Deprecated:
Since Description
6.0.0 Use CollectionDataProvider instead.

Constructor

new CollectionTableDataSource(data, options)

Parameters:
Name Type Argument Description
data oj.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.
Deprecated:
Since Description
6.0.0 Use CollectionDataProvider instead.

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.key any The key that identifies which field to sort
criteria.direction 'ascending' | 'descending' | 'none' the sort direction, valid values are "ascending", "descending", "none" (default)
Inherited From:

Methods

at(index, options) → {Promise.<(null|oj.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|oj.TableDataSource.RowData)>

fetch(options) → {Promise.<(null|oj.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|oj.TableDataSource.RowDatas)>

get(id, options) → {Promise.<(null|oj.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|oj.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')