X-Git-Url: http://git.ithinksw.org/extjs.git/blobdiff_plain/3789b528d8dd8aad4558e38e22d775bcab1cbd36..HEAD:/docs/source/Proxy2.html diff --git a/docs/source/Proxy2.html b/docs/source/Proxy2.html index 1f089586..512da999 100644 --- a/docs/source/Proxy2.html +++ b/docs/source/Proxy2.html @@ -3,8 +3,8 @@
/** - * @author Ed Spencer - * @class Ext.data.proxy.Proxy - * - * <p>Proxies are used by {@link Ext.data.Store Stores} to handle the loading and saving of {@link Ext.data.Model Model} data. - * Usually developers will not need to create or interact with proxies directly.</p> - * <p><u>Types of Proxy</u></p> - * - * <p>There are two main types of Proxy - {@link Ext.data.proxy.Client Client} and {@link Ext.data.proxy.Server Server}. The Client proxies - * save their data locally and include the following subclasses:</p> - * - * <ul style="list-style-type: disc; padding-left: 25px"> - * <li>{@link Ext.data.proxy.LocalStorage LocalStorageProxy} - saves its data to localStorage if the browser supports it</li> - * <li>{@link Ext.data.proxy.SessionStorage SessionStorageProxy} - saves its data to sessionStorage if the browsers supports it</li> - * <li>{@link Ext.data.proxy.Memory MemoryProxy} - holds data in memory only, any data is lost when the page is refreshed</li> - * </ul> - * - * <p>The Server proxies save their data by sending requests to some remote server. These proxies include:</p> - * - * <ul style="list-style-type: disc; padding-left: 25px"> - * <li>{@link Ext.data.proxy.Ajax Ajax} - sends requests to a server on the same domain</li> - * <li>{@link Ext.data.proxy.JsonP JsonP} - uses JSON-P to send requests to a server on a different domain</li> - * <li>{@link Ext.data.proxy.Direct Direct} - uses {@link Ext.direct} to send requests</li> - * </ul> - * - * <p>Proxies operate on the principle that all operations performed are either Create, Read, Update or Delete. These four operations - * are mapped to the methods {@link #create}, {@link #read}, {@link #update} and {@link #destroy} respectively. Each Proxy subclass - * implements these functions.</p> - * - * <p>The CRUD methods each expect an {@link Ext.data.Operation Operation} object as the sole argument. The Operation encapsulates - * information about the action the Store wishes to perform, the {@link Ext.data.Model model} instances that are to be modified, etc. - * See the {@link Ext.data.Operation Operation} documentation for more details. Each CRUD method also accepts a callback function to be - * called asynchronously on completion.</p> - * - * <p>Proxies also support batching of Operations via a {@link Ext.data.Batch batch} object, invoked by the {@link #batch} method.</p> - * - * @constructor - * Creates the Proxy - * @param {Object} config Optional config object +/** + * @author Ed Spencer + * + * Proxies are used by {@link Ext.data.Store Stores} to handle the loading and saving of {@link Ext.data.Model Model} + * data. Usually developers will not need to create or interact with proxies directly. + * + * # Types of Proxy + * + * There are two main types of Proxy - {@link Ext.data.proxy.Client Client} and {@link Ext.data.proxy.Server Server}. + * The Client proxies save their data locally and include the following subclasses: + * + * - {@link Ext.data.proxy.LocalStorage LocalStorageProxy} - saves its data to localStorage if the browser supports it + * - {@link Ext.data.proxy.SessionStorage SessionStorageProxy} - saves its data to sessionStorage if the browsers supports it + * - {@link Ext.data.proxy.Memory MemoryProxy} - holds data in memory only, any data is lost when the page is refreshed + * + * The Server proxies save their data by sending requests to some remote server. These proxies include: + * + * - {@link Ext.data.proxy.Ajax Ajax} - sends requests to a server on the same domain + * - {@link Ext.data.proxy.JsonP JsonP} - uses JSON-P to send requests to a server on a different domain + * - {@link Ext.data.proxy.Direct Direct} - uses {@link Ext.direct.Manager} to send requests + * + * Proxies operate on the principle that all operations performed are either Create, Read, Update or Delete. These four + * operations are mapped to the methods {@link #create}, {@link #read}, {@link #update} and {@link #destroy} + * respectively. Each Proxy subclass implements these functions. + * + * The CRUD methods each expect an {@link Ext.data.Operation Operation} object as the sole argument. The Operation + * encapsulates information about the action the Store wishes to perform, the {@link Ext.data.Model model} instances + * that are to be modified, etc. See the {@link Ext.data.Operation Operation} documentation for more details. Each CRUD + * method also accepts a callback function to be called asynchronously on completion. + * + * Proxies also support batching of Operations via a {@link Ext.data.Batch batch} object, invoked by the {@link #batch} + * method. */ Ext.define('Ext.data.proxy.Proxy', { alias: 'proxy.proxy', @@ -73,36 +66,55 @@ Ext.define('Ext.data.proxy.Proxy', { /** * @cfg {String} batchOrder - * Comma-separated ordering 'create', 'update' and 'destroy' actions when batching. Override this - * to set a different order for the batched CRUD actions to be executed in. Defaults to 'create,update,destroy' + * Comma-separated ordering 'create', 'update' and 'destroy' actions when batching. Override this to set a different + * order for the batched CRUD actions to be executed in. Defaults to 'create,update,destroy'. */ batchOrder: 'create,update,destroy', /** - * @cfg {Boolean} batchActions True to batch actions of a particular type when synchronizing the store. - * Defaults to <tt>true</tt>. + * @cfg {Boolean} batchActions + * True to batch actions of a particular type when synchronizing the store. Defaults to true. */ batchActions: true, /** - * @cfg {String} defaultReaderType The default registered reader type. Defaults to 'json' + * @cfg {String} defaultReaderType + * The default registered reader type. Defaults to 'json'. * @private */ defaultReaderType: 'json', /** - * @cfg {String} defaultWriterType The default registered writer type. Defaults to 'json' + * @cfg {String} defaultWriterType + * The default registered writer type. Defaults to 'json'. * @private */ defaultWriterType: 'json', /** - * @cfg {String/Ext.data.Model} model The name of the Model to tie to this Proxy. Can be either the string name of - * the Model, or a reference to the Model constructor. Required. + * @cfg {String/Ext.data.Model} model + * The name of the Model to tie to this Proxy. Can be either the string name of the Model, or a reference to the + * Model constructor. Required. + */ + + /** + * @cfg {Object/String/Ext.data.reader.Reader} reader + * The Ext.data.reader.Reader to use to decode the server's response or data read from client. This can either be a + * Reader instance, a config object or just a valid Reader type name (e.g. 'json', 'xml'). + */ + + /** + * @cfg {Object/String/Ext.data.writer.Writer} writer + * The Ext.data.writer.Writer to use to encode any request sent to the server or saved to client. This can either be + * a Writer instance, a config object or just a valid Writer type name (e.g. 'json', 'xml'). */ isProxy: true, + /** + * Creates the Proxy + * @param {Object} config (optional) Config object. + */ constructor: function(config) { config = config || {}; @@ -119,7 +131,8 @@ Ext.define('Ext.data.proxy.Proxy', { /** * Sets the model associated with this proxy. This will only usually be called by a Store - * @param {String|Ext.data.Model} model The new model. Can be either the model name string, + * + * @param {String/Ext.data.Model} model The new model. Can be either the model name string, * or a reference to the model's constructor * @param {Boolean} setOnStore Sets the new model on the associated Store, if one is present */ @@ -147,8 +160,9 @@ Ext.define('Ext.data.proxy.Proxy', { /** * Sets the Proxy's Reader by string, config object or Reader instance - * @param {String|Object|Ext.data.reader.Reader} reader The new Reader, which can be either a type string, a configuration object - * or an Ext.data.reader.Reader instance + * + * @param {String/Object/Ext.data.reader.Reader} reader The new Reader, which can be either a type string, + * a configuration object or an Ext.data.reader.Reader instance * @return {Ext.data.reader.Reader} The attached Reader object */ setReader: function(reader) { @@ -186,8 +200,9 @@ Ext.define('Ext.data.proxy.Proxy', { /** * Sets the Proxy's Writer by string, config object or Writer instance - * @param {String|Object|Ext.data.writer.Writer} writer The new Writer, which can be either a type string, a configuration object - * or an Ext.data.writer.Writer instance + * + * @param {String/Object/Ext.data.writer.Writer} writer The new Writer, which can be either a type string, + * a configuration object or an Ext.data.writer.Writer instance * @return {Ext.data.writer.Writer} The attached Writer object */ setWriter: function(writer) { @@ -256,19 +271,22 @@ Ext.define('Ext.data.proxy.Proxy', { destroy: Ext.emptyFn, /** - * Performs a batch of {@link Ext.data.Operation Operations}, in the order specified by {@link #batchOrder}. Used internally by - * {@link Ext.data.Store}'s {@link Ext.data.Store#sync sync} method. Example usage: - * <pre><code> - * myProxy.batch({ - * create : [myModel1, myModel2], - * update : [myModel3], - * destroy: [myModel4, myModel5] - * }); - * </code></pre> - * Where the myModel* above are {@link Ext.data.Model Model} instances - in this case 1 and 2 are new instances and have not been - * saved before, 3 has been saved previously but needs to be updated, and 4 and 5 have already been saved but should now be destroyed. + * Performs a batch of {@link Ext.data.Operation Operations}, in the order specified by {@link #batchOrder}. Used + * internally by {@link Ext.data.Store}'s {@link Ext.data.Store#sync sync} method. Example usage: + * + * myProxy.batch({ + * create : [myModel1, myModel2], + * update : [myModel3], + * destroy: [myModel4, myModel5] + * }); + * + * Where the myModel* above are {@link Ext.data.Model Model} instances - in this case 1 and 2 are new instances and + * have not been saved before, 3 has been saved previously but needs to be updated, and 4 and 5 have already been + * saved but should now be destroyed. + * * @param {Object} operations Object containing the Model instances to act upon, keyed by action name - * @param {Object} listeners Optional listeners object passed straight through to the Batch - see {@link Ext.data.Batch} + * @param {Object} listeners (optional) listeners object passed straight through to the Batch - + * see {@link Ext.data.Batch} * @return {Ext.data.Batch} The newly created Ext.data.Batch object */ batch: function(operations, listeners) {