<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<title>ConnectReply xref</title>
<link type="text/css" rel="stylesheet" href="../../../../../stylesheet.css" />
</head>
<body>
<div id="overview"><a href="../../../../../../apidocs/org/trafodion/dcs/master/listener/ConnectReply.html">View Javadoc</a></div><pre>

<a class="jxr_linenumber" name="1" href="#1">1</a>   <em class="jxr_javadoccomment">/**</em>
<a class="jxr_linenumber" name="2" href="#2">2</a>   <em class="jxr_javadoccomment">* @@@ START COPYRIGHT @@@</em>
<a class="jxr_linenumber" name="3" href="#3">3</a>   
<a class="jxr_linenumber" name="4" href="#4">4</a>   <em class="jxr_javadoccomment">Licensed to the Apache Software Foundation (ASF) under one</em>
<a class="jxr_linenumber" name="5" href="#5">5</a>   <em class="jxr_javadoccomment">or more contributor license agreements.  See the NOTICE file</em>
<a class="jxr_linenumber" name="6" href="#6">6</a>   <em class="jxr_javadoccomment">distributed with this work for additional information</em>
<a class="jxr_linenumber" name="7" href="#7">7</a>   <em class="jxr_javadoccomment">regarding copyright ownership.  The ASF licenses this file</em>
<a class="jxr_linenumber" name="8" href="#8">8</a>   <em class="jxr_javadoccomment">to you under the Apache License, Version 2.0 (the</em>
<a class="jxr_linenumber" name="9" href="#9">9</a>   <em class="jxr_javadoccomment">"License"); you may not use this file except in compliance</em>
<a class="jxr_linenumber" name="10" href="#10">10</a>  <em class="jxr_javadoccomment">with the License.  You may obtain a copy of the License at</em>
<a class="jxr_linenumber" name="11" href="#11">11</a>  
<a class="jxr_linenumber" name="12" href="#12">12</a>  <em class="jxr_javadoccomment">  <a href="http://www.apache.org/licenses/LICENSE-2.0" target="alexandria_uri">http://www.apache.org/licenses/LICENSE-2.0</a></em>
<a class="jxr_linenumber" name="13" href="#13">13</a>  
<a class="jxr_linenumber" name="14" href="#14">14</a>  <em class="jxr_javadoccomment">Unless required by applicable law or agreed to in writing,</em>
<a class="jxr_linenumber" name="15" href="#15">15</a>  <em class="jxr_javadoccomment">software distributed under the License is distributed on an</em>
<a class="jxr_linenumber" name="16" href="#16">16</a>  <em class="jxr_javadoccomment">"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY</em>
<a class="jxr_linenumber" name="17" href="#17">17</a>  <em class="jxr_javadoccomment">KIND, either express or implied.  See the License for the</em>
<a class="jxr_linenumber" name="18" href="#18">18</a>  <em class="jxr_javadoccomment">specific language governing permissions and limitations</em>
<a class="jxr_linenumber" name="19" href="#19">19</a>  <em class="jxr_javadoccomment">under the License.</em>
<a class="jxr_linenumber" name="20" href="#20">20</a>  
<a class="jxr_linenumber" name="21" href="#21">21</a>  <em class="jxr_javadoccomment">* @@@ END COPYRIGHT @@@</em>
<a class="jxr_linenumber" name="22" href="#22">22</a>  <em class="jxr_javadoccomment"> */</em>
<a class="jxr_linenumber" name="23" href="#23">23</a>  <strong class="jxr_keyword">package</strong> org.trafodion.dcs.master.listener;
<a class="jxr_linenumber" name="24" href="#24">24</a>  
<a class="jxr_linenumber" name="25" href="#25">25</a>  <strong class="jxr_keyword">import</strong> java.sql.SQLException;
<a class="jxr_linenumber" name="26" href="#26">26</a>  <strong class="jxr_keyword">import</strong> java.sql.Timestamp;
<a class="jxr_linenumber" name="27" href="#27">27</a>  <strong class="jxr_keyword">import</strong> java.util.Date;
<a class="jxr_linenumber" name="28" href="#28">28</a>  <strong class="jxr_keyword">import</strong> java.io.*;
<a class="jxr_linenumber" name="29" href="#29">29</a>  <strong class="jxr_keyword">import</strong> java.nio.*;
<a class="jxr_linenumber" name="30" href="#30">30</a>  <strong class="jxr_keyword">import</strong> java.nio.channels.*;
<a class="jxr_linenumber" name="31" href="#31">31</a>  <strong class="jxr_keyword">import</strong> java.nio.channels.spi.*;
<a class="jxr_linenumber" name="32" href="#32">32</a>  <strong class="jxr_keyword">import</strong> java.net.*;
<a class="jxr_linenumber" name="33" href="#33">33</a>  <strong class="jxr_keyword">import</strong> java.util.*;
<a class="jxr_linenumber" name="34" href="#34">34</a>  <strong class="jxr_keyword">import</strong> org.apache.commons.logging.Log;
<a class="jxr_linenumber" name="35" href="#35">35</a>  <strong class="jxr_keyword">import</strong> org.apache.commons.logging.LogFactory;
<a class="jxr_linenumber" name="36" href="#36">36</a>  <strong class="jxr_keyword">import</strong> org.apache.zookeeper.KeeperException;
<a class="jxr_linenumber" name="37" href="#37">37</a>  <strong class="jxr_keyword">import</strong> org.apache.zookeeper.ZooDefs;
<a class="jxr_linenumber" name="38" href="#38">38</a>  <strong class="jxr_keyword">import</strong> org.apache.zookeeper.data.Stat;
<a class="jxr_linenumber" name="39" href="#39">39</a>  <strong class="jxr_keyword">import</strong> org.apache.zookeeper.CreateMode;
<a class="jxr_linenumber" name="40" href="#40">40</a>  <strong class="jxr_keyword">import</strong> org.apache.zookeeper.ZooKeeper;
<a class="jxr_linenumber" name="41" href="#41">41</a>  
<a class="jxr_linenumber" name="42" href="#42">42</a>  <strong class="jxr_keyword">import</strong> org.trafodion.dcs.util.*;
<a class="jxr_linenumber" name="43" href="#43">43</a>  <strong class="jxr_keyword">import</strong> org.trafodion.dcs.Constants;
<a class="jxr_linenumber" name="44" href="#44">44</a>  <strong class="jxr_keyword">import</strong> org.trafodion.dcs.zookeeper.ZkClient;
<a class="jxr_linenumber" name="45" href="#45">45</a>  
<a class="jxr_linenumber" name="46" href="#46">46</a>  <strong class="jxr_keyword">class</strong> <a href="../../../../../org/trafodion/dcs/master/listener/ConnectReply.html">ConnectReply</a> {
<a class="jxr_linenumber" name="47" href="#47">47</a>      <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong>  <strong class="jxr_keyword">final</strong> Log LOG = LogFactory.getLog(ConnectReply.<strong class="jxr_keyword">class</strong>);
<a class="jxr_linenumber" name="48" href="#48">48</a>      
<a class="jxr_linenumber" name="49" href="#49">49</a>      <strong class="jxr_keyword">private</strong> <a href="../../../../../org/trafodion/dcs/zookeeper/ZkClient.html">ZkClient</a> zkc = <strong class="jxr_keyword">null</strong>;
<a class="jxr_linenumber" name="50" href="#50">50</a>      <strong class="jxr_keyword">private</strong> String parentZnode = <span class="jxr_string">""</span>;
<a class="jxr_linenumber" name="51" href="#51">51</a>      
<a class="jxr_linenumber" name="52" href="#52">52</a>      <strong class="jxr_keyword">private</strong> <a href="../../../../../org/trafodion/dcs/master/listener/GetObjRefException.html">GetObjRefException</a> exception = <strong class="jxr_keyword">null</strong>;
<a class="jxr_linenumber" name="53" href="#53">53</a>      <strong class="jxr_keyword">private</strong> Integer dialogueId = 0;
<a class="jxr_linenumber" name="54" href="#54">54</a>      <strong class="jxr_keyword">private</strong> String dataSource = <span class="jxr_string">""</span>;
<a class="jxr_linenumber" name="55" href="#55">55</a>      <strong class="jxr_keyword">private</strong> byte[] userSid;
<a class="jxr_linenumber" name="56" href="#56">56</a>      <strong class="jxr_keyword">private</strong> <a href="../../../../../org/trafodion/dcs/master/listener/VersionList.html">VersionList</a> versionList = <strong class="jxr_keyword">null</strong>;
<a class="jxr_linenumber" name="57" href="#57">57</a>      <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">int</strong> isoMapping = 0;
<a class="jxr_linenumber" name="58" href="#58">58</a>      
<a class="jxr_linenumber" name="59" href="#59">59</a>      <strong class="jxr_keyword">private</strong> String serverHostName=<span class="jxr_string">""</span>;
<a class="jxr_linenumber" name="60" href="#60">60</a>      <strong class="jxr_keyword">private</strong> Integer serverNodeId=0;
<a class="jxr_linenumber" name="61" href="#61">61</a>      <strong class="jxr_keyword">private</strong> Integer serverProcessId=0;
<a class="jxr_linenumber" name="62" href="#62">62</a>      <strong class="jxr_keyword">private</strong> String serverProcessName=<span class="jxr_string">""</span>;
<a class="jxr_linenumber" name="63" href="#63">63</a>      <strong class="jxr_keyword">private</strong> String serverIpAddress=<span class="jxr_string">""</span>;
<a class="jxr_linenumber" name="64" href="#64">64</a>      <strong class="jxr_keyword">private</strong> Integer serverPort=0;
<a class="jxr_linenumber" name="65" href="#65">65</a>      <strong class="jxr_keyword">private</strong> Long timestamp=0L;
<a class="jxr_linenumber" name="66" href="#66">66</a>      <strong class="jxr_keyword">private</strong> String clusterName = <span class="jxr_string">""</span>;
<a class="jxr_linenumber" name="67" href="#67">67</a>      
<a class="jxr_linenumber" name="68" href="#68">68</a>      <strong class="jxr_keyword">private</strong>  Random random = <strong class="jxr_keyword">null</strong>;
<a class="jxr_linenumber" name="69" href="#69">69</a>      
<a class="jxr_linenumber" name="70" href="#70">70</a>      <a href="../../../../../org/trafodion/dcs/master/listener/ConnectReply.html">ConnectReply</a>(<a href="../../../../../org/trafodion/dcs/zookeeper/ZkClient.html">ZkClient</a> zkc,String parentZnode){
<a class="jxr_linenumber" name="71" href="#71">71</a>          <strong class="jxr_keyword">this</strong>.zkc = zkc;
<a class="jxr_linenumber" name="72" href="#72">72</a>          <strong class="jxr_keyword">this</strong>.parentZnode = parentZnode;
<a class="jxr_linenumber" name="73" href="#73">73</a>          exception = <strong class="jxr_keyword">new</strong> <a href="../../../../../org/trafodion/dcs/master/listener/GetObjRefException.html">GetObjRefException</a>();
<a class="jxr_linenumber" name="74" href="#74">74</a>          versionList = <strong class="jxr_keyword">new</strong> <a href="../../../../../org/trafodion/dcs/master/listener/VersionList.html">VersionList</a>();
<a class="jxr_linenumber" name="75" href="#75">75</a>          random = <strong class="jxr_keyword">new</strong> Random();
<a class="jxr_linenumber" name="76" href="#76">76</a>      }
<a class="jxr_linenumber" name="77" href="#77">77</a>      <em class="jxr_comment">// ----------------------------------------------------------</em>
<a class="jxr_linenumber" name="78" href="#78">78</a>      <strong class="jxr_keyword">void</strong> insertIntoByteBuffer(ByteBuffer buf)  <strong class="jxr_keyword">throws</strong> java.io.UnsupportedEncodingException {
<a class="jxr_linenumber" name="79" href="#79">79</a>          exception.insertIntoByteBuffer(buf);
<a class="jxr_linenumber" name="80" href="#80">80</a>          buf.putInt(dialogueId);
<a class="jxr_linenumber" name="81" href="#81">81</a>          Util.insertString(dataSource,buf);
<a class="jxr_linenumber" name="82" href="#82">82</a>          Util.insertByteString(userSid,buf);
<a class="jxr_linenumber" name="83" href="#83">83</a>          versionList.insertIntoByteBuffer(buf);
<a class="jxr_linenumber" name="84" href="#84">84</a>          buf.putInt(isoMapping);
<a class="jxr_linenumber" name="85" href="#85">85</a>      
<a class="jxr_linenumber" name="86" href="#86">86</a>          Util.insertString(serverHostName,buf);
<a class="jxr_linenumber" name="87" href="#87">87</a>          buf.putInt(serverNodeId);
<a class="jxr_linenumber" name="88" href="#88">88</a>          buf.putInt(serverProcessId);
<a class="jxr_linenumber" name="89" href="#89">89</a>          Util.insertString(serverProcessName,buf);
<a class="jxr_linenumber" name="90" href="#90">90</a>          Util.insertString(serverIpAddress,buf);
<a class="jxr_linenumber" name="91" href="#91">91</a>          buf.putInt(serverPort);
<a class="jxr_linenumber" name="92" href="#92">92</a>          buf.putLong(timestamp);
<a class="jxr_linenumber" name="93" href="#93">93</a>          Util.insertString(clusterName,buf);
<a class="jxr_linenumber" name="94" href="#94">94</a>      }
<a class="jxr_linenumber" name="95" href="#95">95</a>      
<a class="jxr_linenumber" name="96" href="#96">96</a>      <strong class="jxr_keyword">boolean</strong> buildConnectReply  (Header hdr, ConnectionContext cc, SocketAddress clientSocketAddress ) <strong class="jxr_keyword">throws</strong> java.io.UnsupportedEncodingException {
<a class="jxr_linenumber" name="97" href="#97">97</a>      
<a class="jxr_linenumber" name="98" href="#98">98</a>          <strong class="jxr_keyword">boolean</strong> replyException = false;
<a class="jxr_linenumber" name="99" href="#99">99</a>          Integer serverInstance=0;
<a class="jxr_linenumber" name="100" href="#100">100</a>         String serverTimestamp=<span class="jxr_string">""</span>;
<a class="jxr_linenumber" name="101" href="#101">101</a>     
<a class="jxr_linenumber" name="102" href="#102">102</a>         versionList = <strong class="jxr_keyword">new</strong> <a href="../../../../../org/trafodion/dcs/master/listener/VersionList.html">VersionList</a>();
<a class="jxr_linenumber" name="103" href="#103">103</a>     
<a class="jxr_linenumber" name="104" href="#104">104</a>         versionList.list[0].componentId = ListenerConstants.DCS_MASTER_COMPONENT;
<a class="jxr_linenumber" name="105" href="#105">105</a>         versionList.list[0].majorVersion = ListenerConstants.DCS_MASTER_VERSION_MAJOR_1;
<a class="jxr_linenumber" name="106" href="#106">106</a>         versionList.list[0].minorVersion = ListenerConstants.DCS_MASTER_VERSION_MINOR_0;
<a class="jxr_linenumber" name="107" href="#107">107</a>         versionList.list[0].buildId	= ListenerConstants.DCS_MASTER_BUILD_1 | ListenerConstants.CHARSET | ListenerConstants.PASSWORD_SECURITY;
<a class="jxr_linenumber" name="108" href="#108">108</a>     
<a class="jxr_linenumber" name="109" href="#109">109</a>         versionList.list[1].componentId = ListenerConstants.MXOSRVR_ENDIAN + ListenerConstants.ODBC_SRVR_COMPONENT;
<a class="jxr_linenumber" name="110" href="#110">110</a>         versionList.list[1].majorVersion = ListenerConstants.MXOSRVR_VERSION_MAJOR;
<a class="jxr_linenumber" name="111" href="#111">111</a>         versionList.list[1].minorVersion = ListenerConstants.MXOSRVR_VERSION_MINOR;
<a class="jxr_linenumber" name="112" href="#112">112</a>         versionList.list[1].buildId	= ListenerConstants.MXOSRVR_VERSION_BUILD;
<a class="jxr_linenumber" name="113" href="#113">113</a>     
<a class="jxr_linenumber" name="114" href="#114">114</a>         exception.exception_nr=0;
<a class="jxr_linenumber" name="115" href="#115">115</a>         exception.exception_detail=0;
<a class="jxr_linenumber" name="116" href="#116">116</a>         exception.ErrorText=<strong class="jxr_keyword">null</strong>;
<a class="jxr_linenumber" name="117" href="#117">117</a>     
<a class="jxr_linenumber" name="118" href="#118">118</a>         Stat stat = <strong class="jxr_keyword">null</strong>;
<a class="jxr_linenumber" name="119" href="#119">119</a>         byte[] data = <strong class="jxr_keyword">null</strong>;
<a class="jxr_linenumber" name="120" href="#120">120</a>         <strong class="jxr_keyword">boolean</strong> found = false;
<a class="jxr_linenumber" name="121" href="#121">121</a>         <strong class="jxr_keyword">boolean</strong> exceptionThrown = false;
<a class="jxr_linenumber" name="122" href="#122">122</a>         
<a class="jxr_linenumber" name="123" href="#123">123</a>         <strong class="jxr_keyword">int</strong> length = 0;
<a class="jxr_linenumber" name="124" href="#124">124</a>         <strong class="jxr_keyword">int</strong> index = 0;
<a class="jxr_linenumber" name="125" href="#125">125</a>         <strong class="jxr_keyword">int</strong> maxIndex = -1;
<a class="jxr_linenumber" name="126" href="#126">126</a>         <strong class="jxr_keyword">int</strong> randomPicks = 0;
<a class="jxr_linenumber" name="127" href="#127">127</a>         String server = <span class="jxr_string">""</span>;
<a class="jxr_linenumber" name="128" href="#128">128</a>         
<a class="jxr_linenumber" name="129" href="#129">129</a>         <strong class="jxr_keyword">try</strong> {
<a class="jxr_linenumber" name="130" href="#130">130</a>             String registeredPath = parentZnode + Constants.DEFAULT_ZOOKEEPER_ZNODE_SERVERS_REGISTERED;
<a class="jxr_linenumber" name="131" href="#131">131</a>             String nodeRegisteredPath = <span class="jxr_string">""</span>;
<a class="jxr_linenumber" name="132" href="#132">132</a>             
<a class="jxr_linenumber" name="133" href="#133">133</a>             <strong class="jxr_keyword">if</strong> (false == registeredPath.startsWith(<span class="jxr_string">"/"</span>))
<a class="jxr_linenumber" name="134" href="#134">134</a>                 registeredPath = <span class="jxr_string">"/"</span> + registeredPath;
<a class="jxr_linenumber" name="135" href="#135">135</a> 
<a class="jxr_linenumber" name="136" href="#136">136</a>             zkc.sync(registeredPath,<strong class="jxr_keyword">null</strong>,<strong class="jxr_keyword">null</strong>);
<a class="jxr_linenumber" name="137" href="#137">137</a>             List&lt;String&gt; servers = zkc.getChildren(registeredPath, <strong class="jxr_keyword">null</strong>);
<a class="jxr_linenumber" name="138" href="#138">138</a>             length = servers.size();
<a class="jxr_linenumber" name="139" href="#139">139</a>             <strong class="jxr_keyword">if</strong> (length == 0){
<a class="jxr_linenumber" name="140" href="#140">140</a>                 <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> IOException(<span class="jxr_string">"No Available Servers - length is 0"</span>);
<a class="jxr_linenumber" name="141" href="#141">141</a>             }
<a class="jxr_linenumber" name="142" href="#142">142</a>             <strong class="jxr_keyword">if</strong>(LOG.isDebugEnabled()){
<a class="jxr_linenumber" name="143" href="#143">143</a>                 <strong class="jxr_keyword">int</strong> dbgLength = length &gt; 4 ? 4 : length;
<a class="jxr_linenumber" name="144" href="#144">144</a>                 <strong class="jxr_keyword">for</strong> (<strong class="jxr_keyword">int</strong> i = 0; i &lt; dbgLength; i++){
<a class="jxr_linenumber" name="145" href="#145">145</a>                     LOG.debug(clientSocketAddress + <span class="jxr_string">": "</span> + i + <span class="jxr_string">" server "</span> + servers.get(i) );
<a class="jxr_linenumber" name="146" href="#146">146</a>                 }
<a class="jxr_linenumber" name="147" href="#147">147</a>             }
<a class="jxr_linenumber" name="148" href="#148">148</a>             <strong class="jxr_keyword">switch</strong>(length) {
<a class="jxr_linenumber" name="149" href="#149">149</a>                     <strong class="jxr_keyword">case</strong> 1: randomPicks = 1;<strong class="jxr_keyword">break</strong>;
<a class="jxr_linenumber" name="150" href="#150">150</a>                     <strong class="jxr_keyword">case</strong> 2: randomPicks = 1;<strong class="jxr_keyword">break</strong>;
<a class="jxr_linenumber" name="151" href="#151">151</a>                     <strong class="jxr_keyword">case</strong> 3: <strong class="jxr_keyword">case</strong> 4: randomPicks = 2;<strong class="jxr_keyword">break</strong>;
<a class="jxr_linenumber" name="152" href="#152">152</a>                     <strong class="jxr_keyword">default</strong>:randomPicks = 3;
<a class="jxr_linenumber" name="153" href="#153">153</a>             }
<a class="jxr_linenumber" name="154" href="#154">154</a>             <strong class="jxr_keyword">if</strong>(LOG.isDebugEnabled())
<a class="jxr_linenumber" name="155" href="#155">155</a>                 LOG.debug(clientSocketAddress + <span class="jxr_string">": "</span> + <span class="jxr_string">"randomPicks "</span> + randomPicks + <span class="jxr_string">", length "</span> + length );
<a class="jxr_linenumber" name="156" href="#156">156</a>             
<a class="jxr_linenumber" name="157" href="#157">157</a>             <strong class="jxr_keyword">int</strong>[] indexArr = <strong class="jxr_keyword">new</strong> <strong class="jxr_keyword">int</strong>[length];
<a class="jxr_linenumber" name="158" href="#158">158</a>             Arrays.fill(indexArr, 0, length - 1, -1);
<a class="jxr_linenumber" name="159" href="#159">159</a>             indexArr[0] = -1;
<a class="jxr_linenumber" name="160" href="#160">160</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="161" href="#161">161</a> <em class="jxr_comment">// pick randomly the AVAILABLE server </em>
<a class="jxr_linenumber" name="162" href="#162">162</a> <em class="jxr_comment">//                </em>
<a class="jxr_linenumber" name="163" href="#163">163</a>             <strong class="jxr_keyword">for</strong>(<strong class="jxr_keyword">int</strong> i=0; i &lt; randomPicks; i++){
<a class="jxr_linenumber" name="164" href="#164">164</a>                 <strong class="jxr_keyword">while</strong>(<strong class="jxr_keyword">true</strong>){
<a class="jxr_linenumber" name="165" href="#165">165</a>                     index = random.nextInt();
<a class="jxr_linenumber" name="166" href="#166">166</a>                     index = index &gt; 0? index : -index;
<a class="jxr_linenumber" name="167" href="#167">167</a>                     index %= length;
<a class="jxr_linenumber" name="168" href="#168">168</a>                     <strong class="jxr_keyword">if</strong> (indexArr[index] != index) <strong class="jxr_keyword">break</strong>;
<a class="jxr_linenumber" name="169" href="#169">169</a>                 }
<a class="jxr_linenumber" name="170" href="#170">170</a>                 indexArr[index] = index;
<a class="jxr_linenumber" name="171" href="#171">171</a>                 maxIndex = index &gt; maxIndex ? index : maxIndex;
<a class="jxr_linenumber" name="172" href="#172">172</a>                 server = servers.get(index);
<a class="jxr_linenumber" name="173" href="#173">173</a>                 <strong class="jxr_keyword">if</strong>(LOG.isDebugEnabled())
<a class="jxr_linenumber" name="174" href="#174">174</a>                     LOG.debug(clientSocketAddress + <span class="jxr_string">": "</span> + <span class="jxr_string">" index "</span> + index + <span class="jxr_string">" server picked "</span> + server );
<a class="jxr_linenumber" name="175" href="#175">175</a>                 
<a class="jxr_linenumber" name="176" href="#176">176</a>                 nodeRegisteredPath = registeredPath + <span class="jxr_string">"/"</span> + server;
<a class="jxr_linenumber" name="177" href="#177">177</a>                 stat = zkc.exists(nodeRegisteredPath,false);
<a class="jxr_linenumber" name="178" href="#178">178</a>                 <strong class="jxr_keyword">if</strong>(stat != <strong class="jxr_keyword">null</strong>){
<a class="jxr_linenumber" name="179" href="#179">179</a>                     data = zkc.getData(nodeRegisteredPath, false, stat);
<a class="jxr_linenumber" name="180" href="#180">180</a>                     <strong class="jxr_keyword">if</strong> (false == (<strong class="jxr_keyword">new</strong> String(data)).startsWith(<span class="jxr_string">"AVAILABLE:"</span>))
<a class="jxr_linenumber" name="181" href="#181">181</a>                         <strong class="jxr_keyword">continue</strong>;
<a class="jxr_linenumber" name="182" href="#182">182</a>                     <strong class="jxr_keyword">else</strong> {
<a class="jxr_linenumber" name="183" href="#183">183</a>                         found = <strong class="jxr_keyword">true</strong>;
<a class="jxr_linenumber" name="184" href="#184">184</a>                         <strong class="jxr_keyword">break</strong>;
<a class="jxr_linenumber" name="185" href="#185">185</a>                     }
<a class="jxr_linenumber" name="186" href="#186">186</a>                 }
<a class="jxr_linenumber" name="187" href="#187">187</a>                 <strong class="jxr_keyword">else</strong>
<a class="jxr_linenumber" name="188" href="#188">188</a>                     <strong class="jxr_keyword">continue</strong>;
<a class="jxr_linenumber" name="189" href="#189">189</a>             }
<a class="jxr_linenumber" name="190" href="#190">190</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="191" href="#191">191</a> <em class="jxr_comment">// search sequentially for AVAILABLE server starting from highest random index + 1 to length</em>
<a class="jxr_linenumber" name="192" href="#192">192</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="193" href="#193">193</a>             <strong class="jxr_keyword">if</strong> (found == false){
<a class="jxr_linenumber" name="194" href="#194">194</a>                 <strong class="jxr_keyword">for</strong>(index=maxIndex+1; index&lt;length; index++){
<a class="jxr_linenumber" name="195" href="#195">195</a>                     <strong class="jxr_keyword">if</strong> (indexArr[index] != index){
<a class="jxr_linenumber" name="196" href="#196">196</a>                         server = servers.get(index);
<a class="jxr_linenumber" name="197" href="#197">197</a>                         <strong class="jxr_keyword">if</strong>(LOG.isDebugEnabled())
<a class="jxr_linenumber" name="198" href="#198">198</a>                             LOG.debug(clientSocketAddress + <span class="jxr_string">": "</span> + <span class="jxr_string">"server selected in search 1 "</span> + server );
<a class="jxr_linenumber" name="199" href="#199">199</a>                             
<a class="jxr_linenumber" name="200" href="#200">200</a>                         nodeRegisteredPath = registeredPath + <span class="jxr_string">"/"</span> + server;
<a class="jxr_linenumber" name="201" href="#201">201</a>                         stat = zkc.exists(nodeRegisteredPath,false);
<a class="jxr_linenumber" name="202" href="#202">202</a>                         <strong class="jxr_keyword">if</strong>(stat != <strong class="jxr_keyword">null</strong>){
<a class="jxr_linenumber" name="203" href="#203">203</a>                             data = zkc.getData(nodeRegisteredPath, false, stat);
<a class="jxr_linenumber" name="204" href="#204">204</a>                             <strong class="jxr_keyword">if</strong> (false == (<strong class="jxr_keyword">new</strong> String(data)).startsWith(<span class="jxr_string">"AVAILABLE:"</span>))
<a class="jxr_linenumber" name="205" href="#205">205</a>                                 <strong class="jxr_keyword">continue</strong>;
<a class="jxr_linenumber" name="206" href="#206">206</a>                             <strong class="jxr_keyword">else</strong> {
<a class="jxr_linenumber" name="207" href="#207">207</a>                                 found = <strong class="jxr_keyword">true</strong>;
<a class="jxr_linenumber" name="208" href="#208">208</a>                                 <strong class="jxr_keyword">break</strong>;
<a class="jxr_linenumber" name="209" href="#209">209</a>                             }
<a class="jxr_linenumber" name="210" href="#210">210</a>                         }
<a class="jxr_linenumber" name="211" href="#211">211</a>                         <strong class="jxr_keyword">else</strong>
<a class="jxr_linenumber" name="212" href="#212">212</a>                             <strong class="jxr_keyword">continue</strong>;
<a class="jxr_linenumber" name="213" href="#213">213</a>                     }
<a class="jxr_linenumber" name="214" href="#214">214</a>                 }
<a class="jxr_linenumber" name="215" href="#215">215</a>             }
<a class="jxr_linenumber" name="216" href="#216">216</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="217" href="#217">217</a> <em class="jxr_comment">// search sequentially for AVAILABLE server starting from index 0 to max random index - 1</em>
<a class="jxr_linenumber" name="218" href="#218">218</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="219" href="#219">219</a>             <strong class="jxr_keyword">if</strong> (found == false){
<a class="jxr_linenumber" name="220" href="#220">220</a>                 <strong class="jxr_keyword">for</strong>(index=0; index&lt;maxIndex; index++){
<a class="jxr_linenumber" name="221" href="#221">221</a>                     <strong class="jxr_keyword">if</strong> (indexArr[index] != index){
<a class="jxr_linenumber" name="222" href="#222">222</a>                         server = servers.get(index);
<a class="jxr_linenumber" name="223" href="#223">223</a>                         <strong class="jxr_keyword">if</strong>(LOG.isDebugEnabled())
<a class="jxr_linenumber" name="224" href="#224">224</a>                             LOG.debug(clientSocketAddress + <span class="jxr_string">": "</span> + <span class="jxr_string">"server selected in search 2 "</span> + server );
<a class="jxr_linenumber" name="225" href="#225">225</a>                             
<a class="jxr_linenumber" name="226" href="#226">226</a>                         nodeRegisteredPath = registeredPath + <span class="jxr_string">"/"</span> + server;
<a class="jxr_linenumber" name="227" href="#227">227</a>                         stat = zkc.exists(nodeRegisteredPath,false);
<a class="jxr_linenumber" name="228" href="#228">228</a>                         <strong class="jxr_keyword">if</strong>(stat != <strong class="jxr_keyword">null</strong>){
<a class="jxr_linenumber" name="229" href="#229">229</a>                             data = zkc.getData(nodeRegisteredPath, false, stat);
<a class="jxr_linenumber" name="230" href="#230">230</a>                             <strong class="jxr_keyword">if</strong> (false == (<strong class="jxr_keyword">new</strong> String(data)).startsWith(<span class="jxr_string">"AVAILABLE:"</span>))
<a class="jxr_linenumber" name="231" href="#231">231</a>                                 <strong class="jxr_keyword">continue</strong>;
<a class="jxr_linenumber" name="232" href="#232">232</a>                             <strong class="jxr_keyword">else</strong> {
<a class="jxr_linenumber" name="233" href="#233">233</a>                                 found = <strong class="jxr_keyword">true</strong>;
<a class="jxr_linenumber" name="234" href="#234">234</a>                                 <strong class="jxr_keyword">break</strong>;
<a class="jxr_linenumber" name="235" href="#235">235</a>                             }
<a class="jxr_linenumber" name="236" href="#236">236</a>                         }
<a class="jxr_linenumber" name="237" href="#237">237</a>                         <strong class="jxr_keyword">else</strong>
<a class="jxr_linenumber" name="238" href="#238">238</a>                             <strong class="jxr_keyword">continue</strong>;
<a class="jxr_linenumber" name="239" href="#239">239</a>                     }
<a class="jxr_linenumber" name="240" href="#240">240</a>                 }
<a class="jxr_linenumber" name="241" href="#241">241</a>             }
<a class="jxr_linenumber" name="242" href="#242">242</a>             <strong class="jxr_keyword">if</strong> (found == <strong class="jxr_keyword">true</strong>){
<a class="jxr_linenumber" name="243" href="#243">243</a> 
<a class="jxr_linenumber" name="244" href="#244">244</a>                 String[] stNode = server.split(<span class="jxr_string">":"</span>);
<a class="jxr_linenumber" name="245" href="#245">245</a>                 serverHostName=stNode[0];
<a class="jxr_linenumber" name="246" href="#246">246</a>                 serverInstance=Integer.parseInt(stNode[1]);
<a class="jxr_linenumber" name="247" href="#247">247</a>                 
<a class="jxr_linenumber" name="248" href="#248">248</a>                 String[] stData = (<strong class="jxr_keyword">new</strong> String(data)).split(<span class="jxr_string">":"</span>);
<a class="jxr_linenumber" name="249" href="#249">249</a>                 timestamp=Long.parseLong(stData[1]);
<a class="jxr_linenumber" name="250" href="#250">250</a>                 serverNodeId=Integer.parseInt(stData[3]);
<a class="jxr_linenumber" name="251" href="#251">251</a>                 serverProcessId=Integer.parseInt(stData[4]);
<a class="jxr_linenumber" name="252" href="#252">252</a>                 serverProcessName=stData[5];
<a class="jxr_linenumber" name="253" href="#253">253</a>                 serverIpAddress=stData[6];
<a class="jxr_linenumber" name="254" href="#254">254</a>                 serverPort=Integer.parseInt(stData[7]);
<a class="jxr_linenumber" name="255" href="#255">255</a>                 
<a class="jxr_linenumber" name="256" href="#256">256</a>                 <strong class="jxr_keyword">if</strong>(LOG.isDebugEnabled()){
<a class="jxr_linenumber" name="257" href="#257">257</a>                     LOG.debug(clientSocketAddress + <span class="jxr_string">": "</span> + <span class="jxr_string">"serverHostName "</span> + serverHostName );
<a class="jxr_linenumber" name="258" href="#258">258</a>                     LOG.debug(clientSocketAddress + <span class="jxr_string">": "</span> + <span class="jxr_string">"serverInstance "</span> + serverInstance );
<a class="jxr_linenumber" name="259" href="#259">259</a>                     LOG.debug(clientSocketAddress + <span class="jxr_string">": "</span> + <span class="jxr_string">"serverNodeId "</span> + serverNodeId );
<a class="jxr_linenumber" name="260" href="#260">260</a>                     LOG.debug(clientSocketAddress + <span class="jxr_string">": "</span> + <span class="jxr_string">"serverProcessId "</span> + serverProcessId);
<a class="jxr_linenumber" name="261" href="#261">261</a>                     LOG.debug(clientSocketAddress + <span class="jxr_string">": "</span> + <span class="jxr_string">"serverProcessName "</span> + serverProcessName );
<a class="jxr_linenumber" name="262" href="#262">262</a>                     LOG.debug(clientSocketAddress + <span class="jxr_string">": "</span> + <span class="jxr_string">"serverIpAddress "</span> + serverIpAddress );
<a class="jxr_linenumber" name="263" href="#263">263</a>                     LOG.debug(clientSocketAddress + <span class="jxr_string">": "</span> + <span class="jxr_string">"serverPort "</span> + serverPort );
<a class="jxr_linenumber" name="264" href="#264">264</a>                     LOG.debug(clientSocketAddress + <span class="jxr_string">": "</span> + <span class="jxr_string">"timestamp "</span> + timestamp );
<a class="jxr_linenumber" name="265" href="#265">265</a>                 }
<a class="jxr_linenumber" name="266" href="#266">266</a>                 
<a class="jxr_linenumber" name="267" href="#267">267</a>                 dialogueId = random.nextInt();
<a class="jxr_linenumber" name="268" href="#268">268</a>                 dialogueId = (dialogueId &lt; 0 )? -dialogueId : dialogueId;
<a class="jxr_linenumber" name="269" href="#269">269</a>                 <strong class="jxr_keyword">if</strong>(LOG.isDebugEnabled())
<a class="jxr_linenumber" name="270" href="#270">270</a>                     LOG.debug(clientSocketAddress + <span class="jxr_string">": "</span> + <span class="jxr_string">"dialogueId: "</span> + dialogueId);
<a class="jxr_linenumber" name="271" href="#271">271</a>                 data = Bytes.toBytes(String.format(<span class="jxr_string">"CONNECTING:%d:%d:%d:%d:%s:%s:%d:%s:%s:%s:"</span>,
<a class="jxr_linenumber" name="272" href="#272">272</a>                         timestamp,
<a class="jxr_linenumber" name="273" href="#273">273</a>                         dialogueId, 
<a class="jxr_linenumber" name="274" href="#274">274</a>                         serverNodeId,
<a class="jxr_linenumber" name="275" href="#275">275</a>                         serverProcessId,
<a class="jxr_linenumber" name="276" href="#276">276</a>                         serverProcessName,
<a class="jxr_linenumber" name="277" href="#277">277</a>                         serverIpAddress,
<a class="jxr_linenumber" name="278" href="#278">278</a>                         serverPort,
<a class="jxr_linenumber" name="279" href="#279">279</a>                         cc.computerName, 
<a class="jxr_linenumber" name="280" href="#280">280</a>                         clientSocketAddress, 
<a class="jxr_linenumber" name="281" href="#281">281</a>                         cc.windowText ));
<a class="jxr_linenumber" name="282" href="#282">282</a>                 zkc.setData(nodeRegisteredPath, data, -1);
<a class="jxr_linenumber" name="283" href="#283">283</a>             }
<a class="jxr_linenumber" name="284" href="#284">284</a>         } <strong class="jxr_keyword">catch</strong> (KeeperException.NodeExistsException e) {
<a class="jxr_linenumber" name="285" href="#285">285</a>             LOG.error(clientSocketAddress + <span class="jxr_string">": "</span> + <span class="jxr_string">"do nothing...some other server has created znodes: "</span> + e.getMessage());
<a class="jxr_linenumber" name="286" href="#286">286</a>             exceptionThrown = <strong class="jxr_keyword">true</strong>;
<a class="jxr_linenumber" name="287" href="#287">287</a>         } <strong class="jxr_keyword">catch</strong> (KeeperException e) {
<a class="jxr_linenumber" name="288" href="#288">288</a>             LOG.error(clientSocketAddress + <span class="jxr_string">": "</span> + <span class="jxr_string">"KeeperException: "</span> + e.getMessage());
<a class="jxr_linenumber" name="289" href="#289">289</a>             exceptionThrown = <strong class="jxr_keyword">true</strong>;
<a class="jxr_linenumber" name="290" href="#290">290</a>         } <strong class="jxr_keyword">catch</strong> (InterruptedException e) {
<a class="jxr_linenumber" name="291" href="#291">291</a>             LOG.error(clientSocketAddress + <span class="jxr_string">": "</span> + <span class="jxr_string">"InterruptedException: "</span> + e.getMessage());
<a class="jxr_linenumber" name="292" href="#292">292</a>             exceptionThrown = <strong class="jxr_keyword">true</strong>;
<a class="jxr_linenumber" name="293" href="#293">293</a>         } <strong class="jxr_keyword">catch</strong> (IOException ie){
<a class="jxr_linenumber" name="294" href="#294">294</a>             LOG.error(clientSocketAddress + <span class="jxr_string">": "</span> + ie.getMessage());
<a class="jxr_linenumber" name="295" href="#295">295</a>             exceptionThrown = <strong class="jxr_keyword">true</strong>;
<a class="jxr_linenumber" name="296" href="#296">296</a>         }
<a class="jxr_linenumber" name="297" href="#297">297</a>         <strong class="jxr_keyword">if</strong> (found == false || exceptionThrown == <strong class="jxr_keyword">true</strong>){
<a class="jxr_linenumber" name="298" href="#298">298</a>             exception.exception_nr = ListenerConstants.DcsMasterNoSrvrHdl_exn; <em class="jxr_comment">//no available servers</em>
<a class="jxr_linenumber" name="299" href="#299">299</a>             replyException = <strong class="jxr_keyword">true</strong>;
<a class="jxr_linenumber" name="300" href="#300">300</a>             <strong class="jxr_keyword">if</strong>(LOG.isDebugEnabled()){
<a class="jxr_linenumber" name="301" href="#301">301</a>                 <strong class="jxr_keyword">if</strong> (found == false)
<a class="jxr_linenumber" name="302" href="#302">302</a>                     LOG.info(clientSocketAddress + <span class="jxr_string">": "</span> + <span class="jxr_string">"No Available Servers"</span>);
<a class="jxr_linenumber" name="303" href="#303">303</a>                 <strong class="jxr_keyword">else</strong>
<a class="jxr_linenumber" name="304" href="#304">304</a>                     LOG.info(clientSocketAddress + <span class="jxr_string">": "</span> + <span class="jxr_string">"No Available Servers - exception thrown"</span>);
<a class="jxr_linenumber" name="305" href="#305">305</a>             }
<a class="jxr_linenumber" name="306" href="#306">306</a>         } <strong class="jxr_keyword">else</strong> {
<a class="jxr_linenumber" name="307" href="#307">307</a>             
<a class="jxr_linenumber" name="308" href="#308">308</a>             <strong class="jxr_keyword">if</strong> (cc.datasource.length() == 0)
<a class="jxr_linenumber" name="309" href="#309">309</a>                 dataSource = <span class="jxr_string">"TDM_Default_DataSource"</span>;
<a class="jxr_linenumber" name="310" href="#310">310</a>             <strong class="jxr_keyword">else</strong>
<a class="jxr_linenumber" name="311" href="#311">311</a>                 dataSource = cc.datasource;
<a class="jxr_linenumber" name="312" href="#312">312</a> 
<a class="jxr_linenumber" name="313" href="#313">313</a>             <strong class="jxr_keyword">if</strong>(LOG.isDebugEnabled()){
<a class="jxr_linenumber" name="314" href="#314">314</a>                 LOG.debug(clientSocketAddress + <span class="jxr_string">": "</span> + <span class="jxr_string">"userName: "</span> + cc.user.userName);
<a class="jxr_linenumber" name="315" href="#315">315</a>                 LOG.debug(clientSocketAddress + <span class="jxr_string">": "</span> + <span class="jxr_string">"password: XXXXXX"</span>);
<a class="jxr_linenumber" name="316" href="#316">316</a>                 LOG.debug(clientSocketAddress + <span class="jxr_string">": "</span> + <span class="jxr_string">"client: "</span> + cc.client);
<a class="jxr_linenumber" name="317" href="#317">317</a>                 LOG.debug(clientSocketAddress + <span class="jxr_string">": "</span> + <span class="jxr_string">"location: "</span> + cc.location);
<a class="jxr_linenumber" name="318" href="#318">318</a>                 LOG.debug(clientSocketAddress + <span class="jxr_string">": "</span> + <span class="jxr_string">"windowText: "</span> + cc.windowText);
<a class="jxr_linenumber" name="319" href="#319">319</a>                 LOG.debug(clientSocketAddress + <span class="jxr_string">": "</span> + <span class="jxr_string">"dataSource: "</span> + dataSource);
<a class="jxr_linenumber" name="320" href="#320">320</a>                 LOG.debug(clientSocketAddress + <span class="jxr_string">": "</span> + <span class="jxr_string">"client computer name:ipaddress:port "</span> + cc.computerName+ <span class="jxr_string">":"</span> + clientSocketAddress);
<a class="jxr_linenumber" name="321" href="#321">321</a>             }
<a class="jxr_linenumber" name="322" href="#322">322</a> 
<a class="jxr_linenumber" name="323" href="#323">323</a>             userSid = <strong class="jxr_keyword">new</strong> String(cc.user.userName).getBytes(<span class="jxr_string">"UTF-8"</span>);
<a class="jxr_linenumber" name="324" href="#324">324</a> 
<a class="jxr_linenumber" name="325" href="#325">325</a>             isoMapping = 0;
<a class="jxr_linenumber" name="326" href="#326">326</a>             StringTokenizer st = <strong class="jxr_keyword">new</strong> StringTokenizer(serverHostName, <span class="jxr_string">"."</span>);
<a class="jxr_linenumber" name="327" href="#327">327</a>             <strong class="jxr_keyword">if</strong>(st.hasMoreTokens()) {
<a class="jxr_linenumber" name="328" href="#328">328</a>                 clusterName = String.format(<span class="jxr_string">"%s_%s"</span>, st.nextToken(), cc.client);
<a class="jxr_linenumber" name="329" href="#329">329</a>             }
<a class="jxr_linenumber" name="330" href="#330">330</a>             <strong class="jxr_keyword">else</strong> {
<a class="jxr_linenumber" name="331" href="#331">331</a>                 clusterName = String.format(<span class="jxr_string">"%s_%s"</span>, serverHostName, cc.client);
<a class="jxr_linenumber" name="332" href="#332">332</a>             }
<a class="jxr_linenumber" name="333" href="#333">333</a>             <strong class="jxr_keyword">if</strong>(LOG.isDebugEnabled())
<a class="jxr_linenumber" name="334" href="#334">334</a>                 LOG.debug(clientSocketAddress + <span class="jxr_string">": "</span> + <span class="jxr_string">"clusterName "</span> + clusterName );
<a class="jxr_linenumber" name="335" href="#335">335</a>         }
<a class="jxr_linenumber" name="336" href="#336">336</a>     <strong class="jxr_keyword">return</strong> replyException;
<a class="jxr_linenumber" name="337" href="#337">337</a>     }
<a class="jxr_linenumber" name="338" href="#338">338</a> }
</pre>
<hr/><div id="footer">This page was automatically generated by <a href="http://maven.apache.org/">Maven</a></div></body>
</html>

