devdaily home | apple | java | perl | unix | directory | blog

What this is

This file is included in the DevDaily.com "Java Source Code Warehouse" project. The intent of this project is to help you "Learn Java by Example" TM.

Other links

The source code

/*
	Copyright (c) 2004-2008, The Dojo Foundation
	All Rights Reserved.

	Licensed under the Academic Free License version 2.1 or above OR the
	modified BSD license. For more information on Dojo licensing, see:

		http://dojotoolkit.org/book/dojo-book-0-9/introduction/licensing
*/

/*
	This is a compiled version of Dojo, built for deployment and not for
	development. To get an editable version, please visit:

		http://dojotoolkit.org

	for documentation and information on getting the source.
*/

if(!dojo._hasResource["dojo.AdapterRegistry"]){dojo._hasResource["dojo.AdapterRegistry"]=true;dojo.provide("dojo.AdapterRegistry");dojo.AdapterRegistry=function(_1){this.pairs=[];this.returnWrappers=_1||false;};dojo.extend(dojo.AdapterRegistry,{register:function(_2,_3,_4,_5,_6){this.pairs[((_6)?"unshift":"push")]([_2,_3,_4,_5]);},match:function(){for(var i=0;i<this.pairs.length;i++){var _8=this.pairs[i];if(_8[1].apply(this,arguments)){if((_8[3])||(this.returnWrappers)){return _8[2];}else{return _8[2].apply(this,arguments);}}}throw new Error("No match found");},unregister:function(_9){for(var i=0;i0){for(var i=0;i<_1e.length;i++){_1d.remove(_1e[i]);}dojo.io.script._deadScripts=[];}return true;},_ioCheck:function(dfd){if(dfd.ioArgs.json){return true;}var _21=dfd.ioArgs.args.checkString;if(_21&&eval("typeof("+_21+") != 'undefined'")){return true;}return false;},_resHandle:function(dfd){if(dojo.io.script._ioCheck(dfd)){dfd.callback(dfd);}else{dfd.errback(new Error("inconceivable dojo.io.script._resHandle error"));}},_jsonpCallback:function(_23){this.ioArgs.json=_23;}};}if(!dojo._hasResource["dojox.cometd._base"]){dojo._hasResource["dojox.cometd._base"]=true;dojo.provide("dojox.cometd._base");dojox.cometd=new function(){this.DISCONNECTED="DISCONNECTED";this.CONNECTING="CONNECTING";this.CONNECTED="CONNECTED";this.DISCONNECTING="DISCONNECING";this._initialized=false;this._connected=false;this._polling=false;this.expectedNetworkDelay=5000;this.connectTimeout=0;this.connectionTypes=new dojo.AdapterRegistry(true);this.version="1.0";this.minimumVersion="0.9";this.clientId=null;this.messageId=0;this.batch=0;this._isXD=false;this.handshakeReturn=null;this.currentTransport=null;this.url=null;this.lastMessage=null;this._messageQ=[];this.handleAs="json-comment-optional";this._advice={};this._backoffInterval=0;this._backoffIncrement=1000;this._backoffMax=60000;this._deferredSubscribes={};this._deferredUnsubscribes={};this._subscriptions=[];this._extendInList=[];this._extendOutList=[];this.state=function(){return this._initialized?(this._connected?"CONNECTED":"CONNECTING"):(this._connected?"DISCONNECTING":"DISCONNECTED");};this.init=function(_24,_25,_26){_25=_25||{};_25.version=this.version;_25.minimumVersion=this.minimumVersion;_25.channel="/meta/handshake";_25.id=""+this.messageId++;this.url=_24||dojo.config["cometdRoot"];if(!this.url){console.debug("no cometd root specified in djConfig and no root passed");return null;}var _27="^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\\?([^#]*))?(#(.*))?$";var _28=(""+window.location).match(new RegExp(_27));if(_28[4]){var tmp=_28[4].split(":");var _2a=tmp[0];var _2b=tmp[1]||"80";_28=this.url.match(new RegExp(_27));if(_28[4]){tmp=_28[4].split(":");var _2c=tmp[0];var _2d=tmp[1]||"80";this._isXD=((_2c!=_2a)||(_2d!=_2b));}}if(!this._isXD){if(_25.ext){if(_25.ext["json-comment-filtered"]!==true&&_25.ext["json-comment-filtered"]!==false){_25.ext["json-comment-filtered"]=true;}}else{_25.ext={"json-comment-filtered":true};}_25.supportedConnectionTypes=dojo.map(this.connectionTypes.pairs,"return item[0]");}_25=this._extendOut(_25);var _2e={url:this.url,handleAs:this.handleAs,content:{"message":dojo.toJson([_25])},load:dojo.hitch(this,function(msg){this._backon();this._finishInit(msg);}),error:dojo.hitch(this,function(e){console.debug("handshake error!:",e);this._backoff();this._finishInit([{}]);})};if(_26){dojo.mixin(_2e,_26);}this._props=_25;for(var _31 in this._subscriptions){for(var sub in this._subscriptions[_31]){if(this._subscriptions[_31][sub].topic){dojo.unsubscribe(this._subscriptions[_31][sub].topic);}}}this._messageQ=[];this._subscriptions=[];this._initialized=true;this.batch=0;this.startBatch();var r;if(this._isXD){_2e.callbackParamName="jsonp";r=dojo.io.script.get(_2e);}else{r=dojo.xhrPost(_2e);}dojo.publish("/cometd/meta",[{cometd:this,action:"handshake",successful:true,state:this.state()}]);return r;};this.publish=function(_34,_35,_36){var _37={data:_35,channel:_34};if(_36){dojo.mixin(_37,_36);}this._sendMessage(_37);};this.subscribe=function(_38,_39,_3a,_3b){_3b=_3b||{};if(_39){var _3c="/cometd"+_38;var _3d=this._subscriptions[_3c];if(!_3d||_3d.length==0){_3d=[];_3b.channel="/meta/subscribe";_3b.subscription=_38;this._sendMessage(_3b);var _ds=this._deferredSubscribes;if(_ds[_38]){_ds[_38].cancel();delete _ds[_38];}_ds[_38]=new dojo.Deferred();}for(var i in _3d){if(_3d[i].objOrFunc===_39&&(!_3d[i].funcName&&!_3a||_3d[i].funcName==_3a)){return null;}}var _40=dojo.subscribe(_3c,_39,_3a);_3d.push({topic:_40,objOrFunc:_39,funcName:_3a});this._subscriptions[_3c]=_3d;}var ret=this._deferredSubscribes[_38]||{};ret.args=dojo._toArray(arguments);return ret;};this.unsubscribe=function(_42,_43,_44,_45){if((arguments.length==1)&&(!dojo.isString(_42))&&(_42.args)){return this.unsubscribe.apply(this,_42.args);}var _46="/cometd"+_42;var _47=this._subscriptions[_46];if(!_47||_47.length==0){return null;}var s=0;for(var i in _47){var sb=_47[i];if((!_43)||(sb.objOrFunc===_43&&(!sb.funcName&&!_44||sb.funcName==_44))){dojo.unsubscribe(_47[i].topic);delete _47[i];}else{s++;}}if(s==0){_45=_45||{};_45.channel="/meta/subscribe";_45.subscription=_42;delete this._subscriptions[_46];this._sendMessage(_45);this._deferredUnsubscribes[_42]=new dojo.Deferred();if(this._deferredSubscribes[_42]){this._deferredSubscribes[_42].cancel();delete this._deferredSubscribes[_42];}}return this._deferredUnsubscribes[_42];};this.disconnect=function(){for(var _4b in this._subscriptions){for(var sub in this._subscriptions[_4b]){if(this._subscriptions[_4b][sub].topic){dojo.unsubscribe(this._subscriptions[_4b][sub].topic);}}}this._subscriptions=[];this._messageQ=[];if(this._initialized&&this.currentTransport){this._initialized=false;this.currentTransport.disconnect();}if(!this._polling){this._connected=false;dojo.publish("/cometd/meta",[{cometd:this,action:"connect",successful:false,state:this.state()}]);}this._initialized=false;dojo.publish("/cometd/meta",[{cometd:this,action:"disconnect",successful:true,state:this.state()}]);};this.subscribed=function(_4d,_4e){};this.unsubscribed=function(_4f,_50){};this.tunnelInit=function(_51,_52){};this.tunnelCollapse=function(){};this._backoff=function(){if(!this._advice){this._advice={reconnect:"retry",interval:0};}else{if(!this._advice.interval){this._advice.interval=0;}}if(this._backoffInterval0){console.debug("Retry in interval+backoff="+this._advice.interval+"+"+this._backoffInterval+"="+i+"ms");}return i;};this._finishInit=function(_54){_54=_54[0];this.handshakeReturn=_54;if(_54["advice"]){this._advice=_54.advice;}var _55=_54.successful?_54.successful:false;if(_54.version5)&&(_5b.channel.substr(0,5)=="/meta")){switch(_5b.channel){case "/meta/connect":if(_5b.successful&&!this._connected){this._connected=this._initialized;this.endBatch();}else{if(!this._initialized){this._connected=false;}}dojo.publish("/cometd/meta",[{cometd:this,action:"connect",successful:_5b.successful,state:this.state()}]);break;case "/meta/subscribe":_5c=this._deferredSubscribes[_5b.subscription];if(!_5b.successful){if(_5c){_5c.errback(new Error(_5b.error));}this.currentTransport.cancelConnect();return;}dojox.cometd.subscribed(_5b.subscription,_5b);if(_5c){_5c.callback(true);}break;case "/meta/unsubscribe":_5c=this._deferredUnsubscribes[_5b.subscription];if(!_5b.successful){if(_5c){_5c.errback(new Error(_5b.error));}this.currentTransport.cancelConnect();return;}this.unsubscribed(_5b.subscription,_5b);if(_5c){_5c.callback(true);}break;default:if(_5b.successful&&!_5b.successful){this.currentTransport.cancelConnect();return;}}}this.currentTransport.deliver(_5b);if(_5b.data){try{var _5d=[_5b];var _5e="/cometd"+_5b.channel;var _5f=_5b.channel.split("/");var _60="/cometd";for(var i=1;i<_5f.length-1;i++){dojo.publish(_60+"/**",_5d);_60+="/"+_5f[i];}dojo.publish(_60+"/**",_5d);dojo.publish(_60+"/*",_5d);dojo.publish(_5e,_5d);}catch(e){console.debug(e);}}};this._sendMessage=function(_62){if(this.currentTransport&&!this.batch){return this.currentTransport.sendMessages([_62]);}else{this._messageQ.push(_62);return null;}};this.startBatch=function(){this.batch++;};this.endBatch=function(){if(--this.batch<=0&&this.currentTransport&&this._connected){this.batch=0;var _63=this._messageQ;this._messageQ=[];if(_63.length>0){this.currentTransport.sendMessages(_63);}}};this._onUnload=function(){dojo.addOnUnload(dojox.cometd,"disconnect");};this._connectTimeout=function(){var _64=0;if(this._advice&&this._advice.timeout&&this.expectedNetworkDelay>0){_64=this._advice.timeout+this.expectedNetworkDelay;}if(this.connectTimeout>0&&this.connectTimeout<_64){return this.connectTimeout;}return 0;};};dojox.cometd.longPollTransport=new function(){this._connectionType="long-polling";this._cometd=null;this.check=function(_65,_66,_67){return ((!_67)&&(dojo.indexOf(_65,"long-polling")>=0));};this.tunnelInit=function(){var _68={channel:"/meta/connect",clientId:this._cometd.clientId,connectionType:this._connectionType,id:""+this._cometd.messageId++};_68=this._cometd._extendOut(_68);this.openTunnelWith({message:dojo.toJson([_68])});};this.tunnelCollapse=function(){if(!this._cometd._initialized){return;}if(this._cometd._advice&&this._cometd._advice["reconnect"]=="none"){console.debug("cometd reconnect: none");return;}setTimeout(dojo.hitch(this,function(){this._connect();}),this._cometd._interval());};this._connect=function(){if(!this._cometd._initialized){return;}if(this._cometd._polling){console.debug("wait for poll to complete or fail");return;}if((this._cometd._advice)&&(this._cometd._advice["reconnect"]=="handshake")){this._cometd._connected=false;this._initialized=false;this._cometd.init(this._cometd.url,this._cometd._props);}else{if(this._cometd._connected){var _69={channel:"/meta/connect",connectionType:this._connectionType,clientId:this._cometd.clientId,id:""+this._cometd.messageId++};if(this._cometd.connectTimeout>this._cometd.expectedNetworkDelay){_69.advice={timeout:(this._cometd.connectTimeout-this._cometd.expectedNetworkDelay)};}_69=this._cometd._extendOut(_69);this.openTunnelWith({message:dojo.toJson([_69])});}}};this.deliver=function(_6a){};this.openTunnelWith=function(_6b,url){this._cometd._polling=true;var _6d={url:(url||this._cometd.url),content:_6b,handleAs:this._cometd.handleAs,load:dojo.hitch(this,function(_6e){this._cometd._polling=false;this._cometd.deliver(_6e);this._cometd._backon();this.tunnelCollapse();}),error:dojo.hitch(this,function(err){this._cometd._polling=false;console.debug("tunnel opening failed:",err);dojo.publish("/cometd/meta",[{cometd:this._cometd,action:"connect",successful:false,state:this._cometd.state()}]);this._cometd._backoff();this.tunnelCollapse();})};var _70=this._cometd._connectTimeout();if(_70>0){_6d.timeout=_70;}this._poll=dojo.xhrPost(_6d);};this.sendMessages=function(_71){for(var i=0;i<_71.length;i++){_71[i].clientId=this._cometd.clientId;_71[i].id=""+this._cometd.messageId++;_71[i]=this._cometd._extendOut(_71[i]);}return dojo.xhrPost({url:this._cometd.url||dojo.config["cometdRoot"],handleAs:this._cometd.handleAs,load:dojo.hitch(this._cometd,"deliver"),error:dojo.hitch(this,function(err){console.debug("dropped messages: ",_71);}),content:{message:dojo.toJson(_71)}});};this.startup=function(_74){if(this._cometd._connected){return;}this.tunnelInit();};this.disconnect=function(){var _75={channel:"/meta/disconnect",clientId:this._cometd.clientId,id:""+this._cometd.messageId++};_75=this._cometd._extendOut(_75);dojo.xhrPost({url:this._cometd.url||dojo.config["cometdRoot"],handleAs:this._cometd.handleAs,content:{message:dojo.toJson([_75])}});};this.cancelConnect=function(){if(this._poll){this._poll.cancel();this._cometd._polling=false;dojo.debug("tunnel opening cancelled");dojo.event.topic.publish("/cometd/meta",{cometd:this._cometd,action:"connect",successful:false,state:this._cometd.state(),cancel:true});this._cometd._backoff();this.disconnect();this.tunnelCollapse();}};};dojox.cometd.callbackPollTransport=new function(){this._connectionType="callback-polling";this._cometd=null;this.check=function(_76,_77,_78){return (dojo.indexOf(_76,"callback-polling")>=0);};this.tunnelInit=function(){var _79={channel:"/meta/connect",clientId:this._cometd.clientId,connectionType:this._connectionType,id:""+this._cometd.messageId++};_79=this._cometd._extendOut(_79);this.openTunnelWith({message:dojo.toJson([_79])});};this.tunnelCollapse=dojox.cometd.longPollTransport.tunnelCollapse;this._connect=dojox.cometd.longPollTransport._connect;this.deliver=dojox.cometd.longPollTransport.deliver;this.openTunnelWith=function(_7a,url){this._cometd._polling=true;var _7c={load:dojo.hitch(this,function(_7d){this._cometd._polling=false;this._cometd.deliver(_7d);this._cometd._backon();this.tunnelCollapse();}),error:dojo.hitch(this,function(err){this._cometd._polling=false;console.debug("tunnel opening failed:",err);dojo.publish("/cometd/meta",[{cometd:this._cometd,action:"connect",successful:false,state:this._cometd.state()}]);this._cometd._backoff();this.tunnelCollapse();}),url:(url||this._cometd.url),content:_7a,callbackParamName:"jsonp"};var _7f=this._cometd._connectTimeout();if(_7f>0){_7c.timeout=_7f;}dojo.io.script.get(_7c);};this.sendMessages=function(_80){for(var i=0;i<_80.length;i++){_80[i].clientId=this._cometd.clientId;_80[i].id=""+this._cometd.messageId++;_80[i]=this._cometd._extendOut(_80[i]);}var _82={url:this._cometd.url||dojo.config["cometdRoot"],load:dojo.hitch(this._cometd,"deliver"),callbackParamName:"jsonp",content:{message:dojo.toJson(_80)}};return dojo.io.script.get(_82);};this.startup=function(_83){if(this._cometd._connected){return;}this.tunnelInit();};this.disconnect=dojox.cometd.longPollTransport.disconnect;this.disconnect=function(){var _84={channel:"/meta/disconnect",clientId:this._cometd.clientId,id:""+this._cometd.messageId++};_84=this._cometd._extendOut(_84);dojo.io.script.get({url:this._cometd.url||dojo.config["cometdRoot"],callbackParamName:"jsonp",content:{message:dojo.toJson([_84])}});};this.cancelConnect=function(){};};dojox.cometd.connectionTypes.register("long-polling",dojox.cometd.longPollTransport.check,dojox.cometd.longPollTransport);dojox.cometd.connectionTypes.register("callback-polling",dojox.cometd.callbackPollTransport.check,dojox.cometd.callbackPollTransport);dojo.addOnUnload(dojox.cometd,"_onUnload");}if(!dojo._hasResource["dojox.cometd"]){dojo._hasResource["dojox.cometd"]=true;dojo.provide("dojox.cometd");}




Copyright 1998-2008 Alvin Alexander
All Rights Reserved.
 
devdaily.com is based in louisville, kentucky, and this web site is hosted by godaddy.com