is there a way to define root post-parameter for ext-direct , under which the server requests/responses data will be stacked ? ( just like the 'root' in jsonstore )

I really need it to interchange some top-level info.


UPDATE
Thats what i've done to make it work . Ext support for something similar would be great.

Code:
/**
 * override for 'root' property request ( ExtDirect provider )
 */
Ext.override(Ext.direct.RemotingProvider,{
	doSend: function(data){
		var o = {
			url: this.url,
			callback: this.onData,
			scope: this,
			ts: data,
			timeout: this.timeout
		}, callData;
		
		if (Ext.isArray(data)) {
			callData = [];
			for (var i = 0, len = data.length; i < len; i++) {
				callData.push(this.getCallData(data[i]));
			}
		}
		else {
			callData = this.getCallData(data);
		}
		
		//michael:
		//inject response into 'this.root'
		if (this.root) {
			var tmp = {};
			tmp[this.root] = callData;
			callData = tmp;
			tmp = null;
		}
		//eof neo.michael
		
		
		if (this.enableUrlEncode) {
			var params = {};
			params[Ext.isString(this.enableUrlEncode) ? this.enableUrlEncode : 'data'] = Ext.encode(callData);
			o.params = params;
		}
		else {
			o.jsonData = callData;
		}
		Ext.Ajax.request(o);
	}
});

/**
 * override for 'root' property response( ExtDirect provider )
 */
Ext.override(Ext.direct.JsonProvider,
{
	parseResponse: function(xhr){
		
		//michael: method modified to take in account this.root property in response
		var ret={};
		if (!Ext.isEmpty(xhr.responseText)) {
			if (typeof xhr.responseText == 'object') {
				ret = xhr.responseText;
			}
			else {
				ret = Ext.decode(xhr.responseText);
			}
			
			if(this.root) return ret[this.root];
			return ret;
		}
		return null;
	}
});

usage:

Code:
Ext.ns('Direct');
 Direct.API = {"url":"...","type":"...","root":"ROOT_PARAM","actions":{...};
ofcourse, back-end support also needed, but thats trivial.