1T.AjaxChain=function(){ 2 this.failOnError=true; 3 this._pool=[]; 4 this.push=function(ajax){ 5 this._pool.push(ajax); 6 }; 7 this.submit=function(){ 8 var args=arguments; 9 for(var i=0,len=args.length;i<len;i++){ 10 this.push(args[i]); 11 } 12 this._next(); 13 }; 14 this.callback=function(){ 15 16 }; 17 this._next=function(){ 18 var self=this; 19 var ajax=self._pool.shift(); 20 if(ajax==null){ 21 self.callback(); 22 return; 23 }; 24 ajax.callback=T.roundDevice(ajax.callback,ajax,function(invocation){ 25 var str=invocation.args[0]; 26 var data=T.evalJson(str); 27 var success=data["success"]; 28 if(success){ 29 try{ 30 invocation.proceed(); 31 ajax["_result_"]=data; 32 }catch(e){ 33 alert(e.message); 34 } 35 } 36 if(success||!self.failOnError){ 37 self._next(); 38 } 39 }); 40 ajax.submit(); 41 }; 42}; 43T.AjaxChain.getInstance=function(){ 44 var chain=new T.AjaxChain(); 45 return chain; 46};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.