Observable DataProxy
Package: | Ext.data |
Defined In: | DataProxy.js |
Class: | DataProxy |
Subclasses: | DirectProxy, HttpProxy, MemoryProxy, ScriptTagProxy |
Extends: | Observable |
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 Ext.data.DirectProxy, Ext.data.HttpProxy, Ext.data.ScriptTagProxy and Ext.data.MemoryProxy.
DataProxy implementations are usually used in conjunction with an implementation of Ext.data.DataReader (of the appropriate type which knows how to parse the data object) to provide a block of Ext.data.Records to an Ext.data.Store.
The parameter to a DataProxy constructor may be an Ext.data.Connection or can also be the config object to an Ext.data.Connection.
Custom implementations must implement either the doRequest
method (preferred) or the
load
method (deprecated). See
Ext.data.HttpProxy.doRequest or
Ext.data.HttpProxy.load for additional details.
Example 1
proxy: new Ext.data.ScriptTagProxy({
url: 'http://extjs.com/forum/topics-remote.php'
}),
Example 2
proxy : new Ext.data.HttpProxy({
method: 'GET',
prettyUrls: false,
url: 'local/default.php', // see options parameter for Ext.Ajax.request
api: {
// all actions except the following will use above url
create : 'local/new.php',
update : 'local/update.php'
}
}),
Config Options | Defined By | |
---|---|---|
api : Object Specific urls to call on CRUD action methods "read", "create", "update" and "destroy".
Defaults to:api: {
read ... Specific urls to call on CRUD action methods "read", "create", "update" and "destroy".
Defaults to:
If the specific URL for a given CRUD action is undefined, the CRUD action request will be directed to the configured url. Note: 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:
| DataProxy | |
doRequest : Function Abstract method that should be implemented in all subclasses
(e.g.: HttpProxy.doRequest,
DirectProxy.doRequest). | DataProxy | |
listeners : Object A config object containing one or more event handlers to be added to this
object during initialization. This should ... 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 addListener example for attaching multiple handlers at once. DOM events from ExtJs Components While some ExtJs Component classes export selected DOM events (e.g. "click", "mouseover" etc), this
is usually only done when extra value can be added. For example the DataView's
| Observable | |
restful : Boolean Defaults to false. Set to true to operate in a RESTful manner.
Note: this parameter will automatically be set to t... Defaults to false. Set to true to operate in a RESTful manner. Note: this parameter will automatically be set to true if the
Ext.data.Store it is plugged into is set to RESTful implementations enable the serverside framework to automatically route actions sent to one url based upon the HTTP method, for example:
There is no api specified in the configuration of the proxy,
all requests will be marshalled to a single RESTful url (/users) so the serverside
framework can inspect the HTTP Method and act accordingly:
Method url action POST /users create GET /users read PUT /users/23 update DESTROY /users/23 delete | DataProxy |
Method | Defined By | |
---|---|---|
addEvents( Object object )
:
voidUsed to define events on this Observable Used to define events on this Observable Parameters:
| Observable | |
addListener( String eventName , Function handler , [Object scope ], [Object options ] )
:
voidAppends an event handler to this object. Appends an event handler to this object. Parameters:
| Observable | |
destroy()
:
void Destroys the proxy by purging any event listeners and cancelling any active requests. Destroys the proxy by purging any event listeners and cancelling any active requests. Parameters:
| DataProxy | |
enableBubble( Object events )
:
voidUsed to enable bubbling of events Used to enable bubbling of events Parameters:
| Observable | |
fireEvent( String eventName , Object... args )
:
BooleanFires the specified event with the passed parameters (minus the event name).
An event may be set to bubble up an Obse... Fires the specified event with the passed parameters (minus the event name). An event may be set to bubble up an Observable parent hierarchy (See Ext.Component.getBubbleTarget) by calling enableBubble. Parameters:
| Observable | |
hasListener( String eventName )
:
BooleanChecks to see if this object has any listeners for a specified event Checks to see if this object has any listeners for a specified event Parameters:
| Observable | |
isApiAction( String [Ext.data.Api.CREATE|READ|UPDATE|DESTROY]} )
:
BooleanReturns true if the specified action is defined as a unique action in the api-config.
request. If all API-actions a... Returns true if the specified action is defined as a unique action in the api-config.
request. If all API-actions are routed to unique urls, the xaction parameter is unecessary. However, if no api is defined
and all Proxy actions are routed to DataProxy#url, the server-side will require the xaction parameter to perform a switch to
the corresponding code for CRUD action. Parameters:
| DataProxy | |
load( Object params , Object reader , Object callback , Object scope , Object arg )
:
voidDeprecated load method using old method signature. See {@doRequest} for preferred method. Deprecated load method using old method signature. See {@doRequest} for preferred method. Parameters:
| DataProxy | |
on( String eventName , Function handler , [Object scope ], [Object options ] )
:
voidAppends an event handler to this object (shorthand for addListener.) Appends an event handler to this object (shorthand for addListener.) Parameters:
| Observable | |
purgeListeners()
:
void Removes all listeners for this object Removes all listeners for this object Parameters:
| Observable | |
relayEvents( Object o , Array events )
:
voidRelays selected events from the specified Observable as if the events were fired by this. Relays selected events from the specified Observable as if the events were fired by this. Parameters:
| Observable | |
removeListener( String eventName , Function handler , [Object scope ] )
:
voidRemoves an event handler. Removes an event handler. Parameters:
| Observable | |
request( String action , Ext.data.Record/Ext.data.Record[]/null rs , Object params , Ext.data.DataReader reader , Function callback , Object scope , Object options )
:
voidAll proxy actions are executed through this method. Automatically fires the "before" + action event All proxy actions are executed through this method. Automatically fires the "before" + action event Parameters:
| DataProxy | |
resumeEvents()
:
void Resume firing events. (see suspendEvents)
If events were suspended using the queueSuspended parameter, then all
event... Resume firing events. (see suspendEvents)
If events were suspended using the queueSuspended parameter, then all
events fired during event suspension will be sent to any listeners now. Parameters:
| Observable | |
setApi( String/Object api , String/Function url )
:
voidRedefines the Proxy's API or a single action of an API. Can be called with two method signatures.
If called with an ... Redefines the Proxy's API or a single action of an API. Can be called with two method signatures. If called with an object as the only parameter, the object should redefine the entire API, e.g.:
If called with two parameters, the first parameter should be a string specifying the API action to redefine and the second parameter should be the URL (or function if using DirectProxy) to call for that action, e.g.:
Parameters:
| DataProxy | |
suspendEvents( Boolean queueSuspended )
:
voidSuspend the firing of all events. (see resumeEvents) Suspend the firing of all events. (see resumeEvents) Parameters:
| Observable | |
un( String eventName , Function handler , [Object scope ] )
:
voidRemoves an event handler (shorthand for removeListener.) Removes an event handler (shorthand for removeListener.) Parameters:
| Observable |
Event | Defined By | |
---|---|---|
beforeload :
( DataProxy this , Object params )
Fires before a request to retrieve a data object. Fires before a request to retrieve a data object. Listeners will be called with the following arguments:
| DataProxy | |
beforewrite :
( DataProxy this , String action , Record/Array[Record] rs , Object params )
Fires before a request is generated for one of the actions Ext.data.Api.actions.create|update|destroy Fires before a request is generated for one of the actions Ext.data.Api.actions.create|update|destroy Listeners will be called with the following arguments:
| DataProxy | |
exception :
( DataProxy this , String type , String action , Object options , Object response , Mixed arg )
Fires if an exception occurs in the Proxy during a remote request.
This event is relayed through a corresponding
Ex... Fires if an exception occurs in the Proxy during a remote request. This event is relayed through a corresponding Ext.data.Store.exception, so any Store instance may observe this event. This event can be fired for one of two reasons:
This event fires with two different contexts based upon the 2nd parameter type [remote|response]. The first four parameters are identical between the two contexts -- only the final two parameters differ. Listeners will be called with the following arguments:
| DataProxy | |
load :
( DataProxy this , Object o , Object options )
Fires before the load method's callback is called. Fires before the load method's callback is called. Listeners will be called with the following arguments:
| DataProxy | |
loadexception :
( misc misc )
This event is deprecated. The signature of the loadexception event
varies depending on the proxy, use the catch-all... | DataProxy | |
write :
( DataProxy this , String action , Object data , Object response , Record/Record{} rs , Object options )
Fires before the request-callback is called Fires before the request-callback is called Listeners will be called with the following arguments:
| DataProxy |