/** * @class Ext.data.DirectStore * @extends Ext.data.Store *

Small helper class to create an {@link Ext.data.Store} configured with an * {@link Ext.data.DirectProxy} and {@link Ext.data.JsonReader} to make interacting * with an {@link Ext.Direct} Server-side {@link Ext.direct.Provider Provider} easier. * To create a different proxy/reader combination create a basic {@link Ext.data.Store} * configured as needed.

* *

*Note: Although they are not listed, this class inherits all of the config options of:

*
* * @xtype directstore * * @constructor * @param {Object} config */ Ext.data.DirectStore = function(c){ // each transaction upon a singe record will generatie a distinct Direct transaction since Direct queues them into one Ajax request. c.batchTransactions = false; Ext.data.DirectStore.superclass.constructor.call(this, Ext.apply(c, { proxy: (typeof(c.proxy) == 'undefined') ? new Ext.data.DirectProxy(Ext.copyTo({}, c, 'paramOrder,paramsAsHash,directFn,api')) : c.proxy, reader: (typeof(c.reader) == 'undefined' && typeof(c.fields) == 'object') ? new Ext.data.JsonReader(Ext.copyTo({}, c, 'totalProperty,root,idProperty'), c.fields) : c.reader })); }; Ext.extend(Ext.data.DirectStore, Ext.data.Store, {}); Ext.reg('directstore', Ext.data.DirectStore);