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 PagingDataGridDataSource(dataSource, options)
Parameters:
| Name | Type | Description |
|---|---|---|
dataSource |
DataGridDataSource | null | |
options |
Object | null | Options for the PagingControlDataSource |
Methods
-
fetch(options) : {Promise}
-
Calls fetch on the datasource with paging options.
Parameters:
Name Type Argument Description optionsObject <optional>
Options to control fetch Properties:
Name Type Description options.silentboolean If set, do not fire a sync event. options.startIndexnumber The index at which to start fetching records. Returns:
Promise object resolves when done
- Type
- Promise
-
fetchCells(cellRanges, callbacks, callbackObjects)
-
Fetch a range of cells from the data source.
Parameters:
Name Type Argument Description cellRangesArray.<Object> Information about the cell range. A cell range is defined by an array of range info for each axis, where each range contains three properties: axis, start, count. callbacksObject the callbacks to be invoke when fetch cells operation is completed. callbackObjectsObject <optional>
the object in which the callback function is invoked on. Properties:
Name Type Argument Description callbackObjects.errorObject <optional>
callbackObjects.successObject <optional>
callbacks.errorfunction({status: Object}):undefined the callback to invoke when fetch cells failed. callbacks.successfunction({cellSet: Object}, {cellRanges: Array.<Object>}):undefined the callback to invoke when fetch cells completed successfully. cellRanges.axisstring the axis associated with this range where cells are fetched. Valid values are "row" and "column". cellRanges.countnumber the size of the range for this axis in which the cells are fetched. cellRanges.startnumber the start index of the range for this axis in which the cells are fetched. -
fetchHeaders(headerRange, callbacks, callbackObjects) : {undefined}
-
Fetch a range of headers from the data source.
Parameters:
Name Type Argument Description headerRangeObject information about the header range, it must contain the following properties: axis, start, count. callbacksObject the callbacks to be invoke when fetch headers operation is completed. callbackObjectsObject <optional>
the object in which the callback function is invoked on. Properties:
Name Type Argument Description callbackObjects.errorObject <optional>
callbackObjects.successObject <optional>
callbacks.errorfunction({status: Object}):undefined the callback to invoke when fetch cells failed. callbacks.successfunction({startHeaderSet: Object}, {headerRange: Object}, {endHeaderSet: Object}):undefined the callback to invoke when fetch headers completed successfully. The function takes three parameters: HeaderSet object representing start headers, headerRange object passed into the original fetchHeaders call, and a HeaderSet object representing the end headers along the axis. headerRange.axisstring the axis of the header that are fetched. Valid values are "row" and "column". headerRange.countnumber the size of the range in which the header data are fetched. headerRange.startnumber the start index of the range in which the header data are fetched. Returns:
- Type
- undefined
-
getCapability(feature) : {string|null}
-
Determines whether this PagingDataGridDataSource supports certain feature.
Parameters:
Name Type Description featurestring the feature in which its capabilities is inquired. Currently the only valid feature is "sort" and "move" 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
-
getCount(axis) : {number}
-
Returns the total number of rows or columns. If the value return is not >= 0 then it is automatically assumed that the total count is unknown. In the case of paging returns the total number of rows/columns on the page.
Parameters:
Name Type Description axisstring the axis in which we inquire for the total count. Returns:
the total number of rows/columns.
- Type
- number
-
getCountPrecision(axis) : {string}
-
Returns whether the total count returned in getCount function is an actual or an estimate.
Parameters:
Name Type Description axisstring the axis in which we inquire whether the total count is an estimate. Valid values are "row" and "column". Returns:
"actual" if the count returned in getCount function is the actual count, "estimate" if the count returned in getCount function is an estimate.
- Type
- string
-
getEndItemIndex : {number}
-
Get the current page end index
Returns:
The current page end index
- Type
- number
-
getPage : {number}
-
Get the current page
Returns:
The current page
- Type
- number
-
getPageCount : {number}
-
Get the page count
Returns:
The total number of pages
- Type
- number
-
getStartItemIndex : {number}
-
Get the current page start index
Returns:
The current page start index
- Type
- number
-
handleEvent(eventType, event) : {boolean}
-
Handle the event
Parameters:
Name Type Description eventTypestring event type eventObject event - Inherited From:
Returns:
Returns false if event is cancelled
- Type
- boolean
-
indexes(keys) : {Promise.<Object>}
-
Returns the row and column index based on the keys. In a paging case returns the index on the page, not the absolute index in the array.
Parameters:
Name Type Description keysObject the key for each axis Properties:
Returns:
a promise object containing the index for each axis
- Type
- Promise.<Object>
-
Init : {undefined}
-
Initializes the instance.
- Inherited From:
Returns:
- Type
- undefined
-
keys(indexes) : {Promise.<Object>}
-
Returns the keys based on the indexes.
Parameters:
Name Type Description indexesObject the index for each axis Properties:
Name Type Description indexes.columnnumber | null the index for the column axis indexes.rownumber | null the index for the row axis Returns:
a Promise object which upon resolution will pass in an object containing the keys for each axis
- Type
- Promise.<Object>
-
move(rowToMove, referenceRow, position, callbacks, callbackObjects) : {undefined}
-
Moves a row from one location to another.
Parameters:
Name Type Argument Description rowToMoveany the key of the row to move referenceRowany the key of the reference row which combined with position are used to determine the destination of where the row should moved to. positionstring The position of the moved row relative to the reference row. Valid values are: "before", "after" callbacksObject <optional>
the callbacks to be invoke upon completion of the move operation. callbackObjectsObject <optional>
the object in which the callback function is invoked on. Properties:
Name Type Argument Description callbackObjects.errorObject <optional>
callbackObjects.successObject <optional>
callbacks.errorfunction({status: Object}):undefined the callback to invoke when sort failed. callbacks.successfunction():undefined the callback to invoke when the sort completed successfully. Returns:
- Type
- undefined
-
moveOK(rowToMove, referenceRow, position) : {string}
-
Checks whether a move operation is valid.
Parameters:
Name Type Description rowToMoveany the key of the row to move referenceRowany the key of the reference row which combined with position are used to determine the destination of where the row should moved to. positionstring The position of the moved row relative to the reference row. Valid values are: "before", "after". Returns:
returns "valid" if the move is valid, "invalid" otherwise.
- Type
- string
-
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
onmethod.Parameters:
Name Type Description eventTypestring eventType eventHandlerfunction(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
offmethod to detach the handler when it no longer wants to be notified.Parameters:
Name Type Description eventTypestring eventType eventHandlerfunction(Object) event handler function - Inherited From:
Returns:
- Type
- void
-
setPage(value, options) : {Promise}
-
Set the current page
Parameters:
Name Type Argument Description valuenumber The current page optionsObject <optional>
Options pageSize: The page size.
Returns:
resolves if page is set
- Type
- Promise
-
size : {number}
-
Returns:
size of data
- Type
- number
-
sort(criteria, callbacks, callbackObjects) : {undefined}
-
Performs a sort on the data source.
Parameters:
Name Type Argument Description criteriaObject | null the sort criteria. callbacksObject <optional>
the callbacks to be invoke upon completion of the sort operation. callbackObjectsObject <optional>
the object in which the callback function is invoked on. Properties:
Name Type Argument Description callbackObjects.errorObject <optional>
callbackObjects.successObject <optional>
callbacks.errorfunction({status: Object}):undefined the callback to invoke when sort failed. callbacks.successfunction():undefined the callback to invoke when the sort completed successfully. criteria.axisstring The axis in which the sort is performed, valid values are "row", "column" criteria.directionstring the sort direction, valid values are "ascending", "descending", "none" (default) criteria.keyany The key that identifies which header to sort Returns:
- Type
- undefined
-
totalSize : {number}
-
Returns:
total size of data
- Type
- number
-
totalSizeConfidence : {string}
-
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
- string