-<div class="body-wrap" xmlns:ext="http://www.extjs.com"><div class="top-tools"><a class="inner-link" href="#Ext.data.DataProxy-props"><img src="resources/images/default/s.gif" class="item-icon icon-prop">Properties</a> <a class="inner-link" href="#Ext.data.DataProxy-methods"><img src="resources/images/default/s.gif" class="item-icon icon-method">Methods</a> <a class="inner-link" href="#Ext.data.DataProxy-events"><img src="resources/images/default/s.gif" class="item-icon icon-event">Events</a> <a class="inner-link" href="#Ext.data.DataProxy-configs"><img src="resources/images/default/s.gif" class="item-icon icon-config">Config Options</a> <a class="bookmark" href="../docs/?class=Ext.data.DataProxy"><img src="resources/images/default/s.gif" class="item-icon icon-fav">Direct Link</a> </div><div class="inheritance res-block"><pre class="res-block-inner"><a href="output/Ext.util.Observable.html" ext:member="" ext:cls="Ext.util.Observable">Observable</a> <img src="resources/elbow-end.gif">DataProxy</pre></div><h1>Class <a href="source/DataProxy.html#cls-Ext.data.DataProxy">Ext.data.DataProxy</a></h1><table cellspacing="0"><tr><td class="label">Package:</td><td class="hd-info">Ext.data</td></tr><tr><td class="label">Defined In:</td><td class="hd-info">DataProxy.js</td></tr><tr><td class="label">Class:</td><td class="hd-info"><a href="source/DataProxy.html#cls-Ext.data.DataProxy">DataProxy</a></td></tr><tr><td class="label">Subclasses:</td><td class="hd-info"><a href="output/Ext.data.DirectProxy.html" ext:cls="Ext.data.DirectProxy">DirectProxy</a>, <a href="output/Ext.data.HttpProxy.html" ext:cls="Ext.data.HttpProxy">HttpProxy</a>, <a href="output/Ext.data.MemoryProxy.html" ext:cls="Ext.data.MemoryProxy">MemoryProxy</a>, <a href="output/Ext.data.ScriptTagProxy.html" ext:cls="Ext.data.ScriptTagProxy">ScriptTagProxy</a></td></tr><tr><td class="label">Extends:</td><td class="hd-info"><a href="output/Ext.util.Observable.html" ext:cls="Ext.util.Observable" ext:member="">Observable</a></td></tr><tr><td class="hd-info"></td></tr></table><div class="description"><p>Abstract base class for implementations which provide retrieval of unformatted data objects.\r
-This class is intended to be extended and should not be created directly. For existing implementations,\r
-see <a href="output/Ext.data.DirectProxy.html" ext:cls="Ext.data.DirectProxy">Ext.data.DirectProxy</a>, <a href="output/Ext.data.HttpProxy.html" ext:cls="Ext.data.HttpProxy">Ext.data.HttpProxy</a>, <a href="output/Ext.data.ScriptTagProxy.html" ext:cls="Ext.data.ScriptTagProxy">Ext.data.ScriptTagProxy</a> and\r
-<a href="output/Ext.data.MemoryProxy.html" ext:cls="Ext.data.MemoryProxy">Ext.data.MemoryProxy</a>.</p>\r
-<p>DataProxy implementations are usually used in conjunction with an implementation of <a href="output/Ext.data.DataReader.html" ext:cls="Ext.data.DataReader">Ext.data.DataReader</a>\r
-(of the appropriate type which knows how to parse the data object) to provide a block of\r
-<a href="output/Ext.data.Records.html" ext:cls="Ext.data.Records">Ext.data.Records</a> to an <a href="output/Ext.data.Store.html" ext:cls="Ext.data.Store">Ext.data.Store</a>.</p>\r
-<p>The parameter to a DataProxy constructor may be an <a href="output/Ext.data.Connection.html" ext:cls="Ext.data.Connection">Ext.data.Connection</a> or can also be the\r
-config object to an <a href="output/Ext.data.Connection.html" ext:cls="Ext.data.Connection">Ext.data.Connection</a>.</p>\r
-<p>Custom implementations must implement either the <code><b>doRequest</b></code> method (preferred) or the\r
-<code>load</code> method (deprecated). See\r
-<a href="output/Ext.data.HttpProxy.html" ext:cls="Ext.data.HttpProxy">Ext.data.HttpProxy</a>.<a href="output/Ext.data.HttpProxy.html#Ext.data.HttpProxy-doRequest" ext:member="doRequest" ext:cls="Ext.data.HttpProxy">doRequest</a> or\r
-<a href="output/Ext.data.HttpProxy.html" ext:cls="Ext.data.HttpProxy">Ext.data.HttpProxy</a>.<a href="output/Ext.data.HttpProxy.html#Ext.data.HttpProxy-load" ext:member="load" ext:cls="Ext.data.HttpProxy">load</a> for additional details.</p>\r
-<p><b><u>Example 1</u></b></p>\r
-<pre><code>proxy: <b>new</b> Ext.data.ScriptTagProxy({\r
- <a href="output/Ext.data.Connection.html#Ext.data.Connection-url" ext:member="url" ext:cls="Ext.data.Connection">url</a>: <em>'http:<i>//extjs.com/forum/topics-remote.php'</em>\r</i>
-}),</code></pre>\r
-<p><b><u>Example 2</u></b></p>\r
-<pre><code>proxy : <b>new</b> Ext.data.HttpProxy({\r
- <a href="output/Ext.data.Connection.html#Ext.data.Connection-method" ext:member="method" ext:cls="Ext.data.Connection">method</a>: <em>'GET'</em>,\r
- <a href="output/Ext.data.HttpProxy.html#Ext.data.HttpProxy-prettyUrls" ext:member="prettyUrls" ext:cls="Ext.data.HttpProxy">prettyUrls</a>: false,\r
- <a href="output/Ext.data.Connection.html#Ext.data.Connection-url" ext:member="url" ext:cls="Ext.data.Connection">url</a>: <em>'local/<b>default</b>.php'</em>, <i>// see options parameter <b>for</b> <a href="output/Ext.Ajax.html#Ext.Ajax-request" ext:member="request" ext:cls="Ext.Ajax">Ext.Ajax.request</a>\r</i>
- <a href="output/Ext.data.DataProxy.html#Ext.data.DataProxy-api" ext:member="api" ext:cls="Ext.data.DataProxy">api</a>: {\r
- <i>// all actions except the following will use above url\r</i>
- create : <em>'local/<b>new</b>.php'</em>,\r
- update : <em>'local/update.php'</em>\r
- }\r
-}),</code></pre></div><div class="hr"></div><a id="Ext.data.DataProxy-configs"></a><h2>Config Options</h2><table cellspacing="0" class="member-table"><tbody><tr><th colspan="2" class="sig-header">Config Options</th><th class="msource-header">Defined By</th></tr><tr class="config-row expandable "><td class="micon"><a href="#expand" class="exi"> </a></td><td class="sig"><a id="Ext.data.DataProxy-api"></a><b><a href="source/DataProxy.html#cfg-Ext.data.DataProxy-api">api</a></b> : Object<div class="mdesc"><div class="short">Specific urls to call on CRUD action methods "read", "create", "update" and "destroy". \r
-Defaults to:api: { \r
- read ...</div><div class="long">Specific urls to call on CRUD action methods "read", "create", "update" and "destroy".\r
-Defaults to:<pre><code>api: {\r
- read : undefined,\r
- create : undefined,\r
- update : undefined,\r
- destroy : undefined\r
-}</code></pre>\r
-<p>The url is built based upon the action being executed <tt>[load|create|save|destroy]</tt>\r
-using the commensurate <tt><a href="output/Ext.data.DataProxy.html#Ext.data.DataProxy-api" ext:member="api" ext:cls="Ext.data.DataProxy">api</a></tt> property, or if undefined default to the\r
-configured <a href="output/Ext.data.Store.html" ext:cls="Ext.data.Store">Ext.data.Store</a>.<a href="output/Ext.data.Store.html#Ext.data.Store-url" ext:member="url" ext:cls="Ext.data.Store">url</a>.</p><br>\r
-<p>For example:</p>\r
-<pre><code>api: {\r
- load : <em>'/controller/load'</em>,\r
- create : <em>'/controller/<b>new</b>'</em>, <i>// Server MUST <b>return</b> idProperty of <b>new</b> record\r</i>
- save : <em>'/controller/update'</em>,\r
- destroy : <em>'/controller/destroy_action'</em>\r
-}\r
-\r
-<i>// Alternatively, one can use the object-form to specify each API-action\r</i>
-api: {\r
- load: {url: <em>'read.php'</em>, method: <em>'GET'</em>},\r
- create: <em>'create.php'</em>,\r
- destroy: <em>'destroy.php'</em>,\r
- save: <em>'update.php'</em>\r
-}</code></pre>\r
-<p>If the specific URL for a given CRUD action is undefined, the CRUD action request\r
-will be directed to the configured <tt><a href="output/Ext.data.Connection.html#Ext.data.Connection-url" ext:member="url" ext:cls="Ext.data.Connection">url</a></tt>.</p>\r
-<br><p><b>Note</b>: To modify the URL for an action dynamically the appropriate API\r
-property should be modified before the action is requested using the corresponding before\r
-action event. For example to modify the URL associated with the load action:\r
-<pre><code><i>// modify the url <b>for</b> the action\r</i>
-myStore.on({\r
- beforeload: {\r
- fn: <b>function</b> (store, options) {\r
- <i>// use <tt><a href="output/Ext.data.HttpProxy.html#Ext.data.HttpProxy-setUrl" ext:member="setUrl" ext:cls="Ext.data.HttpProxy">setUrl</a></tt> to change the URL <b>for</b> *just* this request.\r</i>
- store.proxy.setUrl(<em>'changed1.php'</em>);\r
-\r
- <i>// set optional second parameter to true to make this URL change\r</i>
- <i>// permanent, applying this URL <b>for</b> all subsequent requests.\r</i>
- store.proxy.setUrl(<em>'changed1.php'</em>, true);\r
-\r
- <i>// Altering the proxy API should be done using the public\r</i>
- <i>// method <tt><a href="output/Ext.data.DataProxy.html#Ext.data.DataProxy-setApi" ext:member="setApi" ext:cls="Ext.data.DataProxy">setApi</a></tt>.\r</i>
- store.proxy.setApi(<em>'read'</em>, <em>'changed2.php'</em>);\r
-\r
- <i>// Or set the entire API <b>with</b> a config-object.\r</i>
- <i>// When using the config-object option, you must redefine the <b>entire</b>\r</i>
- <i>// API -- not just a specific action of it.\r</i>
- store.proxy.setApi({\r
- read : <em>'changed_read.php'</em>,\r
- create : <em>'changed_create.php'</em>,\r
- update : <em>'changed_update.php'</em>,\r
- destroy : <em>'changed_destroy.php'</em>\r
- });\r
- }\r
- }\r
-});</code></pre>\r
-</p></div></div></td><td class="msource">DataProxy</td></tr><tr class="config-row "><td class="micon"><a href="#expand" class="exi"> </a></td><td class="sig"><a id="Ext.data.DataProxy-doRequest"></a><b><a href="source/DataProxy.html#cfg-Ext.data.DataProxy-doRequest">doRequest</a></b> : Function<div class="mdesc">Abstract method that should be implemented in all subclasses\r
-(e.g.: <a href="output/Ext.data.HttpProxy.html#Ext.data.HttpProxy-doRequest" ext:member="doRequest" ext:cls="Ext.data.HttpProxy">HttpProxy.doRequest</a>,\r
-<a href="output/Ext.data.DirectProxy.html#Ext.data.DirectProxy-doRequest" ext:member="doRequest" ext:cls="Ext.data.DirectProxy">DirectProxy.doRequest</a>).</div></td><td class="msource">DataProxy</td></tr><tr class="config-row expandable inherited"><td class="micon"><a href="#expand" class="exi"> </a></td><td class="sig"><a id="Ext.util.Observable-listeners"></a><b><a href="source/Observable.html#cfg-Ext.util.Observable-listeners">listeners</a></b> : Object<div class="mdesc"><div class="short">A config object containing one or more event handlers to be added to this\r
+<div class="body-wrap" xmlns:ext="http://www.extjs.com"><div class="top-tools"><a class="inner-link" href="#Ext.data.DataProxy-props"><img src="resources/images/default/s.gif" class="item-icon icon-prop">Properties</a> <a class="inner-link" href="#Ext.data.DataProxy-methods"><img src="resources/images/default/s.gif" class="item-icon icon-method">Methods</a> <a class="inner-link" href="#Ext.data.DataProxy-events"><img src="resources/images/default/s.gif" class="item-icon icon-event">Events</a> <a class="inner-link" href="#Ext.data.DataProxy-configs"><img src="resources/images/default/s.gif" class="item-icon icon-config">Config Options</a> <a class="bookmark" href="../docs/?class=Ext.data.DataProxy"><img src="resources/images/default/s.gif" class="item-icon icon-fav">Direct Link</a> </div><div class="inheritance res-block"><pre class="res-block-inner"><a href="output/Ext.util.Observable.html" ext:member="" ext:cls="Ext.util.Observable">Observable</a>
+ <img src="resources/elbow-end.gif">DataProxy</pre></div><h1>Class <a href="source/DataProxy.html#cls-Ext.data.DataProxy">Ext.data.DataProxy</a></h1><table cellspacing="0"><tr><td class="label">Package:</td><td class="hd-info">Ext.data</td></tr><tr><td class="label">Defined In:</td><td class="hd-info"><a href="source/DataProxy.html#cls-Ext.data.DataProxy">DataProxy.js</a></td></tr><tr><td class="label">Class:</td><td class="hd-info"><a href="source/DataProxy.html#cls-Ext.data.DataProxy">DataProxy</a></td></tr><tr><td class="label">Subclasses:</td><td class="hd-info"><a href="output/Ext.data.DirectProxy.html" ext:cls="Ext.data.DirectProxy">DirectProxy</a>, <a href="output/Ext.data.HttpProxy.html" ext:cls="Ext.data.HttpProxy">HttpProxy</a>, <a href="output/Ext.data.MemoryProxy.html" ext:cls="Ext.data.MemoryProxy">MemoryProxy</a>, <a href="output/Ext.data.ScriptTagProxy.html" ext:cls="Ext.data.ScriptTagProxy">ScriptTagProxy</a></td></tr><tr><td class="label">Extends:</td><td class="hd-info"><a href="output/Ext.util.Observable.html" ext:cls="Ext.util.Observable" ext:member="">Observable</a></td></tr></table><div class="description"><p>Abstract base class for implementations which provide retrieval of unformatted data objects.
+This class is intended to be extended and should not be created directly. For existing implementations,
+see <a href="output/Ext.data.DirectProxy.html" ext:cls="Ext.data.DirectProxy">Ext.data.DirectProxy</a>, <a href="output/Ext.data.HttpProxy.html" ext:cls="Ext.data.HttpProxy">Ext.data.HttpProxy</a>, <a href="output/Ext.data.ScriptTagProxy.html" ext:cls="Ext.data.ScriptTagProxy">Ext.data.ScriptTagProxy</a> and
+<a href="output/Ext.data.MemoryProxy.html" ext:cls="Ext.data.MemoryProxy">Ext.data.MemoryProxy</a>.</p>
+<p>DataProxy implementations are usually used in conjunction with an implementation of <a href="output/Ext.data.DataReader.html" ext:cls="Ext.data.DataReader">Ext.data.DataReader</a>
+(of the appropriate type which knows how to parse the data object) to provide a block of
+<a href="output/Ext.data.Records.html" ext:cls="Ext.data.Records">Ext.data.Records</a> to an <a href="output/Ext.data.Store.html" ext:cls="Ext.data.Store">Ext.data.Store</a>.</p>
+<p>The parameter to a DataProxy constructor may be an <a href="output/Ext.data.Connection.html" ext:cls="Ext.data.Connection">Ext.data.Connection</a> or can also be the
+config object to an <a href="output/Ext.data.Connection.html" ext:cls="Ext.data.Connection">Ext.data.Connection</a>.</p>
+<p>Custom implementations must implement either the <code><b>doRequest</b></code> method (preferred) or the
+<code>load</code> method (deprecated). See
+<a href="output/Ext.data.HttpProxy.html" ext:cls="Ext.data.HttpProxy">Ext.data.HttpProxy</a>.<a href="output/Ext.data.HttpProxy.html#Ext.data.HttpProxy-doRequest" ext:member="doRequest" ext:cls="Ext.data.HttpProxy">doRequest</a> or
+<a href="output/Ext.data.HttpProxy.html" ext:cls="Ext.data.HttpProxy">Ext.data.HttpProxy</a>.<a href="output/Ext.data.HttpProxy.html#Ext.data.HttpProxy-load" ext:member="load" ext:cls="Ext.data.HttpProxy">load</a> for additional details.</p>
+<p><b><u>Example 1</u></b></p>
+<pre><code>proxy: <b>new</b> Ext.data.ScriptTagProxy({
+ <a href="output/Ext.data.Connection.html#Ext.data.Connection-url" ext:member="url" ext:cls="Ext.data.Connection">url</a>: <em>'http:<i>//extjs.com/forum/topics-remote.php'</em></i>
+}),</code></pre>
+<p><b><u>Example 2</u></b></p>
+<pre><code>proxy : <b>new</b> Ext.data.HttpProxy({
+ <a href="output/Ext.data.Connection.html#Ext.data.Connection-method" ext:member="method" ext:cls="Ext.data.Connection">method</a>: <em>'GET'</em>,
+ <a href="output/Ext.data.HttpProxy.html#Ext.data.HttpProxy-prettyUrls" ext:member="prettyUrls" ext:cls="Ext.data.HttpProxy">prettyUrls</a>: false,
+ <a href="output/Ext.data.Connection.html#Ext.data.Connection-url" ext:member="url" ext:cls="Ext.data.Connection">url</a>: <em>'local/<b>default</b>.php'</em>, <i>// see options parameter <b>for</b> <a href="output/Ext.Ajax.html#Ext.Ajax-request" ext:member="request" ext:cls="Ext.Ajax">Ext.Ajax.request</a></i>
+ <a href="output/Ext.data.DataProxy.html#Ext.data.DataProxy-api" ext:member="api" ext:cls="Ext.data.DataProxy">api</a>: {
+ <i>// all actions except the following will use above url</i>
+ create : <em>'local/<b>new</b>.php'</em>,
+ update : <em>'local/update.php'</em>
+ }
+}),</code></pre>
+<p>And <b>new in Ext version 3</b>, attach centralized event-listeners upon the DataProxy class itself! This is a great place
+to implement a <i>messaging system</i> to centralize your application's user-feedback and error-handling.</p>
+<pre><code><i>// Listen to all <em>"beforewrite"</em> event fired by all proxies.</i>
+Ext.data.DataProxy.on(<em>'beforewrite'</em>, <b>function</b>(proxy, action) {
+ console.log(<em>'beforewrite: '</em>, action);
+});
+
+<i>// Listen to <em>"write"</em> event fired by all proxies</i>
+Ext.data.DataProxy.on(<em>'write'</em>, <b>function</b>(proxy, action, data, res, rs) {
+ console.info(<em>'write: '</em>, action);
+});
+
+<i>// Listen to <em>"exception"</em> event fired by all proxies</i>
+Ext.data.DataProxy.on(<em>'exception'</em>, <b>function</b>(proxy, type, action, exception) {
+ console.error(type + action + <em>' exception);
+});</code></pre>
+<b>Note:</b> These three events are all fired with the signature of the corresponding <i>DataProxy instance</i> event <a href="output/Ext.data.DataProxy.html#Ext.data.DataProxy-beforewrite" ext:member="beforewrite" ext:cls="Ext.data.DataProxy">beforewrite</a>, <a href="output/Ext.data.DataProxy.html#Ext.data.DataProxy-write" ext:member="write" ext:cls="Ext.data.DataProxy">write</a> and <a href="output/Ext.data.DataProxy.html#Ext.data.DataProxy-exception" ext:member="exception" ext:cls="Ext.data.DataProxy">exception</a>.</div><div class="hr"></div><a id="Ext.data.DataProxy-configs"></a><h2>Config Options</h2><table cellspacing="0" class="member-table"><tbody><tr><th colspan="2" class="sig-header">Config Options</th><th class="msource-header">Defined By</th></tr><tr class="config-row expandable "><td class="micon"><a href="#expand" class="exi"> </a></td><td class="sig"><a id="Ext.data.DataProxy-api"></a><b><a href="source/DataProxy.html#cfg-Ext.data.DataProxy-api">api</a></b> : Object<div class="mdesc"><div class="short">Specific urls to call on CRUD action methods "read", "create", "update" and "destroy".
+Defaults to:api: {
+ read ...</div><div class="long">Specific urls to call on CRUD action methods "read", "create", "update" and "destroy".
+Defaults to:<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="output/Ext.data.DataProxy.html#Ext.data.DataProxy-api" ext:member="api" ext:cls="Ext.data.DataProxy">api</a></tt> property, or if undefined default to the
+configured <a href="output/Ext.data.Store.html" ext:cls="Ext.data.Store">Ext.data.Store</a>.<a href="output/Ext.data.Store.html#Ext.data.Store-url" ext:member="url" ext:cls="Ext.data.Store">url</a>.</p><br>
+<p>For example:</p>
+<pre><code>api: {
+ load : <em>'/controller/load'</em>,
+ create : <em>'/controller/<b>new</b>'</em>, <i>// Server MUST <b>return</b> idProperty of <b>new</b> record</i>
+ save : <em>'/controller/update'</em>,
+ destroy : <em>'/controller/destroy_action'</em>
+}
+
+<i>// Alternatively, one can use the object-form to specify each API-action</i>
+api: {
+ load: {url: <em>'read.php'</em>, method: <em>'GET'</em>},
+ create: <em>'create.php'</em>,
+ destroy: <em>'destroy.php'</em>,
+ save: <em>'update.php'</em>
+}</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="output/Ext.data.Connection.html#Ext.data.Connection-url" ext:member="url" ext:cls="Ext.data.Connection">url</a></tt>.</p>
+<br><p><b>Note</b>: To modify the URL for an action dynamically the appropriate API
+property should be modified before the action is requested using the corresponding before
+action event. For example to modify the URL associated with the load action:
+<pre><code><i>// modify the url <b>for</b> the action</i>
+myStore.on({
+ beforeload: {
+ fn: <b>function</b> (store, options) {
+ <i>// use <tt><a href="output/Ext.data.HttpProxy.html#Ext.data.HttpProxy-setUrl" ext:member="setUrl" ext:cls="Ext.data.HttpProxy">setUrl</a></tt> to change the URL <b>for</b> *just* this request.</i>
+ store.proxy.setUrl(<em>'changed1.php'</em>);
+
+ <i>// set optional second parameter to true to make this URL change</i>
+ <i>// permanent, applying this URL <b>for</b> all subsequent requests.</i>
+ store.proxy.setUrl(<em>'changed1.php'</em>, true);
+
+ <i>// Altering the proxy API should be done using the public</i>
+ <i>// method <tt><a href="output/Ext.data.DataProxy.html#Ext.data.DataProxy-setApi" ext:member="setApi" ext:cls="Ext.data.DataProxy">setApi</a></tt>.</i>
+ store.proxy.setApi(<em>'read'</em>, <em>'changed2.php'</em>);
+
+ <i>// Or set the entire API <b>with</b> a config-object.</i>
+ <i>// When using the config-object option, you must redefine the <b>entire</b></i>
+ <i>// API -- not just a specific action of it.</i>
+ store.proxy.setApi({
+ read : <em>'changed_read.php'</em>,
+ create : <em>'changed_create.php'</em>,
+ update : <em>'changed_update.php'</em>,
+ destroy : <em>'changed_destroy.php'</em>
+ });
+ }
+ }
+});</code></pre>
+</p></div></div></td><td class="msource">DataProxy</td></tr><tr class="config-row expandable "><td class="micon"><a href="#expand" class="exi"> </a></td><td class="sig"><a id="Ext.data.DataProxy-doRequest"></a><b><a href="source/DataProxy.html#cfg-Ext.data.DataProxy-doRequest">doRequest</a></b> : Function<div class="mdesc"><div class="short">Abstract method that should be implemented in all subclasses. Note: Should only be used by custom-proxy developers.
+...</div><div class="long">Abstract method that should be implemented in all subclasses. <b>Note:</b> Should only be used by custom-proxy developers.
+(e.g.: <a href="output/Ext.data.HttpProxy.html#Ext.data.HttpProxy-doRequest" ext:member="doRequest" ext:cls="Ext.data.HttpProxy">HttpProxy.doRequest</a>,
+<a href="output/Ext.data.DirectProxy.html#Ext.data.DirectProxy-doRequest" ext:member="doRequest" ext:cls="Ext.data.DirectProxy">DirectProxy.doRequest</a>).</div></div></td><td class="msource">DataProxy</td></tr><tr class="config-row expandable inherited"><td class="micon"><a href="#expand" class="exi"> </a></td><td class="sig"><a id="Ext.util.Observable-listeners"></a><b><a href="source/Observable.html#cfg-Ext.util.Observable-listeners">listeners</a></b> : Object<div class="mdesc"><div class="short">A config object containing one or more event handlers to be added to this