- /* End Definitions */
-
- constructor: function(){
- var me = this;
-
- me.addEvents(
-<span id='Ext-direct-Manager-event-event'> /**
-</span> * @event event
- * Fires after an event.
- * @param {event} e The Ext.direct.Event type that occurred.
- * @param {Ext.direct.Provider} provider The {@link Ext.direct.Provider Provider}.
- */
- 'event',
-<span id='Ext-direct-Manager-event-exception'> /**
-</span> * @event exception
- * Fires after an event exception.
- * @param {event} e The Ext.direct.Event type that occurred.
- */
- 'exception'
- );
- me.transactions = Ext.create('Ext.util.MixedCollection');
- me.providers = Ext.create('Ext.util.MixedCollection');
-
- me.mixins.observable.constructor.call(me);
- },
-
-<span id='Ext-direct-Manager-method-addProvider'> /**
-</span> * Adds an Ext.Direct Provider and creates the proxy or stub methods to execute server-side methods.
- * If the provider is not already connected, it will auto-connect.
- * <pre><code>
-var pollProv = new Ext.direct.PollingProvider({
- url: 'php/poll2.php'
-});
-
-Ext.direct.Manager.addProvider({
- "type":"remoting", // create a {@link Ext.direct.RemotingProvider}
- "url":"php\/router.php", // url to connect to the Ext.Direct server-side router.
- "actions":{ // each property within the actions object represents a Class
- "TestAction":[ // array of methods within each server side Class
- {
- "name":"doEcho", // name of method
- "len":1
- },{
- "name":"multiply",
- "len":1
- },{
- "name":"doForm",
- "formHandler":true, // handle form on server with Ext.Direct.Transaction
- "len":1
- }]
- },
- "namespace":"myApplication",// namespace to create the Remoting Provider in
-},{
- type: 'polling', // create a {@link Ext.direct.PollingProvider}
- url: 'php/poll.php'
-}, pollProv); // reference to previously created instance
- * </code></pre>
- * @param {Object/Array} provider Accepts either an Array of Provider descriptions (an instance
- * or config object for a Provider) or any number of Provider descriptions as arguments. Each
- * Provider description instructs Ext.Direct how to create client-side stub methods.
- */
- addProvider : function(provider){
- var me = this,
- args = arguments,
- i = 0,
- len;
-
- if (args.length > 1) {
- for (len = args.length; i < len; ++i) {
- me.addProvider(args[i]);
- }
- return;
- }
-
- // if provider has not already been instantiated
- if (!provider.isProvider) {
- provider = Ext.create('direct.' + provider.type + 'provider', provider);
- }
- me.providers.add(provider);
- provider.on('data', me.onProviderData, me);
-
-
- if (!provider.isConnected()) {
- provider.connect();
- }
-
- return provider;
- },