Upgrade to ExtJS 4.0.0 - Released 04/26/2011
[extjs.git] / docs / api / Ext.data.proxy.Rest.html
diff --git a/docs/api/Ext.data.proxy.Rest.html b/docs/api/Ext.data.proxy.Rest.html
new file mode 100644 (file)
index 0000000..d98e2dc
--- /dev/null
@@ -0,0 +1,680 @@
+<!DOCTYPE html><html><head><title>Ext.data.proxy.Rest | Ext JS 4.0 Documentation</title><script type="text/javascript" src="../ext-all.js"></script><link rel="stylesheet" href="../reset.css" type="text/css"><link rel="stylesheet" href="../scrollbars.css" type="text/css"><link rel="stylesheet" href="../docs.css" type="text/css"><link id="styleCss" rel="stylesheet" href="../style.css" type="text/css"><script type="text/javascript" src="../prettify.js"></script><link rel="stylesheet" href="../prettify.css" type="text/css"><!-- link(rel: 'stylesheet', href: req.baseURL + '/css/ext4.css', type: 'text/css')--><link rel="shortcut icon" type="image/ico" href="../favicon.ico"><!--[if IE]>
+<style type="text/css">.head-band { display: none; }
+.header { border: 0; top: 0; left: 0px; background: url(../header.gif) repeat-x; }
+.doc-tab .members .member a.more { background-color: #efefef; }
+</style><link rel="stylesheet" href="/new/css/ie.css" type="text/css"><![endif]-->
+</head><body id="ext-body" class="iScroll"><div id="notice" class="notice">For up to date documentation and features, visit 
+<a href="http://docs.sencha.com/ext-js/4-0">http://docs.sencha.com/ext-js/4-0</a></div><div class="wrapper"><div class="head-band"></div><div class="header"><h2><a href="../index.html">Sencha Documentation</a></h2></div><div id="search"><form><input type="text" placeholder="Search" id="search-field" autocomplete="off" name="q"></form><div id="search-box"></div></div><div id="treePanel"></div><div id="container"><script type="text/javascript">
+
+    req = {
+        liveURL: '.',
+        standAloneMode: true,
+        origDocClass: 'Ext.data.proxy.Rest',
+        docClass: 'Ext.data.proxy.Rest',
+        docReq: 'Ext.data.proxy.Rest',
+        version: '4.0',
+        baseURL: '.',
+        baseDocURL: '.',
+        baseProdURL: '.'
+    };
+
+    clsInfo = {};
+
+
+
+</script>
+
+<script type="text/javascript" src="../search.js"></script>
+<!--script type="text/javascript" src="/new/javascripts/app/examples.js"></script-->
+<script type="text/javascript" src="../class_tree.js"></script>
+<script type="text/javascript" src="../class_doc.js"></script>
+<script type="text/javascript">
+    req.source = 'Rest.html#Ext-data.proxy.Rest';
+    clsInfo = {"methods":["Rest","addEvents","addListener","addManagedListener","batch","buildRequest","buildUrl","capture","clearListeners","clearManagedListeners","doRequest","enableBubble","encodeFilters","encodeSorters","fireEvent","getMethod","getModel","getReader","getWriter","hasListener","observe","on","processResponse","relayEvents","releaseCapture","removeListener","removeManagedListener","resumeEvents","setModel","setReader","setWriter","suspendEvents","un"],"cfgs":["api","appendId","batchActions","batchOrder","cacheString","directionParam","extraParams","filterParam","format","groupParam","headers","limitParam","listeners","model","noCache","pageParam","reader","simpleSortMode","sortParam","startParam","timeout","url","writer"],"properties":["actionMethods","afterRequest","create","destroy","read","update"],"events":["exception"],"subclasses":[]};
+    Ext.onReady(function() {
+        Ext.create('Docs.classPanel');
+    });
+</script><div id="top-block" class="top-block"><h1 id="clsTitle" class="cls"><a href="../source/Rest.html#Ext-data.proxy.Rest" target="_blank">Ext.data.proxy.Rest</a></h1></div><div id="docContent"><div id="doc-overview-content"><div class="lft"><pre class="subclasses"><h4>Hierarchy</h4><div class="subclass f"><a href="Ext.data.proxy.Proxy.html" rel="Ext.data.proxy.Proxy" class="cls docClass">Ext.data.proxy.Proxy</a><div class="subclass"><a href="Ext.data.proxy.Server.html" rel="Ext.data.proxy.Server" class="cls docClass">Ext.data.proxy.Server</a><div class="subclass"><a href="Ext.data.proxy.Ajax.html" rel="Ext.data.proxy.Ajax" class="cls docClass">Ext.data.proxy.Ajax</a><div class="subclass"><strong>Ext.data.proxy.Rest</strong></div></div></div></div><h4>Mixins</h4><div class="mixin"><a href="Ext.util.Observable.html" rel="Ext.util.Observable" class="cls docClass">Ext.util.Observable</a></div></pre><p>RestProxy is a specialization of the <a href="Ext.data.proxy.Ajax.html" rel="Ext.data.proxy.Ajax" class="docClass">AjaxProxy</a> which simply maps the four actions 
+(create, read, update and destroy) to RESTful HTTP verbs. For example, let's set up a <a href="Ext.data.Model.html" rel="Ext.data.Model" class="docClass">Model</a>
+with an inline RestProxy</p>
+
+
+
+
+<pre class="prettyprint"><code>Ext.define('User', {
+    extend: 'Ext.data.Model',
+    fields: ['id', 'name', 'email'],
+
+    proxy: {
+        type: 'rest',
+        url : '/users'
+    }
+});
+</code></pre>
+
+
+
+
+<p>Now we can create a new User instance and save it via the RestProxy. Doing this will cause the Proxy to send a
+POST request to '/users':
+
+<pre class="prettyprint"><code>var user = Ext.ModelManager.create({name: 'Ed Spencer', email: 'ed@sencha.com'}, 'User');
+
+user.save(); //POST /users
+</code></pre>
+
+<p>Let's expand this a little and provide a callback for the <a href="Ext.data.Model.html#save" rel="Ext.data.Model#save" class="docClass">Ext.data.Model.save</a> call to update the Model
+once it has been created. We'll assume the creation went successfully and that the server gave this user an ID of 
+123:</p>
+
+<pre class="prettyprint"><code>user.save({
+    success: function(user) {
+        user.set('name', 'Khan Noonien Singh');
+
+        user.save(); //PUT /users/123
+    }
+});
+</code></pre>
+
+<p>Now that we're no longer creating a new Model instance, the request method is changed to an HTTP PUT, targeting
+the relevant url for that user. Now let's delete this user, which will use the DELETE method:</p>
+
+<pre class="prettyprint"><code>    user.destroy(); //DELETE /users/123
+</code></pre>
+
+<p>Finally, when we perform a load of a Model or Store, RestProxy will use the GET method:</p>
+
+<pre class="prettyprint"><code>//1. Load via Store
+
+//the Store automatically picks up the Proxy from the User model
+var store = new Ext.data.Store({
+    model: 'User'
+});
+
+store.load(); //GET /users
+
+//2. Load directly from the Model
+
+//GET /users/123
+Ext.ModelManager.getModel('User').load(123, {
+    success: function(user) {
+        console.log(user.getId()); //outputs 123
+    }
+});
+</code></pre>
+
+<p><u>Url generation</u></p>
+
+<p>RestProxy is able to automatically generate the urls above based on two configuration options - <a href="Ext.data.proxy.Rest.html#appendId" rel="Ext.data.proxy.Rest#appendId" class="docClass">appendId</a>
+and <a href="Ext.data.proxy.Rest.html#format" rel="Ext.data.proxy.Rest#format" class="docClass">format</a>. If appendId is true (it is by default) then RestProxy will automatically append the ID of the 
+Model instance in question to the configured url, resulting in the '/users/123' that we saw above.</p>
+
+<p>If the request is not for a specific Model instance (e.g. loading a Store), the url is not appended with an id. 
+RestProxy will automatically insert a '/' before the ID if one is not already present.</p>
+
+<pre class="prettyprint"><code>new Ext.data.proxy.Rest({
+    url: '/users',
+    appendId: true //default
+});
+
+// Collection url: /users
+// Instance url  : /users/123
+</code></pre>
+
+<p>RestProxy can also optionally append a format string to the end of any generated url:</p>
+
+<pre class="prettyprint"><code>new Ext.data.proxy.Rest({
+    url: '/users',
+    format: 'json'
+});
+
+// Collection url: /users.json
+// Instance url  : /users/123.json
+</code></pre>
+
+<p>If further customization is needed, simply implement the <a href="Ext.data.proxy.Rest.html#buildUrl" rel="Ext.data.proxy.Rest#buildUrl" class="docClass">buildUrl</a> method and add your custom generated
+url onto the <a href="Ext.data.Request.html" rel="Ext.data.Request" class="docClass">Request</a> object that is passed to buildUrl. See 
+<a href="source/RestProxy.html#method-Ext.data.proxy.Rest-buildUrl">RestProxy's implementation</a> for an example of
+how to achieve this.</p>
+
+<p>Note that RestProxy inherits from <a href="Ext.data.proxy.Ajax.html" rel="Ext.data.proxy.Ajax" class="docClass">AjaxProxy</a>, which already injects all of the sorter,
+filter, group and paging options into the generated url. See the <a href="Ext.data.proxy.Ajax.html" rel="Ext.data.proxy.Ajax" class="docClass">AjaxProxy docs</a> for more
+details.</p>
+
+<div class="members"><div class="m-cfgs"><div class="definedBy">Defined By</div><a name="configs"></a><h3 class="cfg p">Config Options</h3><h4 class="cfgGroup">Other Configs</h4><div id="config-api" class="member f inherited"><a href="Ext.data.proxy.Rest.html#config-api" rel="config-api" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Server.html" class="definedIn docClass">Ext.data.proxy.Server</a><br/><a href="../source/Server.html#Ext-data.proxy.Server-cfg-api" class="viewSource">view source</a></div><a name="api"></a><a name="config-api"></a><a href="Ext.data.proxy.Rest.html#" rel="config-api" class="cls expand">api</a><span> : Object</span></div><div class="description"><div class="short">Specific urls to call on CRUD action methods "read", "create", "update" and "destroy".
+Defaults to:
+
+api: {
+    read ...</div><div class="long"><p>Specific urls to call on CRUD action methods "read", "create", "update" and "destroy".
+Defaults to:</p>
+
+<pre><code>api: {
+    read    : undefined,
+    create  : undefined,
+    update  : undefined,
+    destroy : undefined
+}
+</code></pre>
+
+
+<p>The url is built based upon the action being executed <tt>[load|create|save|destroy]</tt>
+using the commensurate <tt><a href="Ext.data.proxy.Rest.html#api" rel="Ext.data.proxy.Rest#api" class="docClass">api</a></tt> property, or if undefined default to the
+configured <a href="Ext.data.Store.html" rel="Ext.data.Store" class="docClass">Ext.data.Store</a>.<a href="Ext.data.proxy.Server.html#url" rel="Ext.data.proxy.Server#url" class="docClass">url</a>.</p>
+
+
+<br>
+
+
+<p>For example:</p>
+
+
+<pre><code>api: {
+    load :    '/controller/load',
+    create :  '/controller/new',
+    save :    '/controller/update',
+    destroy : '/controller/destroy_action'
+}
+</code></pre>
+
+
+<p>If the specific URL for a given CRUD action is undefined, the CRUD action request
+will be directed to the configured <tt><a href="Ext.data.proxy.Server.html#url" rel="Ext.data.proxy.Server#url" class="docClass">url</a></tt>.</p>
+
+</div></div></div><div id="config-appendId" class="member ni"><a href="Ext.data.proxy.Rest.html#config-appendId" rel="config-appendId" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Rest.html" class="definedIn docClass">Ext.data.proxy.Rest</a><br/><a href="../source/Rest.html#Ext-data.proxy.Rest-cfg-appendId" class="viewSource">view source</a></div><a name="appendId"></a><a name="config-appendId"></a><a href="Ext.data.proxy.Rest.html#" rel="config-appendId" class="cls expand">appendId</a><span> : Boolean</span></div><div class="description"><div class="short">True to automatically append the ID of a Model instance when performing a request based
+on that single instance. See ...</div><div class="long"><p>True to automatically append the ID of a Model instance when performing a request based
+on that single instance. See RestProxy intro docs for more details. Defaults to true.</p>
+</div></div></div><div id="config-batchActions" class="member ni"><a href="Ext.data.proxy.Rest.html#config-batchActions" rel="config-batchActions" class="expand more"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Rest.html" class="definedIn docClass">Ext.data.proxy.Rest</a><br/><a href="../source/Rest.html#Ext-data.proxy.Rest-cfg-batchActions" class="viewSource">view source</a></div><a name="batchActions"></a><a name="config-batchActions"></a><a href="Ext.data.proxy.Rest.html#" rel="config-batchActions" class="cls expand">batchActions</a><span> : Boolean</span></div><div class="description"><div class="short"><p>True to batch actions of a particular type when synchronizing the store.
+Defaults to <tt>false</tt>.</p>
+</div><div class="long"><p>True to batch actions of a particular type when synchronizing the store.
+Defaults to <tt>false</tt>.</p>
+</div></div></div><div id="config-batchOrder" class="member inherited"><a href="Ext.data.proxy.Rest.html#config-batchOrder" rel="config-batchOrder" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Proxy.html" class="definedIn docClass">Ext.data.proxy.Proxy</a><br/><a href="../source/Proxy2.html#Ext-data.proxy.Proxy-cfg-batchOrder" class="viewSource">view source</a></div><a name="batchOrder"></a><a name="config-batchOrder"></a><a href="Ext.data.proxy.Rest.html#" rel="config-batchOrder" class="cls expand">batchOrder</a><span> : String</span></div><div class="description"><div class="short">Comma-separated ordering 'create', 'update' and 'destroy' actions when batching. Override this
+to set a different ord...</div><div class="long"><p>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'</p>
+</div></div></div><div id="config-cacheString" class="member inherited"><a href="Ext.data.proxy.Rest.html#config-cacheString" rel="config-cacheString" class="expand more"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Server.html" class="definedIn docClass">Ext.data.proxy.Server</a><br/><a href="../source/Server.html#Ext-data.proxy.Server-cfg-cacheString" class="viewSource">view source</a></div><a name="cacheString"></a><a name="config-cacheString"></a><a href="Ext.data.proxy.Rest.html#" rel="config-cacheString" class="cls expand">cacheString</a><span> : String</span></div><div class="description"><div class="short"><p>The name of the cache param added to the url when using noCache (defaults to "_dc")</p>
+</div><div class="long"><p>The name of the cache param added to the url when using noCache (defaults to "_dc")</p>
+</div></div></div><div id="config-directionParam" class="member inherited"><a href="Ext.data.proxy.Rest.html#config-directionParam" rel="config-directionParam" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Server.html" class="definedIn docClass">Ext.data.proxy.Server</a><br/><a href="../source/Server.html#Ext-data.proxy.Server-cfg-directionParam" class="viewSource">view source</a></div><a name="directionParam"></a><a name="config-directionParam"></a><a href="Ext.data.proxy.Rest.html#" rel="config-directionParam" class="cls expand">directionParam</a><span> : String</span></div><div class="description"><div class="short">The name of the direction parameter to send in a request. This is only used when simpleSortMode is set to true.
+Defau...</div><div class="long"><p>The name of the direction parameter to send in a request. <strong>This is only used when simpleSortMode is set to true.</strong>
+Defaults to 'dir'.</p>
+</div></div></div><div id="config-extraParams" class="member inherited"><a href="Ext.data.proxy.Rest.html#config-extraParams" rel="config-extraParams" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Server.html" class="definedIn docClass">Ext.data.proxy.Server</a><br/><a href="../source/Server.html#Ext-data.proxy.Server-cfg-extraParams" class="viewSource">view source</a></div><a name="extraParams"></a><a name="config-extraParams"></a><a href="Ext.data.proxy.Rest.html#" rel="config-extraParams" class="cls expand">extraParams</a><span> : Object</span></div><div class="description"><div class="short">Extra parameters that will be included on every request. Individual requests with params
+of the same name will overri...</div><div class="long"><p>Extra parameters that will be included on every request. Individual requests with params
+of the same name will override these params when they are in conflict.</p>
+</div></div></div><div id="config-filterParam" class="member inherited"><a href="Ext.data.proxy.Rest.html#config-filterParam" rel="config-filterParam" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Server.html" class="definedIn docClass">Ext.data.proxy.Server</a><br/><a href="../source/Server.html#Ext-data.proxy.Server-cfg-filterParam" class="viewSource">view source</a></div><a name="filterParam"></a><a name="config-filterParam"></a><a href="Ext.data.proxy.Rest.html#" rel="config-filterParam" class="cls expand">filterParam</a><span> : String</span></div><div class="description"><div class="short">The name of the 'filter' parameter to send in a request. Defaults to 'filter'. Set
+this to undefined if you don't wan...</div><div class="long"><p>The name of the 'filter' parameter to send in a request. Defaults to 'filter'. Set
+this to undefined if you don't want to send a filter parameter</p>
+</div></div></div><div id="config-format" class="member ni"><a href="Ext.data.proxy.Rest.html#config-format" rel="config-format" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Rest.html" class="definedIn docClass">Ext.data.proxy.Rest</a><br/><a href="../source/Rest.html#Ext-data.proxy.Rest-cfg-format" class="viewSource">view source</a></div><a name="format"></a><a name="config-format"></a><a href="Ext.data.proxy.Rest.html#" rel="config-format" class="cls expand">format</a><span> : String</span></div><div class="description"><div class="short">Optional data format to send to the server when making any request (e.g. 'json'). See the
+RestProxy intro docs for fu...</div><div class="long"><p>Optional data format to send to the server when making any request (e.g. 'json'). See the
+RestProxy intro docs for full details. Defaults to undefined.</p>
+</div></div></div><div id="config-groupParam" class="member inherited"><a href="Ext.data.proxy.Rest.html#config-groupParam" rel="config-groupParam" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Server.html" class="definedIn docClass">Ext.data.proxy.Server</a><br/><a href="../source/Server.html#Ext-data.proxy.Server-cfg-groupParam" class="viewSource">view source</a></div><a name="groupParam"></a><a name="config-groupParam"></a><a href="Ext.data.proxy.Rest.html#" rel="config-groupParam" class="cls expand">groupParam</a><span> : String</span></div><div class="description"><div class="short">The name of the 'group' parameter to send in a request. Defaults to 'group'. Set this
+to undefined if you don't want ...</div><div class="long"><p>The name of the 'group' parameter to send in a request. Defaults to 'group'. Set this
+to undefined if you don't want to send a group parameter</p>
+</div></div></div><div id="config-headers" class="member inherited"><a href="Ext.data.proxy.Rest.html#config-headers" rel="config-headers" class="expand more"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Ajax.html" class="definedIn docClass">Ext.data.proxy.Ajax</a><br/><a href="../source/Ajax2.html#Ext-data.proxy.Ajax-cfg-headers" class="viewSource">view source</a></div><a name="headers"></a><a name="config-headers"></a><a href="Ext.data.proxy.Rest.html#" rel="config-headers" class="cls expand">headers</a><span> : Object</span></div><div class="description"><div class="short"><p>Any headers to add to the Ajax request. Defaults to <tt>undefined</tt>.</p>
+</div><div class="long"><p>Any headers to add to the Ajax request. Defaults to <tt>undefined</tt>.</p>
+</div></div></div><div id="config-limitParam" class="member inherited"><a href="Ext.data.proxy.Rest.html#config-limitParam" rel="config-limitParam" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Server.html" class="definedIn docClass">Ext.data.proxy.Server</a><br/><a href="../source/Server.html#Ext-data.proxy.Server-cfg-limitParam" class="viewSource">view source</a></div><a name="limitParam"></a><a name="config-limitParam"></a><a href="Ext.data.proxy.Rest.html#" rel="config-limitParam" class="cls expand">limitParam</a><span> : String</span></div><div class="description"><div class="short">The name of the 'limit' parameter to send in a request. Defaults to 'limit'. Set this
+to undefined if you don't want ...</div><div class="long"><p>The name of the 'limit' parameter to send in a request. Defaults to 'limit'. Set this
+to undefined if you don't want to send a limit parameter</p>
+</div></div></div><div id="config-listeners" class="member inherited"><a href="Ext.data.proxy.Rest.html#config-listeners" rel="config-listeners" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-cfg-listeners" class="viewSource">view source</a></div><a name="listeners"></a><a name="config-listeners"></a><a href="Ext.data.proxy.Rest.html#" rel="config-listeners" class="cls expand">listeners</a><span> : Object</span></div><div class="description"><div class="short">(optional) A config object containing one or more event handlers to be added to this
+object during initialization.  T...</div><div class="long"><p>(optional) <p>A config object containing one or more event handlers to be added to this
+object during initialization.  This should be a valid listeners config object as specified in the
+<a href="Ext.data.proxy.Rest.html#addListener" rel="Ext.data.proxy.Rest#addListener" class="docClass">addListener</a> example for attaching multiple handlers at once.</p></p>
+
+<br><p><b><u>DOM events from ExtJs <a href="Ext.Component.html" rel="Ext.Component" class="docClass">Components</a></u></b></p>
+
+
+<br><p>While <i>some</i> ExtJs Component classes export selected DOM events (e.g. "click", "mouseover" etc), this
+
+
+<p>is usually only done when extra value can be added. For example the <a href="Ext.view.View.html" rel="Ext.view.View" class="docClass">DataView</a>'s
+<b><code><a href="Ext.view.View.html#click" rel="Ext.view.View#click" class="docClass">click</a></code></b> event passing the node clicked on. To access DOM
+events directly from a child element of a Component, we need to specify the <code>element</code> option to
+identify the Component property to add a DOM listener to:</p>
+
+<pre><code>new Ext.panel.Panel({
+    width: 400,
+    height: 200,
+    dockedItems: [{
+        xtype: 'toolbar'
+    }],
+    listeners: {
+        click: {
+            element: 'el', //bind to the underlying el property on the panel
+            fn: function(){ console.log('click el'); }
+        },
+        dblclick: {
+            element: 'body', //bind to the underlying body property on the panel
+            fn: function(){ console.log('dblclick body'); }
+        }
+    }
+});
+</code></pre>
+
+
+<p></p></p>
+</div></div></div><div id="config-model" class="member inherited"><a href="Ext.data.proxy.Rest.html#config-model" rel="config-model" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Proxy.html" class="definedIn docClass">Ext.data.proxy.Proxy</a><br/><a href="../source/Proxy2.html#Ext-data.proxy.Proxy-cfg-model" class="viewSource">view source</a></div><a name="model"></a><a name="config-model"></a><a href="Ext.data.proxy.Rest.html#" rel="config-model" class="cls expand">model</a><span> : String/Ext.data.Model</span></div><div class="description"><div class="short">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 c...</div><div class="long"><p>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.</p>
+</div></div></div><div id="config-noCache" class="member inherited"><a href="Ext.data.proxy.Rest.html#config-noCache" rel="config-noCache" class="expand more"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Server.html" class="definedIn docClass">Ext.data.proxy.Server</a><br/><a href="../source/Server.html#Ext-data.proxy.Server-cfg-noCache" class="viewSource">view source</a></div><a name="noCache"></a><a name="config-noCache"></a><a href="Ext.data.proxy.Rest.html#" rel="config-noCache" class="cls expand">noCache</a><span> : Boolean</span></div><div class="description"><div class="short"><p>(optional) Defaults to true. Disable caching by adding a unique parameter
+name to the request.</p>
+</div><div class="long"><p>(optional) Defaults to true. Disable caching by adding a unique parameter
+name to the request.</p>
+</div></div></div><div id="config-pageParam" class="member inherited"><a href="Ext.data.proxy.Rest.html#config-pageParam" rel="config-pageParam" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Server.html" class="definedIn docClass">Ext.data.proxy.Server</a><br/><a href="../source/Server.html#Ext-data.proxy.Server-cfg-pageParam" class="viewSource">view source</a></div><a name="pageParam"></a><a name="config-pageParam"></a><a href="Ext.data.proxy.Rest.html#" rel="config-pageParam" class="cls expand">pageParam</a><span> : String</span></div><div class="description"><div class="short">The name of the 'page' parameter to send in a request. Defaults to 'page'. Set this to
+undefined if you don't want to...</div><div class="long"><p>The name of the 'page' parameter to send in a request. Defaults to 'page'. Set this to
+undefined if you don't want to send a page parameter</p>
+</div></div></div><div id="config-reader" class="member inherited"><a href="Ext.data.proxy.Rest.html#config-reader" rel="config-reader" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Server.html" class="definedIn docClass">Ext.data.proxy.Server</a><br/><a href="../source/Server.html#Ext-data.proxy.Server-cfg-reader" class="viewSource">view source</a></div><a name="reader"></a><a name="config-reader"></a><a href="Ext.data.proxy.Rest.html#" rel="config-reader" class="cls expand">reader</a><span> : Object/String/Ext.data.reader.Reader</span></div><div class="description"><div class="short">The Ext.data.reader.Reader to use to decode the server's response. This can
+either be a Reader instance, a config obj...</div><div class="long"><p>The <a href="Ext.data.reader.Reader.html" rel="Ext.data.reader.Reader" class="docClass">Ext.data.reader.Reader</a> to use to decode the server's response. This can
+either be a Reader instance, a config object or just a valid Reader type name (e.g. 'json', 'xml').</p>
+</div></div></div><div id="config-simpleSortMode" class="member inherited"><a href="Ext.data.proxy.Rest.html#config-simpleSortMode" rel="config-simpleSortMode" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Server.html" class="definedIn docClass">Ext.data.proxy.Server</a><br/><a href="../source/Server.html#Ext-data.proxy.Server-cfg-simpleSortMode" class="viewSource">view source</a></div><a name="simpleSortMode"></a><a name="config-simpleSortMode"></a><a href="Ext.data.proxy.Rest.html#" rel="config-simpleSortMode" class="cls expand">simpleSortMode</a><span> : Boolean</span></div><div class="description"><div class="short">Enabling simpleSortMode in conjunction with remoteSort will only send one sort property and a direction when a remote...</div><div class="long"><p>Enabling simpleSortMode in conjunction with remoteSort will only send one sort property and a direction when a remote sort is requested.
+The directionParam and sortParam will be sent with the property name and either 'ASC' or 'DESC'</p>
+</div></div></div><div id="config-sortParam" class="member inherited"><a href="Ext.data.proxy.Rest.html#config-sortParam" rel="config-sortParam" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Server.html" class="definedIn docClass">Ext.data.proxy.Server</a><br/><a href="../source/Server.html#Ext-data.proxy.Server-cfg-sortParam" class="viewSource">view source</a></div><a name="sortParam"></a><a name="config-sortParam"></a><a href="Ext.data.proxy.Rest.html#" rel="config-sortParam" class="cls expand">sortParam</a><span> : String</span></div><div class="description"><div class="short">The name of the 'sort' parameter to send in a request. Defaults to 'sort'. Set this
+to undefined if you don't want to...</div><div class="long"><p>The name of the 'sort' parameter to send in a request. Defaults to 'sort'. Set this
+to undefined if you don't want to send a sort parameter</p>
+</div></div></div><div id="config-startParam" class="member inherited"><a href="Ext.data.proxy.Rest.html#config-startParam" rel="config-startParam" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Server.html" class="definedIn docClass">Ext.data.proxy.Server</a><br/><a href="../source/Server.html#Ext-data.proxy.Server-cfg-startParam" class="viewSource">view source</a></div><a name="startParam"></a><a name="config-startParam"></a><a href="Ext.data.proxy.Rest.html#" rel="config-startParam" class="cls expand">startParam</a><span> : String</span></div><div class="description"><div class="short">The name of the 'start' parameter to send in a request. Defaults to 'start'. Set this
+to undefined if you don't want ...</div><div class="long"><p>The name of the 'start' parameter to send in a request. Defaults to 'start'. Set this
+to undefined if you don't want to send a start parameter</p>
+</div></div></div><div id="config-timeout" class="member inherited"><a href="Ext.data.proxy.Rest.html#config-timeout" rel="config-timeout" class="expand more"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Server.html" class="definedIn docClass">Ext.data.proxy.Server</a><br/><a href="../source/Server.html#Ext-data.proxy.Server-cfg-timeout" class="viewSource">view source</a></div><a name="timeout"></a><a name="config-timeout"></a><a href="Ext.data.proxy.Rest.html#" rel="config-timeout" class="cls expand">timeout</a><span> : Number</span></div><div class="description"><div class="short"><p>(optional) The number of milliseconds to wait for a response. Defaults to 30 seconds.</p>
+</div><div class="long"><p>(optional) The number of milliseconds to wait for a response. Defaults to 30 seconds.</p>
+</div></div></div><div id="config-url" class="member inherited"><a href="Ext.data.proxy.Rest.html#config-url" rel="config-url" class="expand more"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Server.html" class="definedIn docClass">Ext.data.proxy.Server</a><br/><a href="../source/Server.html#Ext-data.proxy.Server-cfg-url" class="viewSource">view source</a></div><a name="url"></a><a name="config-url"></a><a href="Ext.data.proxy.Rest.html#" rel="config-url" class="cls expand">url</a><span> : String</span></div><div class="description"><div class="short"><p>The URL from which to request the data object.</p>
+</div><div class="long"><p>The URL from which to request the data object.</p>
+</div></div></div><div id="config-writer" class="member inherited"><a href="Ext.data.proxy.Rest.html#config-writer" rel="config-writer" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Server.html" class="definedIn docClass">Ext.data.proxy.Server</a><br/><a href="../source/Server.html#Ext-data.proxy.Server-cfg-writer" class="viewSource">view source</a></div><a name="writer"></a><a name="config-writer"></a><a href="Ext.data.proxy.Rest.html#" rel="config-writer" class="cls expand">writer</a><span> : Object/String/Ext.data.writer.Writer</span></div><div class="description"><div class="short">The Ext.data.writer.Writer to use to encode any request sent to the server.
+This can either be a Writer instance, a c...</div><div class="long"><p>The <a href="Ext.data.writer.Writer.html" rel="Ext.data.writer.Writer" class="docClass">Ext.data.writer.Writer</a> to use to encode any request sent to the server.
+This can either be a Writer instance, a config object or just a valid Writer type name (e.g. 'json', 'xml').</p>
+</div></div></div></div><div class="m-properties"><a name="properties"></a><div class="definedBy">Defined By</div><h3 class="prp p">Properties</h3><div id="property-actionMethods" class="member f ni"><a href="Ext.data.proxy.Rest.html#property-actionMethods" rel="property-actionMethods" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Rest.html" class="definedIn docClass">Ext.data.proxy.Rest</a><br/><a href="../source/Rest.html#Ext-data.proxy.Rest-property-actionMethods" class="viewSource">view source</a></div><a name="actionMethods"></a><a name="property-actionMethods"></a><a href="Ext.data.proxy.Rest.html#" rel="property-actionMethods" class="cls expand">actionMethods</a><span> : Object</span></div><div class="description"><div class="short">Mapping of action name to HTTP request method. These default to RESTful conventions for the 'create', 'read',
+'update...</div><div class="long"><p>Mapping of action name to HTTP request method. These default to RESTful conventions for the 'create', 'read',
+'update' and 'destroy' actions (which map to 'POST', 'GET', 'PUT' and 'DELETE' respectively). This object should
+not be changed except globally via <a href="Ext.html#override" rel="Ext#override" class="docClass">Ext.override</a> - the <a href="Ext.data.proxy.Rest.html#getMethod" rel="Ext.data.proxy.Rest#getMethod" class="docClass">getMethod</a> function can be overridden instead.</p>
+</div></div></div><div id="property-afterRequest" class="member inherited"><a href="Ext.data.proxy.Rest.html#property-afterRequest" rel="property-afterRequest" class="expand more"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Server.html" class="definedIn docClass">Ext.data.proxy.Server</a><br/><a href="../source/Server.html#Ext-data.proxy.Server-property-afterRequest" class="viewSource">view source</a></div><a name="afterRequest"></a><a name="property-afterRequest"></a><a href="Ext.data.proxy.Rest.html#" rel="property-afterRequest" class="cls expand">afterRequest</a><span> : Object</span></div><div class="description"><div class="short"><p>Optional callback function which can be used to clean up after a request has been completed.</p>
+</div><div class="long"><p>Optional callback function which can be used to clean up after a request has been completed.</p>
+</div></div></div><div id="property-create" class="member inherited"><a href="Ext.data.proxy.Rest.html#property-create" rel="property-create" class="expand more"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Proxy.html" class="definedIn docClass">Ext.data.proxy.Proxy</a><br/><a href="../source/Proxy2.html#Ext-data.proxy.Proxy-property-create" class="viewSource">view source</a></div><a name="create"></a><a name="property-create"></a><a href="Ext.data.proxy.Rest.html#" rel="property-create" class="cls expand">create</a><span> : Object</span></div><div class="description"><div class="short"><p>Performs the given create operation.</p>
+</div><div class="long"><p>Performs the given create operation.</p>
+</div></div></div><div id="property-destroy" class="member inherited"><a href="Ext.data.proxy.Rest.html#property-destroy" rel="property-destroy" class="expand more"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Proxy.html" class="definedIn docClass">Ext.data.proxy.Proxy</a><br/><a href="../source/Proxy2.html#Ext-data.proxy.Proxy-property-destroy" class="viewSource">view source</a></div><a name="destroy"></a><a name="property-destroy"></a><a href="Ext.data.proxy.Rest.html#" rel="property-destroy" class="cls expand">destroy</a><span> : Object</span></div><div class="description"><div class="short"><p>Performs the given destroy operation.</p>
+</div><div class="long"><p>Performs the given destroy operation.</p>
+</div></div></div><div id="property-read" class="member inherited"><a href="Ext.data.proxy.Rest.html#property-read" rel="property-read" class="expand more"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Proxy.html" class="definedIn docClass">Ext.data.proxy.Proxy</a><br/><a href="../source/Proxy2.html#Ext-data.proxy.Proxy-property-read" class="viewSource">view source</a></div><a name="read"></a><a name="property-read"></a><a href="Ext.data.proxy.Rest.html#" rel="property-read" class="cls expand">read</a><span> : Object</span></div><div class="description"><div class="short"><p>Performs the given read operation.</p>
+</div><div class="long"><p>Performs the given read operation.</p>
+</div></div></div><div id="property-update" class="member inherited"><a href="Ext.data.proxy.Rest.html#property-update" rel="property-update" class="expand more"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Proxy.html" class="definedIn docClass">Ext.data.proxy.Proxy</a><br/><a href="../source/Proxy2.html#Ext-data.proxy.Proxy-property-update" class="viewSource">view source</a></div><a name="update"></a><a name="property-update"></a><a href="Ext.data.proxy.Rest.html#" rel="property-update" class="cls expand">update</a><span> : Object</span></div><div class="description"><div class="short"><p>Performs the given update operation.</p>
+</div><div class="long"><p>Performs the given update operation.</p>
+</div></div></div></div><div class="m-methods"><a name="methods"></a><div class="definedBy">Defined By</div><h3 class="mth p">Methods</h3><div id="method-Rest" class="member f inherited"><a href="Ext.data.proxy.Rest.html#method-Rest" rel="method-Rest" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Ajax.html" class="definedIn docClass">Ext.data.proxy.Ajax</a><br/><a href="../source/Ajax2.html#Ext-data.proxy.Ajax-method-constructor" class="viewSource">view source</a></div><a name="Rest"></a><a name="method-Rest"></a><a href="Ext.data.proxy.Rest.html#" rel="method-Rest" class="cls expand">Rest</a> : void</div><div class="description"><div class="short">Note that if this HttpProxy is being used by a Store, then the
+Store's call to load will override any specified callb...</div><div class="long"><p>Note that if this HttpProxy is being used by a <a href="Ext.data.Store.html" rel="Ext.data.Store" class="docClass">Store</a>, then the
+Store's call to <a href="Ext.data.proxy.Rest.html#load" rel="Ext.data.proxy.Rest#load" class="docClass">load</a> will override any specified <tt>callback</tt> and <tt>params</tt>
+options. In this case, use the Store's <a href="Ext.data.Store.html#events" rel="Ext.data.Store#events" class="docClass">events</a> to modify parameters,
+or react to loading events. The Store's <a href="Ext.data.Store.html#baseParams" rel="Ext.data.Store#baseParams" class="docClass">baseParams</a> may also be
+used to pass parameters known at instantiation time.</p>
+
+
+
+
+<p>If an options parameter is passed, the singleton <a href="Ext.Ajax.html" rel="Ext.Ajax" class="docClass">Ext.Ajax</a> object will be used to make
+the request.</p>
+
+<h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
+</li></ul></div></div></div><div id="method-addEvents" class="member inherited"><a href="Ext.data.proxy.Rest.html#method-addEvents" rel="method-addEvents" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-addEvents" class="viewSource">view source</a></div><a name="addEvents"></a><a name="method-addEvents"></a><a href="Ext.data.proxy.Rest.html#" rel="method-addEvents" class="cls expand">addEvents</a>(
+<span class="pre">Object/String o, String </span>)
+ : void</div><div class="description"><div class="short"><p>Adds the specified events to the list of events which this Observable may fire.</p>
+</div><div class="long"><p>Adds the specified events to the list of events which this Observable may fire.</p>
+<h3 class="pa">Parameters</h3><ul><li><span class="pre">o</span> : Object/String<div class="sub-desc"><p>Either an object with event names as properties with a value of <code>true</code>
+or the first event name string if multiple event names are being passed as separate parameters.</p>
+</div></li><li><span class="pre"></span> : String<div class="sub-desc"><p>[additional] Optional additional event names if multiple event names are being passed as separate parameters.
+Usage:</p>
+
+<pre><code>this.addEvents('storeloaded', 'storecleared');
+</code></pre>
+
+</div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
+</li></ul></div></div></div><div id="method-addListener" class="member inherited"><a href="Ext.data.proxy.Rest.html#method-addListener" rel="method-addListener" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-addListener" class="viewSource">view source</a></div><a name="addListener"></a><a name="method-addListener"></a><a href="Ext.data.proxy.Rest.html#" rel="method-addListener" class="cls expand">addListener</a>(
+<span class="pre">String eventName, Function handler, [Object scope], [Object options]</span>)
+ : void</div><div class="description"><div class="short"><p>Appends an event handler to this object.</p>
+</div><div class="long"><p>Appends an event handler to this object.</p>
+<h3 class="pa">Parameters</h3><ul><li><span class="pre">eventName</span> : String<div class="sub-desc"><p>The name of the event to listen for. May also be an object who's property names are event names. See</p>
+</div></li><li><span class="pre">handler</span> : Function<div class="sub-desc"><p>The method the event invokes.</p>
+</div></li><li><span class="pre">scope</span> : Object<div class="sub-desc"><p>(optional) The scope (<code><b>this</b></code> reference) in which the handler function is executed.
+<b>If omitted, defaults to the object which fired the event.</b></p>
+</div></li><li><span class="pre">options</span> : Object<div class="sub-desc"><p>(optional) An object containing handler configuration.
+properties. This may contain any of the following properties:<ul>
+<li><b>scope</b> : Object<div class="sub-desc">The scope (<code><b>this</b></code> reference) in which the handler function is executed.
+<b>If omitted, defaults to the object which fired the event.</b></div></li>
+<li><b>delay</b> : Number<div class="sub-desc">The number of milliseconds to delay the invocation of the handler after the event fires.</div></li>
+<li><b>single</b> : Boolean<div class="sub-desc">True to add a handler to handle just the next firing of the event, and then remove itself.</div></li>
+<li><b>buffer</b> : Number<div class="sub-desc">Causes the handler to be scheduled to run in an <a href="Ext.util.DelayedTask.html" rel="Ext.util.DelayedTask" class="docClass">Ext.util.DelayedTask</a> delayed
+by the specified number of milliseconds. If the event fires again within that time, the original
+handler is <em>not</em> invoked, but the new handler is scheduled in its place.</div></li>
+<li><b>target</b> : Observable<div class="sub-desc">Only call the handler if the event was fired on the target Observable, <i>not</i>
+if the event was bubbled up from a child Observable.</div></li>
+<li><b>element</b> : String<div class="sub-desc"><b>This option is only valid for listeners bound to <a href="Ext.Component.html" rel="Ext.Component" class="docClass">Components</a>.</b>
+The name of a Component property which references an element to add a listener to.</p>
+
+<p>This option is useful during Component construction to add DOM event listeners to elements of <a href="Ext.Component.html" rel="Ext.Component" class="docClass">Components</a> which
+will exist only after the Component is rendered. For example, to add a click listener to a Panel's body:
+<pre><code>new Ext.panel.Panel({
+    title: 'The title',
+    listeners: {
+        click: this.handlePanelClick,
+        element: 'body'
+    }
+});
+</code></pre></p>
+
+
+<p>When added in this way, the options available are the options applicable to <a href="Ext.core.Element.html#addListener" rel="Ext.core.Element#addListener" class="docClass">Ext.core.Element.addListener</a></p>
+
+
+<p></div></li>
+</ul><br></p>
+
+<p>
+<b>Combining Options</b><br>
+Using the options argument, it is possible to combine different types of listeners:<br>
+<br>
+A delayed, one-time listener.
+<pre><code>myPanel.on('hide', this.handleClick, this, {
+single: true,
+delay: 100
+});</code></pre>
+<p>
+<b>Attaching multiple handlers in 1 call</b><br>
+The method also allows for a single argument to be passed which is a config object containing properties
+which specify multiple events. For example:
+<pre><code>myGridPanel.on({
+    cellClick: this.onCellClick,
+    mouseover: this.onMouseOver,
+    mouseout: this.onMouseOut,
+    scope: this // Important. Ensure "this" is correct during handler execution
+});
+</code></pre>.
+<p>
+
+</div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
+</li></ul></div></div></div><div id="method-addManagedListener" class="member inherited"><a href="Ext.data.proxy.Rest.html#method-addManagedListener" rel="method-addManagedListener" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-addManagedListener" class="viewSource">view source</a></div><a name="addManagedListener"></a><a name="method-addManagedListener"></a><a href="Ext.data.proxy.Rest.html#" rel="method-addManagedListener" class="cls expand">addManagedListener</a>(
+<span class="pre">Observable/Element item, Object/String ename, Function fn, Object scope, Object opt</span>)
+ : void</div><div class="description"><div class="short"><p>Adds listeners to any Observable object (or Element) which are automatically removed when this Component
+is destroyed.
+
+</div><div class="long"><p>Adds listeners to any Observable object (or Element) which are automatically removed when this Component
+is destroyed.
+
+<h3 class="pa">Parameters</h3><ul><li><span class="pre">item</span> : Observable/Element<div class="sub-desc"><p>The item to which to add a listener/listeners.</p>
+</div></li><li><span class="pre">ename</span> : Object/String<div class="sub-desc"><p>The event name, or an object containing event name properties.</p>
+</div></li><li><span class="pre">fn</span> : Function<div class="sub-desc"><p>Optional. If the <code>ename</code> parameter was an event name, this
+is the handler function.</p>
+</div></li><li><span class="pre">scope</span> : Object<div class="sub-desc"><p>Optional. If the <code>ename</code> parameter was an event name, this
+is the scope (<code>this</code> reference) in which the handler function is executed.</p>
+</div></li><li><span class="pre">opt</span> : Object<div class="sub-desc"><p>Optional. If the <code>ename</code> parameter was an event name, this
+is the <a href="Ext.util.Observable.html#addListener" rel="Ext.util.Observable#addListener" class="docClass">addListener</a> options.</p>
+</div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
+</li></ul></div></div></div><div id="method-batch" class="member inherited"><a href="Ext.data.proxy.Rest.html#method-batch" rel="method-batch" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Proxy.html" class="definedIn docClass">Ext.data.proxy.Proxy</a><br/><a href="../source/Proxy2.html#Ext-data.proxy.Proxy-method-batch" class="viewSource">view source</a></div><a name="batch"></a><a name="method-batch"></a><a href="Ext.data.proxy.Rest.html#" rel="method-batch" class="cls expand">batch</a>(
+<span class="pre">Object operations, Object listeners</span>)
+ : Ext.data.Batch</div><div class="description"><div class="short">Performs a batch of Operations, in the order specified by batchOrder. Used internally by
+Ext.data.Store's sync method...</div><div class="long"><p>Performs a batch of <a href="Ext.data.Operation.html" rel="Ext.data.Operation" class="docClass">Operations</a>, in the order specified by <a href="Ext.data.proxy.Rest.html#batchOrder" rel="Ext.data.proxy.Rest#batchOrder" class="docClass">batchOrder</a>. Used internally by
+<a href="Ext.data.Store.html" rel="Ext.data.Store" class="docClass">Ext.data.Store</a>'s <a href="Ext.data.Store.html#sync" rel="Ext.data.Store#sync" class="docClass">sync</a> method. Example usage:</p>
+
+<pre><code>myProxy.batch({
+    create : [myModel1, myModel2],
+    update : [myModel3],
+    destroy: [myModel4, myModel5]
+});
+</code></pre>
+
+
+<p>Where the myModel* above are <a href="Ext.data.Model.html" rel="Ext.data.Model" class="docClass">Model</a> 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.</p>
+<h3 class="pa">Parameters</h3><ul><li><span class="pre">operations</span> : Object<div class="sub-desc"><p>Object containing the Model instances to act upon, keyed by action name</p>
+</div></li><li><span class="pre">listeners</span> : Object<div class="sub-desc"><p>Optional listeners object passed straight through to the Batch - see <a href="Ext.data.Batch.html" rel="Ext.data.Batch" class="docClass">Ext.data.Batch</a></p>
+</div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">Ext.data.Batch</span>&nbsp; &nbsp;<p>The newly created <a href="Ext.data.Batch.html" rel="Ext.data.Batch" class="docClass">Ext.data.Batch</a> object</p>
+</li></ul></div></div></div><div id="method-buildRequest" class="member inherited"><a href="Ext.data.proxy.Rest.html#method-buildRequest" rel="method-buildRequest" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Server.html" class="definedIn docClass">Ext.data.proxy.Server</a><br/><a href="../source/Server.html#Ext-data.proxy.Server-method-buildRequest" class="viewSource">view source</a></div><a name="buildRequest"></a><a name="method-buildRequest"></a><a href="Ext.data.proxy.Rest.html#" rel="method-buildRequest" class="cls expand">buildRequest</a>(
+<span class="pre">Ext.data.Operation operation</span>)
+ : Ext.data.Request</div><div class="description"><div class="short"><p>Creates and returns an <a href="Ext.data.Request.html" rel="Ext.data.Request" class="docClass">Ext.data.Request</a> object based on the options passed by the <a href="Ext.data.Store.html" rel="Ext.data.Store" class="docClass">Store</a>
+that this Proxy is attached to.</p>
+</div><div class="long"><p>Creates and returns an <a href="Ext.data.Request.html" rel="Ext.data.Request" class="docClass">Ext.data.Request</a> object based on the options passed by the <a href="Ext.data.Store.html" rel="Ext.data.Store" class="docClass">Store</a>
+that this Proxy is attached to.</p>
+<h3 class="pa">Parameters</h3><ul><li><span class="pre">operation</span> : Ext.data.Operation<div class="sub-desc"><p>The <a href="Ext.data.Operation.html" rel="Ext.data.Operation" class="docClass">Operation</a> object to execute</p>
+</div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">Ext.data.Request</span>&nbsp; &nbsp;<p>The request object</p>
+</li></ul></div></div></div><div id="method-buildUrl" class="member ni"><a href="Ext.data.proxy.Rest.html#method-buildUrl" rel="method-buildUrl" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Rest.html" class="definedIn docClass">Ext.data.proxy.Rest</a><br/><a href="../source/Rest.html#Ext-data.proxy.Rest-method-buildUrl" class="viewSource">view source</a></div><a name="buildUrl"></a><a name="method-buildUrl"></a><a href="Ext.data.proxy.Rest.html#" rel="method-buildUrl" class="cls expand">buildUrl</a>(
+<span class="pre">Object request</span>)
+ : void</div><div class="description"><div class="short">Specialized version of buildUrl that incorporates the appendId and format options into the
+generated url. Override th...</div><div class="long"><p>Specialized version of buildUrl that incorporates the <a href="Ext.data.proxy.Rest.html#appendId" rel="Ext.data.proxy.Rest#appendId" class="docClass">appendId</a> and <a href="Ext.data.proxy.Rest.html#format" rel="Ext.data.proxy.Rest#format" class="docClass">format</a> options into the
+generated url. Override this to provide further customizations, but remember to call the superclass buildUrl
+so that additional parameters like the cache buster string are appended</p>
+<h3 class="pa">Parameters</h3><ul><li><span class="pre">request</span> : Object<div class="sub-desc">
+</div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
+</li></ul></div></div></div><div id="method-capture" class="member inherited"><a href="Ext.data.proxy.Rest.html#method-capture" rel="method-capture" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-capture" class="viewSource">view source</a></div><a name="capture"></a><a name="method-capture"></a><a href="Ext.data.proxy.Rest.html#" rel="method-capture" class="cls expand">capture</a>(
+<span class="pre">Observable o, Function fn, [Object scope]</span>)
+ : void</div><div class="description"><div class="short">Starts capture on the specified Observable. All events will be passed
+to the supplied function with the event name + ...</div><div class="long"><p>Starts capture on the specified Observable. All events will be passed
+to the supplied function with the event name + standard signature of the event
+<b>before</b> the event is fired. If the supplied function returns false,
+the event will not fire.</p>
+<h3 class="pa">Parameters</h3><ul><li><span class="pre">o</span> : Observable<div class="sub-desc"><p>The Observable to capture events from.</p>
+</div></li><li><span class="pre">fn</span> : Function<div class="sub-desc"><p>The function to call when an event is fired.</p>
+</div></li><li><span class="pre">scope</span> : Object<div class="sub-desc"><p>(optional) The scope (<code>this</code> reference) in which the function is executed. Defaults to the Observable firing the event.</p>
+</div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
+</li></ul></div></div></div><div id="method-clearListeners" class="member inherited"><a href="Ext.data.proxy.Rest.html#method-clearListeners" rel="method-clearListeners" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-clearListeners" class="viewSource">view source</a></div><a name="clearListeners"></a><a name="method-clearListeners"></a><a href="Ext.data.proxy.Rest.html#" rel="method-clearListeners" class="cls expand">clearListeners</a> : void</div><div class="description"><div class="short"><p>Removes all listeners for this object including the managed listeners</p>
+</div><div class="long"><p>Removes all listeners for this object including the managed listeners</p>
+<h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
+</li></ul></div></div></div><div id="method-clearManagedListeners" class="member inherited"><a href="Ext.data.proxy.Rest.html#method-clearManagedListeners" rel="method-clearManagedListeners" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-clearManagedListeners" class="viewSource">view source</a></div><a name="clearManagedListeners"></a><a name="method-clearManagedListeners"></a><a href="Ext.data.proxy.Rest.html#" rel="method-clearManagedListeners" class="cls expand">clearManagedListeners</a> : void</div><div class="description"><div class="short"><p>Removes all managed listeners for this object.</p>
+</div><div class="long"><p>Removes all managed listeners for this object.</p>
+<h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
+</li></ul></div></div></div><div id="method-doRequest" class="member inherited"><a href="Ext.data.proxy.Rest.html#method-doRequest" rel="method-doRequest" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Server.html" class="definedIn docClass">Ext.data.proxy.Server</a><br/><a href="../source/Server.html#Ext-data.proxy.Server-method-doRequest" class="viewSource">view source</a></div><a name="doRequest"></a><a name="method-doRequest"></a><a href="Ext.data.proxy.Rest.html#" rel="method-doRequest" class="cls expand">doRequest</a>(
+<span class="pre">Ext.data.Operation operation, Function callback, Object scope</span>)
+ : void</div><div class="description"><div class="short">In ServerProxy subclasses, the create, read, update and destroy methods all pass
+through to doRequest. Each ServerPro...</div><div class="long"><p>In ServerProxy subclasses, the <a href="Ext.data.proxy.Rest.html#create" rel="Ext.data.proxy.Rest#create" class="docClass">create</a>, <a href="Ext.data.proxy.Rest.html#read" rel="Ext.data.proxy.Rest#read" class="docClass">read</a>, <a href="Ext.data.proxy.Rest.html#update" rel="Ext.data.proxy.Rest#update" class="docClass">update</a> and <a href="Ext.data.proxy.Rest.html#destroy" rel="Ext.data.proxy.Rest#destroy" class="docClass">destroy</a> methods all pass
+through to doRequest. Each ServerProxy subclass must implement the doRequest method - see <a href="Ext.data.proxy.JsonP.html" rel="Ext.data.proxy.JsonP" class="docClass">Ext.data.proxy.JsonP</a>
+and <a href="Ext.data.proxy.Ajax.html" rel="Ext.data.proxy.Ajax" class="docClass">Ext.data.proxy.Ajax</a> for examples. This method carries the same signature as each of the methods that delegate to it.</p>
+<h3 class="pa">Parameters</h3><ul><li><span class="pre">operation</span> : Ext.data.Operation<div class="sub-desc"><p>The <a href="Ext.data.Operation.html" rel="Ext.data.Operation" class="docClass">Ext.data.Operation</a> object</p>
+</div></li><li><span class="pre">callback</span> : Function<div class="sub-desc"><p>The callback function to call when the Operation has completed</p>
+</div></li><li><span class="pre">scope</span> : Object<div class="sub-desc"><p>The scope in which to execute the callback</p>
+</div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
+</li></ul></div></div></div><div id="method-enableBubble" class="member inherited"><a href="Ext.data.proxy.Rest.html#method-enableBubble" rel="method-enableBubble" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-enableBubble" class="viewSource">view source</a></div><a name="enableBubble"></a><a name="method-enableBubble"></a><a href="Ext.data.proxy.Rest.html#" rel="method-enableBubble" class="cls expand">enableBubble</a>(
+<span class="pre">String/Array events</span>)
+ : void</div><div class="description"><div class="short">Enables events fired by this Observable to bubble up an owner hierarchy by calling
+this.getBubbleTarget() if present....</div><div class="long"><p>Enables events fired by this Observable to bubble up an owner hierarchy by calling
+<code>this.getBubbleTarget()</code> if present. There is no implementation in the Observable base class.</p>
+
+
+<p>This is commonly used by Ext.Components to bubble events to owner Containers. See <a href="Ext.Component.html#getBubbleTarget" rel="Ext.Component#getBubbleTarget" class="docClass">Ext.Component.getBubbleTarget</a>. The default
+implementation in <a href="Ext.Component.html" rel="Ext.Component" class="docClass">Ext.Component</a> returns the Component's immediate owner. But if a known target is required, this can be overridden to
+access the required target more quickly.</p>
+
+
+<p>Example:</p>
+
+
+<pre><code>Ext.override(Ext.form.field.Base, {
+//  Add functionality to Field&#39;s initComponent to enable the change event to bubble
+initComponent : Ext.Function.createSequence(Ext.form.field.Base.prototype.initComponent, function() {
+    this.enableBubble('change');
+}),
+
+//  We know that we want Field&#39;s events to bubble directly to the FormPanel.
+getBubbleTarget : function() {
+    if (!this.formPanel) {
+        this.formPanel = this.findParentByType('form');
+    }
+    return this.formPanel;
+}
+});
+
+var myForm = new Ext.formPanel({
+title: 'User Details',
+items: [{
+    ...
+}],
+listeners: {
+    change: function() {
+        // Title goes red if form has been modified.
+        myForm.header.setStyle('color', 'red');
+    }
+}
+});
+</code></pre>
+
+<h3 class="pa">Parameters</h3><ul><li><span class="pre">events</span> : String/Array<div class="sub-desc"><p>The event name to bubble, or an Array of event names.</p>
+</div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
+</li></ul></div></div></div><div id="method-encodeFilters" class="member inherited"><a href="Ext.data.proxy.Rest.html#method-encodeFilters" rel="method-encodeFilters" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Server.html" class="definedIn docClass">Ext.data.proxy.Server</a><br/><a href="../source/Server.html#Ext-data.proxy.Server-method-encodeFilters" class="viewSource">view source</a></div><a name="encodeFilters"></a><a name="method-encodeFilters"></a><a href="Ext.data.proxy.Rest.html#" rel="method-encodeFilters" class="cls expand">encodeFilters</a>(
+<span class="pre">Array sorters</span>)
+ : String</div><div class="description"><div class="short">Encodes the array of Ext.util.Filter objects into a string to be sent in the request url. By default,
+this simply JSO...</div><div class="long"><p>Encodes the array of <a href="Ext.util.Filter.html" rel="Ext.util.Filter" class="docClass">Ext.util.Filter</a> objects into a string to be sent in the request url. By default,
+this simply JSON-encodes the filter data</p>
+<h3 class="pa">Parameters</h3><ul><li><span class="pre">sorters</span> : Array<div class="sub-desc"><p>The array of <a href="Ext.util.Filter.html" rel="Ext.util.Filter" class="docClass">Filter</a> objects</p>
+</div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">String</span>&nbsp; &nbsp;<p>The encoded filters</p>
+</li></ul></div></div></div><div id="method-encodeSorters" class="member inherited"><a href="Ext.data.proxy.Rest.html#method-encodeSorters" rel="method-encodeSorters" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Server.html" class="definedIn docClass">Ext.data.proxy.Server</a><br/><a href="../source/Server.html#Ext-data.proxy.Server-method-encodeSorters" class="viewSource">view source</a></div><a name="encodeSorters"></a><a name="method-encodeSorters"></a><a href="Ext.data.proxy.Rest.html#" rel="method-encodeSorters" class="cls expand">encodeSorters</a>(
+<span class="pre">Array sorters</span>)
+ : String</div><div class="description"><div class="short">Encodes the array of Ext.util.Sorter objects into a string to be sent in the request url. By default,
+this simply JSO...</div><div class="long"><p>Encodes the array of <a href="Ext.util.Sorter.html" rel="Ext.util.Sorter" class="docClass">Ext.util.Sorter</a> objects into a string to be sent in the request url. By default,
+this simply JSON-encodes the sorter data</p>
+<h3 class="pa">Parameters</h3><ul><li><span class="pre">sorters</span> : Array<div class="sub-desc"><p>The array of <a href="Ext.util.Sorter.html" rel="Ext.util.Sorter" class="docClass">Sorter</a> objects</p>
+</div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">String</span>&nbsp; &nbsp;<p>The encoded sorters</p>
+</li></ul></div></div></div><div id="method-fireEvent" class="member inherited"><a href="Ext.data.proxy.Rest.html#method-fireEvent" rel="method-fireEvent" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-fireEvent" class="viewSource">view source</a></div><a name="fireEvent"></a><a name="method-fireEvent"></a><a href="Ext.data.proxy.Rest.html#" rel="method-fireEvent" class="cls expand">fireEvent</a>(
+<span class="pre">String eventName, Object... args</span>)
+ : Boolean</div><div class="description"><div class="short">Fires the specified event with the passed parameters (minus the event name).
+
+
+An event may be set to bubble up an Ob...</div><div class="long"><p>Fires the specified event with the passed parameters (minus the event name).</p>
+
+
+<p>An event may be set to bubble up an Observable parent hierarchy (See <a href="Ext.Component.html#getBubbleTarget" rel="Ext.Component#getBubbleTarget" class="docClass">Ext.Component.getBubbleTarget</a>)
+by calling <a href="Ext.data.proxy.Rest.html#enableBubble" rel="Ext.data.proxy.Rest#enableBubble" class="docClass">enableBubble</a>.</p>
+
+<h3 class="pa">Parameters</h3><ul><li><span class="pre">eventName</span> : String<div class="sub-desc"><p>The name of the event to fire.</p>
+</div></li><li><span class="pre">args</span> : Object...<div class="sub-desc"><p>Variable number of parameters are passed to handlers.</p>
+</div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">Boolean</span>&nbsp; &nbsp;<p>returns false if any of the handlers return false otherwise it returns true.</p>
+</li></ul></div></div></div><div id="method-getMethod" class="member inherited"><a href="Ext.data.proxy.Rest.html#method-getMethod" rel="method-getMethod" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Ajax.html" class="definedIn docClass">Ext.data.proxy.Ajax</a><br/><a href="../source/Ajax2.html#Ext-data.proxy.Ajax-method-getMethod" class="viewSource">view source</a></div><a name="getMethod"></a><a name="method-getMethod"></a><a href="Ext.data.proxy.Rest.html#" rel="method-getMethod" class="cls expand">getMethod</a>(
+<span class="pre">Ext.data.Request request</span>)
+ : String</div><div class="description"><div class="short"><p>Returns the HTTP method name for a given request. By default this returns based on a lookup on <a href="Ext.data.proxy.Rest.html#actionMethods" rel="Ext.data.proxy.Rest#actionMethods" class="docClass">actionMethods</a>.</p>
+</div><div class="long"><p>Returns the HTTP method name for a given request. By default this returns based on a lookup on <a href="Ext.data.proxy.Rest.html#actionMethods" rel="Ext.data.proxy.Rest#actionMethods" class="docClass">actionMethods</a>.</p>
+<h3 class="pa">Parameters</h3><ul><li><span class="pre">request</span> : Ext.data.Request<div class="sub-desc"><p>The request object</p>
+</div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">String</span>&nbsp; &nbsp;<p>The HTTP method to use (should be one of 'GET', 'POST', 'PUT' or 'DELETE')</p>
+</li></ul></div></div></div><div id="method-getModel" class="member inherited"><a href="Ext.data.proxy.Rest.html#method-getModel" rel="method-getModel" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Proxy.html" class="definedIn docClass">Ext.data.proxy.Proxy</a><br/><a href="../source/Proxy2.html#Ext-data.proxy.Proxy-method-getModel" class="viewSource">view source</a></div><a name="getModel"></a><a name="method-getModel"></a><a href="Ext.data.proxy.Rest.html#" rel="method-getModel" class="cls expand">getModel</a> : Ext.data.Model</div><div class="description"><div class="short"><p>Returns the model attached to this Proxy</p>
+</div><div class="long"><p>Returns the model attached to this Proxy</p>
+<h3 class="pa">Returns</h3><ul><li><span class="pre">Ext.data.Model</span>&nbsp; &nbsp;<p>The model</p>
+</li></ul></div></div></div><div id="method-getReader" class="member inherited"><a href="Ext.data.proxy.Rest.html#method-getReader" rel="method-getReader" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Proxy.html" class="definedIn docClass">Ext.data.proxy.Proxy</a><br/><a href="../source/Proxy2.html#Ext-data.proxy.Proxy-method-getReader" class="viewSource">view source</a></div><a name="getReader"></a><a name="method-getReader"></a><a href="Ext.data.proxy.Rest.html#" rel="method-getReader" class="cls expand">getReader</a> : Ext.data.reader.Reader</div><div class="description"><div class="short"><p>Returns the reader currently attached to this proxy instance</p>
+</div><div class="long"><p>Returns the reader currently attached to this proxy instance</p>
+<h3 class="pa">Returns</h3><ul><li><span class="pre">Ext.data.reader.Reader</span>&nbsp; &nbsp;<p>The Reader instance</p>
+</li></ul></div></div></div><div id="method-getWriter" class="member inherited"><a href="Ext.data.proxy.Rest.html#method-getWriter" rel="method-getWriter" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Proxy.html" class="definedIn docClass">Ext.data.proxy.Proxy</a><br/><a href="../source/Proxy2.html#Ext-data.proxy.Proxy-method-getWriter" class="viewSource">view source</a></div><a name="getWriter"></a><a name="method-getWriter"></a><a href="Ext.data.proxy.Rest.html#" rel="method-getWriter" class="cls expand">getWriter</a> : Ext.data.writer.Writer</div><div class="description"><div class="short"><p>Returns the writer currently attached to this proxy instance</p>
+</div><div class="long"><p>Returns the writer currently attached to this proxy instance</p>
+<h3 class="pa">Returns</h3><ul><li><span class="pre">Ext.data.writer.Writer</span>&nbsp; &nbsp;<p>The Writer instance</p>
+</li></ul></div></div></div><div id="method-hasListener" class="member inherited"><a href="Ext.data.proxy.Rest.html#method-hasListener" rel="method-hasListener" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-hasListener" class="viewSource">view source</a></div><a name="hasListener"></a><a name="method-hasListener"></a><a href="Ext.data.proxy.Rest.html#" rel="method-hasListener" class="cls expand">hasListener</a>(
+<span class="pre">String eventName</span>)
+ : Boolean</div><div class="description"><div class="short"><p>Checks to see if this object has any listeners for a specified event</p>
+</div><div class="long"><p>Checks to see if this object has any listeners for a specified event</p>
+<h3 class="pa">Parameters</h3><ul><li><span class="pre">eventName</span> : String<div class="sub-desc"><p>The name of the event to check for</p>
+</div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">Boolean</span>&nbsp; &nbsp;<p>True if the event is being listened for, else false</p>
+</li></ul></div></div></div><div id="method-observe" class="member inherited"><a href="Ext.data.proxy.Rest.html#method-observe" rel="method-observe" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-observe" class="viewSource">view source</a></div><a name="observe"></a><a name="method-observe"></a><a href="Ext.data.proxy.Rest.html#" rel="method-observe" class="cls expand">observe</a>(
+<span class="pre">Function c, Object listeners</span>)
+ : void</div><div class="description"><div class="short">Sets observability on the passed class constructor.
+
+This makes any event fired on any instance of the passed class a...</div><div class="long"><p>Sets observability on the passed class constructor.</p>
+
+<p>This makes any event fired on any instance of the passed class also fire a single event through
+the <strong>class</strong> allowing for central handling of events on many instances at once.</p>
+
+<p>Usage:</p>
+
+<pre><code>Ext.util.Observable.observe(Ext.data.Connection);
+Ext.data.Connection.on('beforerequest', function(con, options) {
+    console.log('Ajax request made to ' + options.url);
+});
+</code></pre>
+<h3 class="pa">Parameters</h3><ul><li><span class="pre">c</span> : Function<div class="sub-desc"><p>The class constructor to make observable.</p>
+</div></li><li><span class="pre">listeners</span> : Object<div class="sub-desc"><p>An object containing a series of listeners to add. See <a href="Ext.data.proxy.Rest.html#addListener" rel="Ext.data.proxy.Rest#addListener" class="docClass">addListener</a>.</p>
+</div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
+</li></ul></div></div></div><div id="method-on" class="member inherited"><a href="Ext.data.proxy.Rest.html#method-on" rel="method-on" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-on" class="viewSource">view source</a></div><a name="on"></a><a name="method-on"></a><a href="Ext.data.proxy.Rest.html#" rel="method-on" class="cls expand">on</a>(
+<span class="pre">String eventName, Function handler, [Object scope], [Object options]</span>)
+ : void</div><div class="description"><div class="short"><p>Appends an event handler to this object (shorthand for <a href="Ext.data.proxy.Rest.html#addListener" rel="Ext.data.proxy.Rest#addListener" class="docClass">addListener</a>.)</p>
+</div><div class="long"><p>Appends an event handler to this object (shorthand for <a href="Ext.data.proxy.Rest.html#addListener" rel="Ext.data.proxy.Rest#addListener" class="docClass">addListener</a>.)</p>
+<h3 class="pa">Parameters</h3><ul><li><span class="pre">eventName</span> : String<div class="sub-desc"><p>The type of event to listen for</p>
+</div></li><li><span class="pre">handler</span> : Function<div class="sub-desc"><p>The method the event invokes</p>
+</div></li><li><span class="pre">scope</span> : Object<div class="sub-desc"><p>(optional) The scope (<code><b>this</b></code> reference) in which the handler function is executed.
+<b>If omitted, defaults to the object which fired the event.</b></p>
+</div></li><li><span class="pre">options</span> : Object<div class="sub-desc"><p>(optional) An object containing handler configuration.</p>
+</div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
+</li></ul></div></div></div><div id="method-processResponse" class="member inherited"><a href="Ext.data.proxy.Rest.html#method-processResponse" rel="method-processResponse" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Server.html" class="definedIn docClass">Ext.data.proxy.Server</a><br/><a href="../source/Server.html#Ext-data.proxy.Server-method-processResponse" class="viewSource">view source</a></div><a name="processResponse"></a><a name="method-processResponse"></a><a href="Ext.data.proxy.Rest.html#" rel="method-processResponse" class="cls expand">processResponse</a>(
+<span class="pre">Object success, Object operation, Object request, Object response, Object callback, Object scope</span>)
+ : void</div><div class="description"><div class="short"><p>&nbsp;</p></div><div class="long">
+<h3 class="pa">Parameters</h3><ul><li><span class="pre">success</span> : Object<div class="sub-desc">
+</div></li><li><span class="pre">operation</span> : Object<div class="sub-desc">
+</div></li><li><span class="pre">request</span> : Object<div class="sub-desc">
+</div></li><li><span class="pre">response</span> : Object<div class="sub-desc">
+</div></li><li><span class="pre">callback</span> : Object<div class="sub-desc">
+</div></li><li><span class="pre">scope</span> : Object<div class="sub-desc">
+</div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
+</li></ul></div></div></div><div id="method-relayEvents" class="member inherited"><a href="Ext.data.proxy.Rest.html#method-relayEvents" rel="method-relayEvents" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-relayEvents" class="viewSource">view source</a></div><a name="relayEvents"></a><a name="method-relayEvents"></a><a href="Ext.data.proxy.Rest.html#" rel="method-relayEvents" class="cls expand">relayEvents</a>(
+<span class="pre">Object origin, Array events, Object prefix</span>)
+ : void</div><div class="description"><div class="short"><p>Relays selected events from the specified Observable as if the events were fired by <code><b>this</b></code>.</p>
+</div><div class="long"><p>Relays selected events from the specified Observable as if the events were fired by <code><b>this</b></code>.</p>
+<h3 class="pa">Parameters</h3><ul><li><span class="pre">origin</span> : Object<div class="sub-desc"><p>The Observable whose events this object is to relay.</p>
+</div></li><li><span class="pre">events</span> : Array<div class="sub-desc"><p>Array of event names to relay.</p>
+</div></li><li><span class="pre">prefix</span> : Object<div class="sub-desc">
+</div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
+</li></ul></div></div></div><div id="method-releaseCapture" class="member inherited"><a href="Ext.data.proxy.Rest.html#method-releaseCapture" rel="method-releaseCapture" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-releaseCapture" class="viewSource">view source</a></div><a name="releaseCapture"></a><a name="method-releaseCapture"></a><a href="Ext.data.proxy.Rest.html#" rel="method-releaseCapture" class="cls expand">releaseCapture</a>(
+<span class="pre">Observable o</span>)
+ : void</div><div class="description"><div class="short"><p>Removes <b>all</b> added captures from the Observable.</p>
+</div><div class="long"><p>Removes <b>all</b> added captures from the Observable.</p>
+<h3 class="pa">Parameters</h3><ul><li><span class="pre">o</span> : Observable<div class="sub-desc"><p>The Observable to release</p>
+</div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
+</li></ul></div></div></div><div id="method-removeListener" class="member inherited"><a href="Ext.data.proxy.Rest.html#method-removeListener" rel="method-removeListener" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-removeListener" class="viewSource">view source</a></div><a name="removeListener"></a><a name="method-removeListener"></a><a href="Ext.data.proxy.Rest.html#" rel="method-removeListener" class="cls expand">removeListener</a>(
+<span class="pre">String eventName, Function handler, [Object scope]</span>)
+ : void</div><div class="description"><div class="short"><p>Removes an event handler.</p>
+</div><div class="long"><p>Removes an event handler.</p>
+<h3 class="pa">Parameters</h3><ul><li><span class="pre">eventName</span> : String<div class="sub-desc"><p>The type of event the handler was associated with.</p>
+</div></li><li><span class="pre">handler</span> : Function<div class="sub-desc"><p>The handler to remove. <b>This must be a reference to the function passed into the <a href="Ext.data.proxy.Rest.html#addListener" rel="Ext.data.proxy.Rest#addListener" class="docClass">addListener</a> call.</b></p>
+</div></li><li><span class="pre">scope</span> : Object<div class="sub-desc"><p>(optional) The scope originally specified for the handler.</p>
+</div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
+</li></ul></div></div></div><div id="method-removeManagedListener" class="member inherited"><a href="Ext.data.proxy.Rest.html#method-removeManagedListener" rel="method-removeManagedListener" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-removeManagedListener" class="viewSource">view source</a></div><a name="removeManagedListener"></a><a name="method-removeManagedListener"></a><a href="Ext.data.proxy.Rest.html#" rel="method-removeManagedListener" class="cls expand">removeManagedListener</a>(
+<span class="pre">Observable|Element item, Object|String ename, Function fn, Object scope</span>)
+ : void</div><div class="description"><div class="short"><p>Removes listeners that were added by the <a href="Ext.data.proxy.Rest.html#mon" rel="Ext.data.proxy.Rest#mon" class="docClass">mon</a> method.</p>
+</div><div class="long"><p>Removes listeners that were added by the <a href="Ext.data.proxy.Rest.html#mon" rel="Ext.data.proxy.Rest#mon" class="docClass">mon</a> method.</p>
+<h3 class="pa">Parameters</h3><ul><li><span class="pre">item</span> : Observable|Element<div class="sub-desc"><p>The item from which to remove a listener/listeners.</p>
+</div></li><li><span class="pre">ename</span> : Object|String<div class="sub-desc"><p>The event name, or an object containing event name properties.</p>
+</div></li><li><span class="pre">fn</span> : Function<div class="sub-desc"><p>Optional. If the <code>ename</code> parameter was an event name, this
+is the handler function.</p>
+</div></li><li><span class="pre">scope</span> : Object<div class="sub-desc"><p>Optional. If the <code>ename</code> parameter was an event name, this
+is the scope (<code>this</code> reference) in which the handler function is executed.</p>
+</div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
+</li></ul></div></div></div><div id="method-resumeEvents" class="member inherited"><a href="Ext.data.proxy.Rest.html#method-resumeEvents" rel="method-resumeEvents" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-resumeEvents" class="viewSource">view source</a></div><a name="resumeEvents"></a><a name="method-resumeEvents"></a><a href="Ext.data.proxy.Rest.html#" rel="method-resumeEvents" class="cls expand">resumeEvents</a> : void</div><div class="description"><div class="short">Resume firing events. (see suspendEvents)
+If events were suspended using the queueSuspended parameter, then all
+event...</div><div class="long"><p>Resume firing events. (see <a href="Ext.data.proxy.Rest.html#suspendEvents" rel="Ext.data.proxy.Rest#suspendEvents" class="docClass">suspendEvents</a>)
+If events were suspended using the <code><b>queueSuspended</b></code> parameter, then all
+events fired during event suspension will be sent to any listeners now.</p>
+<h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
+</li></ul></div></div></div><div id="method-setModel" class="member inherited"><a href="Ext.data.proxy.Rest.html#method-setModel" rel="method-setModel" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Proxy.html" class="definedIn docClass">Ext.data.proxy.Proxy</a><br/><a href="../source/Proxy2.html#Ext-data.proxy.Proxy-method-setModel" class="viewSource">view source</a></div><a name="setModel"></a><a name="method-setModel"></a><a href="Ext.data.proxy.Rest.html#" rel="method-setModel" class="cls expand">setModel</a>(
+<span class="pre">String|Ext.data.Model model, Boolean setOnStore</span>)
+ : void</div><div class="description"><div class="short"><p>Sets the model associated with this proxy. This will only usually be called by a Store</p>
+</div><div class="long"><p>Sets the model associated with this proxy. This will only usually be called by a Store</p>
+<h3 class="pa">Parameters</h3><ul><li><span class="pre">model</span> : String|Ext.data.Model<div class="sub-desc"><p>The new model. Can be either the model name string,
+or a reference to the model's constructor</p>
+</div></li><li><span class="pre">setOnStore</span> : Boolean<div class="sub-desc"><p>Sets the new model on the associated Store, if one is present</p>
+</div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
+</li></ul></div></div></div><div id="method-setReader" class="member inherited"><a href="Ext.data.proxy.Rest.html#method-setReader" rel="method-setReader" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Proxy.html" class="definedIn docClass">Ext.data.proxy.Proxy</a><br/><a href="../source/Proxy2.html#Ext-data.proxy.Proxy-method-setReader" class="viewSource">view source</a></div><a name="setReader"></a><a name="method-setReader"></a><a href="Ext.data.proxy.Rest.html#" rel="method-setReader" class="cls expand">setReader</a>(
+<span class="pre">String|Object|Ext.data.reader.Reader reader</span>)
+ : Ext.data.reader.Reader</div><div class="description"><div class="short"><p>Sets the Proxy's Reader by string, config object or Reader instance</p>
+</div><div class="long"><p>Sets the Proxy's Reader by string, config object or Reader instance</p>
+<h3 class="pa">Parameters</h3><ul><li><span class="pre">reader</span> : String|Object|Ext.data.reader.Reader<div class="sub-desc"><p>The new Reader, which can be either a type string, a configuration object
+or an <a href="Ext.data.reader.Reader.html" rel="Ext.data.reader.Reader" class="docClass">Ext.data.reader.Reader</a> instance</p>
+</div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">Ext.data.reader.Reader</span>&nbsp; &nbsp;<p>The attached Reader object</p>
+</li></ul></div></div></div><div id="method-setWriter" class="member inherited"><a href="Ext.data.proxy.Rest.html#method-setWriter" rel="method-setWriter" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Proxy.html" class="definedIn docClass">Ext.data.proxy.Proxy</a><br/><a href="../source/Proxy2.html#Ext-data.proxy.Proxy-method-setWriter" class="viewSource">view source</a></div><a name="setWriter"></a><a name="method-setWriter"></a><a href="Ext.data.proxy.Rest.html#" rel="method-setWriter" class="cls expand">setWriter</a>(
+<span class="pre">String|Object|Ext.data.writer.Writer writer</span>)
+ : Ext.data.writer.Writer</div><div class="description"><div class="short"><p>Sets the Proxy's Writer by string, config object or Writer instance</p>
+</div><div class="long"><p>Sets the Proxy's Writer by string, config object or Writer instance</p>
+<h3 class="pa">Parameters</h3><ul><li><span class="pre">writer</span> : String|Object|Ext.data.writer.Writer<div class="sub-desc"><p>The new Writer, which can be either a type string, a configuration object
+or an <a href="Ext.data.writer.Writer.html" rel="Ext.data.writer.Writer" class="docClass">Ext.data.writer.Writer</a> instance</p>
+</div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">Ext.data.writer.Writer</span>&nbsp; &nbsp;<p>The attached Writer object</p>
+</li></ul></div></div></div><div id="method-suspendEvents" class="member inherited"><a href="Ext.data.proxy.Rest.html#method-suspendEvents" rel="method-suspendEvents" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-suspendEvents" class="viewSource">view source</a></div><a name="suspendEvents"></a><a name="method-suspendEvents"></a><a href="Ext.data.proxy.Rest.html#" rel="method-suspendEvents" class="cls expand">suspendEvents</a>(
+<span class="pre">Boolean queueSuspended</span>)
+ : void</div><div class="description"><div class="short"><p>Suspend the firing of all events. (see <a href="Ext.data.proxy.Rest.html#resumeEvents" rel="Ext.data.proxy.Rest#resumeEvents" class="docClass">resumeEvents</a>)</p>
+</div><div class="long"><p>Suspend the firing of all events. (see <a href="Ext.data.proxy.Rest.html#resumeEvents" rel="Ext.data.proxy.Rest#resumeEvents" class="docClass">resumeEvents</a>)</p>
+<h3 class="pa">Parameters</h3><ul><li><span class="pre">queueSuspended</span> : Boolean<div class="sub-desc"><p>Pass as true to queue up suspended events to be fired
+after the <a href="Ext.data.proxy.Rest.html#resumeEvents" rel="Ext.data.proxy.Rest#resumeEvents" class="docClass">resumeEvents</a> call instead of discarding all suspended events;</p>
+</div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
+</li></ul></div></div></div><div id="method-un" class="member inherited"><a href="Ext.data.proxy.Rest.html#method-un" rel="method-un" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.util.Observable.html" class="definedIn docClass">Ext.util.Observable</a><br/><a href="../source/Observable.html#Ext-util.Observable-method-un" class="viewSource">view source</a></div><a name="un"></a><a name="method-un"></a><a href="Ext.data.proxy.Rest.html#" rel="method-un" class="cls expand">un</a>(
+<span class="pre">String eventName, Function handler, [Object scope]</span>)
+ : void</div><div class="description"><div class="short"><p>Removes an event handler (shorthand for <a href="Ext.data.proxy.Rest.html#removeListener" rel="Ext.data.proxy.Rest#removeListener" class="docClass">removeListener</a>.)</p>
+</div><div class="long"><p>Removes an event handler (shorthand for <a href="Ext.data.proxy.Rest.html#removeListener" rel="Ext.data.proxy.Rest#removeListener" class="docClass">removeListener</a>.)</p>
+<h3 class="pa">Parameters</h3><ul><li><span class="pre">eventName</span> : String<div class="sub-desc"><p>The type of event the handler was associated with.</p>
+</div></li><li><span class="pre">handler</span> : Function<div class="sub-desc"><p>The handler to remove. <b>This must be a reference to the function passed into the <a href="Ext.data.proxy.Rest.html#addListener" rel="Ext.data.proxy.Rest#addListener" class="docClass">addListener</a> call.</b></p>
+</div></li><li><span class="pre">scope</span> : Object<div class="sub-desc"><p>(optional) The scope originally specified for the handler.</p>
+</div></li></ul><h3 class="pa">Returns</h3><ul><li><span class="pre">void</span>&nbsp; &nbsp;
+</li></ul></div></div></div></div><div class="m-events"><a name="events"></a><div class="definedBy">Defined By</div><h3 class="evt p">Events</h3><div id="event-exception" class="member f inherited"><a href="Ext.data.proxy.Rest.html#event-exception" rel="event-exception" class="expand more ar"><span>&nbsp;</span></a><div class="title"><div class="meta"><a href="Ext.data.proxy.Server.html" class="definedIn docClass">Ext.data.proxy.Server</a><br/><a href="../source/Server.html#Ext-data.proxy.Server-event-exception" class="viewSource">view source</a></div><a name="exception"></a><a name="event-exception"></a><a href="Ext.data.proxy.Rest.html#" rel="event-exception" class="cls expand">exception</a>(
+<span class="pre">Ext.data.proxy.Proxy this, Object response, Ext.data.Operation operation</span>)
+</div><div class="description"><div class="short"><p>Fires when the server returns an exception</p>
+</div><div class="long"><p>Fires when the server returns an exception</p>
+<h3 class="pa">Parameters</h3><ul><li><span class="pre">this</span> : Ext.data.proxy.Proxy<div class="sub-desc">
+</div></li><li><span class="pre">response</span> : Object<div class="sub-desc"><p>The response from the AJAX request</p>
+</div></li><li><span class="pre">operation</span> : Ext.data.Operation<div class="sub-desc"><p>The operation that triggered request</p>
+</div></li></ul></div></div></div></div></div></div></div><div id="pageContent"></div></div></div></div></body></html>
\ No newline at end of file