try{var testCommons=new MQObject();testCommons=null}catch(error){throw"You must include mqcommon.js or toolkit api script prior to mqexec.js."}function MQExec(f,l,h,e,k,d){var g;var a;var i;var n;var c;var b;var j;var m="";if(typeof f=="string"){g=f||"localhost";a=l||"mq";i=h||80;n=k||"";c=e||"";b=d||0;j=0}else{if(f.getClassName()&&f.getClassName()=="MQExec"){g=f.getServerName();a=f.getServerPath();i=f.getServerPort();c=f.getProxyServerName();b=f.getProxyServerPort();n=f.getProxyServerPath();j=f.m_lSocketTimeout}}this.setServerName=function(o){g=o};this.getServerName=function(){return g};this.setServerPath=function(o){a=o};this.getServerPath=function(){return a};this.setServerPort=function(o){i=o};this.getServerPort=function(){return i};this.setProxyServerName=function(o){c=o};this.getProxyServerName=function(){return c};this.setProxyServerPath=function(o){n=o};this.getProxyServerPath=function(){return n};this.setProxyServerPort=function(o){b=o};this.getProxyServerPort=function(){return b};this.setTransactionInfo=function(o){if(o.length>32){m=o.substring(0,32)}else{m=o}};this.getTransactionInfo=function(){return m}}MQExec.prototype.ROUTE_VERSION="2";MQExec.prototype.SEARCH_VERSION="0";MQExec.prototype.GEOCODE_VERSION="1";MQExec.prototype.ROUTEMATRIX_VERSION="0";MQExec.prototype.GETRECORDINFO_VERSION="0";MQExec.prototype.REVERSEGEOCODE_VERSION="0";MQExec.prototype.GETSESSION_VERSION="1";MQExec.prototype.getRequestXml=function(f,e,b){var d=new Array();var a=b||"0";d.push('<?xml version="1.0" encoding="ISO-8859-1"?>\n');d.push("<"+f+' Version="'+a+'">\n');for(var c=0;c<e.length;c++){d.push(e[c].saveXml());d.push("\n")}d.push("</"+f+">");return d.join("")};MQExec.prototype.doTransaction=function(h,d,b){var e;var c;var g=mqXMLHttpRequest();var f="";d.push(new MQAuthentication(this.getTransactionInfo()));var a=this.getRequestXml(h,d,b);if(this.getProxyServerName()!=""){f+="http://"+this.getProxyServerName();if(this.getProxyServerPort()!=0){f+=":"+this.getProxyServerPort()}f+="/"}f+=this.getProxyServerPath();f+="?sname="+this.getServerName();f+="&spath="+this.getServerPath();f+="&sport="+this.getServerPort();display("mqXmlLogs","Request URL: ",f,"rURL","mqDisplay");display("mqXmlLogs","Request XML: ",a,"","mqDisplay");g.open("POST",f,false);g.send(a);if(g.status==200){e=g.responseXML}else{alert("HTTP Status: "+g.status+" ("+g.statusText+")\nDetails: \n"+g.responseText);e=null}display("mqXmlLogs","Response XML: ",mqXmlToStr(e),"resXML","mqDisplay");return e};MQExec.prototype.geocode=function(b,f,e){var c;var d;var a=new Array();if(b==null||(b.getClassName()!=="MQAddress"&&b.getClassName()!=="MQSingleLineAddress")){throw"Null or Illegal Argument passed for MQAddress"}else{a.push(b)}if(f==null||f.getClassName()!=="MQLocationCollection"){throw"Null or Illegal Argument passed for MQLocationCollection"}if(e!=null){if(e.getClassName()!=="MQAutoGeocodeCovSwitch"&&e.getClassName()!=="MQGeocodeOptionsCollection"){throw"Illegal Argument passed for Geocode Options"}else{a.push(e)}}mqLogTime("MQExec.geocode: Transaction Start");c=this.doTransaction("Geocode",a,this.GEOCODE_VERSION);mqLogTime("MQExec.geocode: Transaction End");mqLogTime("MQExec.geocode: Loading of GeocodeResponse Start");d=mqXmlToStr(mqGetNode(c,"/GeocodeResponse/LocationCollection"));f.loadXml(d);mqLogTime("MQExec.geocode: Loading of GeocodeResponse End");display("results","Response",mqXmlToStr(c),"","mqDisplay")};MQExec.prototype.batchGeocode=function(f,a,e){var c;var d;var b=new Array();if(f==null||f.getClassName()!=="MQLocationCollection"){throw"Null or Illegal Argument passed for MQLocationCollection"}else{b.push(f)}if(a==null||a.getClassName()!=="MQLocationCollectionCollection"){throw"Null or Illegal Argument passed for MQLocationCollectionCollection"}if(e!=null){if(e.getClassName()!=="MQAutoGeocodeCovSwitch"&&e.getClassName()!=="MQGeocodeOptionsCollection"){throw"Illegal Argument passed for Geocode Options"}else{b.push(e)}}mqLogTime("MQExec.batchGeocode: Transaction Start");c=this.doTransaction("BatchGeocode",b,this.GEOCODE_VERSION);mqLogTime("MQExec.batchGeocode: Transaction End");mqLogTime("MQExec.batchGeocode: Loading of GeocodeResponse Start");d=mqXmlToStr(mqGetNode(c,"/BatchGeocodeResponse/LocationCollectionCollection"));a.loadXml(d);mqLogTime("MQExec.batchGeocode: Loading of GeocodeResponse End");display("results","Response",mqXmlToStr(c),"","mqDisplay")};MQExec.prototype.doRoute=function(b,f,g,a,e){var i;var h;var d=new Array();if(b==null||b.getClassName()!=="MQLocationCollection"){throw"Null or Illegal Argument passed for MQLocationCollection"}else{d.push(b)}if(f==null||f.getClassName()!=="MQRouteOptions"){throw"Null or Illegal Argument passed for MQRouteOptions"}else{d.push(f)}if(g==null||g.getClassName()!=="MQRouteResults"){throw"Null or Illegal Argument passed for MQRouteResults"}else{var c=a||"";d.push(new MQXmlNodeObject("SessionID",c))}mqLogTime("MQExec.doRoute: Transaction Start");i=this.doTransaction("DoRoute",d,this.ROUTE_VERSION);mqLogTime("MQExec.doRoute: Transaction End");mqLogTime("MQExec.doRoute: Loading of RouteResults Start");h=mqXmlToStr(mqGetNode(i,"/DoRouteResponse/RouteResults"));g.loadXml(h);mqLogTime("MQExec.doRoute: Loading of RouteResults End");display("results","Response",mqXmlToStr(i),"","mqDisplay");if(e!==null&&c!==""){this.getRouteBoundingBoxFromSessionResponse(c,e)}};MQExec.prototype.createSessionEx=function(c){var b;var d;var a=new Array();if(c==null||c.getClassName()!=="MQSession"){throw"Null or Illegal Argument passed for MQSession"}else{a.push(c)}b=this.doTransaction("CreateSession",a);d=mqGetNodeText(mqGetNode(b,"/CreateSessionResponse/SessionID"));return d};MQExec.prototype.getSession=function(b,a){var d;var f;var e=b||"";var c=new Array();c.push(new MQXmlNodeObject("SessionID",e));d=this.doTransaction("GetSession",c,this.GETSESSION_VERSION);if(a.getClassName()==="MQMapState"){f=mqXmlToStr(mqGetNode(d,"/GetSessionResponse/Session/MapState"));a.loadXml(f)}else{if(a.getClassName()==="MQSession"){f=mqXmlToStr(mqGetNode(d,"/GetSessionResponse/Session"));a.loadXml(f)}}};MQExec.prototype.doRouteMatrix=function(h,d,c,g){var e;var f;var b=new Array();if(h==null||h.getClassName()!=="MQLocationCollection"){throw"Null or Illegal Argument passed for MQLocationCollection"}else{b.push(h)}if(d==null||typeof d!="boolean"){throw"Null or Illegal Argument passed for bAllToAll"}else{var a=d?1:0;b.push(new MQXmlNodeObject("AllToAll",a))}if(c==null||c.getClassName()!=="MQRouteOptions"){throw"Null or Illegal Argument passed for MQRouteOptions"}else{b.push(c)}if(g==null||g.getClassName()!=="MQRouteMatrixResults"){throw"Null or Illegal Argument passed for MQRouteMatrixResults"}mqLogTime("MQExec.doRoute: Transaction Start");e=this.doTransaction("DoRouteMatrix",b,this.ROUTEMATRIX_VERSION);mqLogTime("MQExec.doRoute: Transaction End");mqLogTime("MQExec.doRoute: Loading of RouteResults Start");f=mqXmlToStr(mqGetNode(e,"/DoRouteMatrixResponse/RouteMatrixResults"));g.loadXml(f);mqLogTime("MQExec.doRoute: Loading of RouteResults End");display("results","Response",mqXmlToStr(e),"","mqDisplay")};MQExec.prototype.getRecordInfo=function(b,d,g,c){var i;var h;var f=new Array();if(b==null||b.getClassName()!=="MQStringCollection"){throw"Null or Illegal Argument passed for MQStringCollection"}else{var e=new MQStringCollection();e.setM_Xpath("Fields");e.append(b);f.push(e)}if(d==null||d.getClassName()!=="MQDBLayerQuery"){throw"Null or Illegal Argument passed for MQDBLayerQuery"}else{f.push(d)}if(g==null||g.getClassName()!=="MQRecordSet"){throw"Null or Illegal Argument passed for MQRecordSet"}if(c==null||c.getClassName()!=="MQStringCollection"){throw"Null or Illegal Argument passed for MQStringCollection"}else{var a=new MQStringCollection();a.setM_Xpath("RecordIds");a.append(c);f.push(a)}mqLogTime("MQExec.getRecordInfo: Transaction Start");i=this.doTransaction("GetRecordInfo",f,this.GETRECORDINFO_VERSION);mqLogTime("MQExec.getRecordInfo: Transaction End");mqLogTime("MQExec.getRecordInfo: Loading of RecordSet Start");h=mqXmlToStr(mqGetNode(i,"/GetRecordInfoResponse/RecordSet"));g.loadXml(h);mqLogTime("MQExec.getRecordInfo: Loading of RecordSet End");display("results","Response",mqXmlToStr(i),"","mqDisplay")};MQExec.prototype.reverseGeocode=function(c,d,g,b){var i;var h;var e=new Array();if(c==null||c.getClassName()!=="MQLatLng"){throw"Null or Illegal Argument passed for MQLatLng"}else{e.push(c)}if(d==null||d.getClassName()!=="MQLocationCollection"){throw"Null or Illegal Argument passed for MQLocationCollection"}var a=g||"";e.push(new MQXmlNodeObject("MapPool",a));var f=b||"";e.push(new MQXmlNodeObject("GeocodePool",f));mqLogTime("MQExec.reverseGeocode: Transaction Start");i=this.doTransaction("ReverseGeocode",e,this.REVERSEGEOCODE_VERSION);mqLogTime("MQExec.reverseGeocode: Transaction End");mqLogTime("MQExec.reverseGeocode: Loading of Response Start");h=mqXmlToStr(mqGetNode(i,"/ReverseGeocodeResponse/LocationCollection"));d.loadXml(h);mqLogTime("MQExec.reverseGeocode: Loading of Response End");display("results","Response",mqXmlToStr(i),"","mqDisplay")};MQExec.prototype.search=function(f,b,a,e,g,h){var j;var i;var d=new Array();var c=f?f.getClassName():null;if(c==null||(c!=="MQSearchCriteria"&&c!=="MQRadiusSearchCriteria"&&c!=="MQRectSearchCriteria"&&c!=="MQPolySearchCriteria"&&c!=="MQCorridorSearchCriteria")){throw"Null or Illegal Argument passed for Search Criteria"}else{d.push(f)}if(b==null||b.getClassName()!=="MQFeatureCollection"){throw"Null or Illegal Argument passed for MQFeatureCollection"}if(typeof a!=="string"){throw"Illegal Argument passed for strCoverageName"}else{d.push(new MQXmlNodeObject("CoverageName",a))}if(e!=null&&e.getClassName()!=="MQDBLayerQueryCollection"){throw"Illegal Argument passed for MQRouteOptions"}else{if(e==null){e=new MQDBLayerQueryCollection()}}d.push(e);if(g!=null&&g.getClassName()!=="MQFeatureCollection"){throw"Illegal Argument passed for MQFeatureCollection"}else{if(g==null){g=new MQFeatureCollection()}}d.push(g);if(h!=null&&h.getClassName()!=="MQDTCollection"){throw"Illegal Argument passed for MQDTCollection"}else{if(h==null){h=new MQDTCollection()}}d.push(h);mqLogTime("MQExec.Search: Transaction Start");j=this.doTransaction("Search",d,this.SEARCH_VERSION);mqLogTime("MQExec.Search: Transaction End");mqLogTime("MQExec.Search: Loading of Search results Start");i=mqXmlToStr(mqGetNode(j,"/SearchResponse/FeatureCollection"));b.loadXml(i);mqLogTime("MQExec.Search: Loading of Search results End");display("results","Response",mqXmlToStr(j),"","mqDisplay")};MQExec.prototype.getRouteBoundingBoxFromSessionResponse=function(h,f){var e;var g;var d=new Array();if(f==null){throw"Null or Illegal Argument passed for MQRectLL"}d.push(new MQXmlNodeObject("SessionID",h));e=this.doTransaction("GetRouteBoundingBoxFromSession",d);mqLogTime("MQExec.doRoute: Loading of MQRectLL Start");var b=e.documentElement.childNodes;var c=new MQLatLng();c.loadXml(mqXmlToStr(b[0]));var a=new MQLatLng();a.loadXml(mqXmlToStr(b[1]));f.setUpperLeft(c);f.setLowerRight(a);mqLogTime("MQExec.doRoute: Loading of MQRectLL End")};MQExec.prototype.isAlive=function(){if(this.getServerPort()==-1||this.getServerName()==""){return false}return true};MQExec.prototype.getServerInfo=function(b){if(!this.isAlive()){return null}var a;var e;var f;var d=b||0;var c=new Array();if(typeof d!=="number"){throw"Illegal Argument passed for lType"}else{c.push(new MQXmlNodeObject("Type",d))}mqLogTime("MQExec.GetServerInfo: Transaction Start");e=this.doTransaction("GetServerInfo",c);mqLogTime("MQExec.GetServerInfo: Transaction End");display("results","Response",mqXmlToStr(e),"","mqDisplay");return e};