/**
* Encapsulates a read operation as performed by a {@link Ext.data.proxy.Proxy proxy}.
*
* This class is instantiated by {@link Ext.data.Store stores} and {@link Ext.data.Model records}
* and should not need to be instantiated in user code.
*/
Ext.define('Ext.data.operation.Read', {
extend: 'Ext.data.operation.Operation',
alias: 'data.operation.read',
action: 'read',
isReadOperation: true,
config: {
/**
* @cfg {Ext.util.Filter[]} filters
* Optional array of filter objects. Only applies to 'read' actions.
*/
filters: undefined,
/**
* @cfg {Ext.util.Sorter[]} sorters
* Optional array of sorter objects. Only applies to 'read' actions.
*/
sorters: undefined,
/**
* @cfg {Ext.util.Grouper[]} groupers
* Optional grouping configuration. Only applies to 'read' actions where
* grouping is desired.
*/
groupers: undefined,
/**
* @cfg {Ext.data.Field[]} summaries
* Optional summary configuration. Only applies to 'read' actions where
* remote summary is desired.
*/
summaries: undefined,
/**
* @cfg {Ext.util.Grouper} grouper
* Optional grouping configuration. Only applies to 'read' actions where grouping is
* desired.
*/
grouper: undefined,
/**
* @cfg {Number} start
* The start index (offset), used in paging when running a 'read' action.
*/
start: undefined,
/**
* @cfg {Number} limit
* The number of records to load. Used on 'read' actions when paging is being used.
*/
limit: undefined,
/**
* @cfg {Number} page
* The page for this operation.
*/
page: undefined,
/**
* @cfg {Boolean} addRecords
* Passed internally to loadRecords when the load completes
* @private
*/
addRecords: false
},
doExecute: function() {
return this.getProxy().read(this);
},
doProcess: Ext.emptyFn,
allowWrite: function() {
return false;
}
});