<!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>ServerApiSqlConnect xref</title>
<link type="text/css" rel="stylesheet" href="../../../../../stylesheet.css" />
</head>
<body>
<div id="overview"><a href="../../../../../../apidocs/org/trafodion/dcs/servermt/serverHandler/ServerApiSqlConnect.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.servermt.serverHandler;
<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.*;
<a class="jxr_linenumber" name="26" href="#26">26</a>  <strong class="jxr_keyword">import</strong> java.net.*;
<a class="jxr_linenumber" name="27" href="#27">27</a>  <strong class="jxr_keyword">import</strong> java.io.*;
<a class="jxr_linenumber" name="28" href="#28">28</a>  <strong class="jxr_keyword">import</strong> java.nio.*;
<a class="jxr_linenumber" name="29" href="#29">29</a>  <strong class="jxr_keyword">import</strong> java.nio.channels.*;
<a class="jxr_linenumber" name="30" href="#30">30</a>  <strong class="jxr_keyword">import</strong> java.nio.channels.spi.*;
<a class="jxr_linenumber" name="31" href="#31">31</a>  <strong class="jxr_keyword">import</strong> java.util.Properties;
<a class="jxr_linenumber" name="32" href="#32">32</a>  
<a class="jxr_linenumber" name="33" href="#33">33</a>  <strong class="jxr_keyword">import</strong> org.trafodion.dcs.Constants;
<a class="jxr_linenumber" name="34" href="#34">34</a>  <strong class="jxr_keyword">import</strong> org.trafodion.dcs.util.*;
<a class="jxr_linenumber" name="35" href="#35">35</a>  <strong class="jxr_keyword">import</strong> org.trafodion.dcs.servermt.ServerConstants;
<a class="jxr_linenumber" name="36" href="#36">36</a>  <strong class="jxr_keyword">import</strong> org.trafodion.dcs.servermt.ServerUtils;
<a class="jxr_linenumber" name="37" href="#37">37</a>  <strong class="jxr_keyword">import</strong> org.trafodion.dcs.servermt.serverDriverInputOutput.*;
<a class="jxr_linenumber" name="38" href="#38">38</a>  <strong class="jxr_keyword">import</strong> org.trafodion.dcs.servermt.serverSql.*;
<a class="jxr_linenumber" name="39" href="#39">39</a>  
<a class="jxr_linenumber" name="40" href="#40">40</a>  <strong class="jxr_keyword">import</strong> org.apache.commons.logging.Log;
<a class="jxr_linenumber" name="41" href="#41">41</a>  <strong class="jxr_keyword">import</strong> org.apache.commons.logging.LogFactory;
<a class="jxr_linenumber" name="42" href="#42">42</a>  <strong class="jxr_keyword">import</strong> org.apache.zookeeper.ZooDefs;
<a class="jxr_linenumber" name="43" href="#43">43</a>  <strong class="jxr_keyword">import</strong> org.apache.zookeeper.data.Stat;
<a class="jxr_linenumber" name="44" href="#44">44</a>  <strong class="jxr_keyword">import</strong> org.apache.zookeeper.CreateMode;
<a class="jxr_linenumber" name="45" href="#45">45</a>  <strong class="jxr_keyword">import</strong> org.apache.zookeeper.ZooKeeper;
<a class="jxr_linenumber" name="46" href="#46">46</a>  <strong class="jxr_keyword">import</strong> org.trafodion.dcs.zookeeper.ZkClient;
<a class="jxr_linenumber" name="47" href="#47">47</a>  
<a class="jxr_linenumber" name="48" href="#48">48</a>  <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">class</strong> <a href="../../../../../org/trafodion/dcs/servermt/serverHandler/ServerApiSqlConnect.html">ServerApiSqlConnect</a> {
<a class="jxr_linenumber" name="49" href="#49">49</a>      <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">int</strong> odbc_SQLSvc_InitializeDialogue_ParamError_exn_ = 1;
<a class="jxr_linenumber" name="50" href="#50">50</a>      <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">int</strong> odbc_SQLSvc_InitializeDialogue_InvalidConnection_exn_ = 2;
<a class="jxr_linenumber" name="51" href="#51">51</a>      <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">int</strong> odbc_SQLSvc_InitializeDialogue_SQLError_exn_ = 3;
<a class="jxr_linenumber" name="52" href="#52">52</a>      <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">int</strong> odbc_SQLSvc_InitializeDialogue_SQLInvalidHandle_exn_ = 4;
<a class="jxr_linenumber" name="53" href="#53">53</a>      <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">int</strong> odbc_SQLSvc_InitializeDialogue_SQLNeedData_exn_ = 5;
<a class="jxr_linenumber" name="54" href="#54">54</a>      <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">int</strong> odbc_SQLSvc_InitializeDialogue_InvalidUser_exn_ = 6;
<a class="jxr_linenumber" name="55" href="#55">55</a>  
<a class="jxr_linenumber" name="56" href="#56">56</a>      <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong>  <strong class="jxr_keyword">final</strong> Log LOG = LogFactory.getLog(ServerApiSqlConnect.<strong class="jxr_keyword">class</strong>);
<a class="jxr_linenumber" name="57" href="#57">57</a>      <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">int</strong> instance;
<a class="jxr_linenumber" name="58" href="#58">58</a>      <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">int</strong> serverThread;
<a class="jxr_linenumber" name="59" href="#59">59</a>      <strong class="jxr_keyword">private</strong> String serverWorkerName;
<a class="jxr_linenumber" name="60" href="#60">60</a>      <strong class="jxr_keyword">private</strong> <a href="../../../../../org/trafodion/dcs/servermt/serverHandler/ClientData.html">ClientData</a> clientData;
<a class="jxr_linenumber" name="61" href="#61">61</a>  <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="62" href="#62">62</a>      <strong class="jxr_keyword">private</strong> String threadRegisteredPath = <span class="jxr_string">""</span>;
<a class="jxr_linenumber" name="63" href="#63">63</a>      <strong class="jxr_keyword">private</strong> String threadRegisteredData = <span class="jxr_string">""</span>;
<a class="jxr_linenumber" name="64" href="#64">64</a>      <strong class="jxr_keyword">private</strong> byte[] data = <strong class="jxr_keyword">null</strong>;
<a class="jxr_linenumber" name="65" href="#65">65</a>  <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="66" href="#66">66</a>      <strong class="jxr_keyword">private</strong> <a href="../../../../../org/trafodion/dcs/util/JdbcT2Util.html">ConnectionContext</a> connectionContext;
<a class="jxr_linenumber" name="67" href="#67">67</a>      <strong class="jxr_keyword">private</strong> <a href="../../../../../org/trafodion/dcs/servermt/serverDriverInputOutput/UserDesc.html">UserDesc</a> userDesc;
<a class="jxr_linenumber" name="68" href="#68">68</a>      <strong class="jxr_keyword">private</strong> byte[] cert;
<a class="jxr_linenumber" name="69" href="#69">69</a>  <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="70" href="#70">70</a>      <strong class="jxr_keyword">private</strong> <a href="../../../../../org/trafodion/dcs/servermt/serverDriverInputOutput/ServerException.html">ServerException</a> serverException;
<a class="jxr_linenumber" name="71" href="#71">71</a>      <strong class="jxr_keyword">private</strong> <a href="../../../../../org/trafodion/dcs/servermt/serverDriverInputOutput/OutConnectionContext.html">OutConnectionContext</a> outConnectionContext;
<a class="jxr_linenumber" name="72" href="#72">72</a>      <strong class="jxr_keyword">private</strong> <a href="../../../../../org/trafodion/dcs/servermt/serverSql/TrafConnection.html">TrafConnection</a> trafConnection;
<a class="jxr_linenumber" name="73" href="#73">73</a>      
<a class="jxr_linenumber" name="74" href="#74">74</a>      <a href="../../../../../org/trafodion/dcs/servermt/serverHandler/ServerApiSqlConnect.html">ServerApiSqlConnect</a>(<strong class="jxr_keyword">int</strong> instance, <strong class="jxr_keyword">int</strong> serverThread, byte[] cert) { 
<a class="jxr_linenumber" name="75" href="#75">75</a>          <strong class="jxr_keyword">this</strong>.instance = instance;
<a class="jxr_linenumber" name="76" href="#76">76</a>          <strong class="jxr_keyword">this</strong>.serverThread = serverThread;
<a class="jxr_linenumber" name="77" href="#77">77</a>          serverWorkerName = ServerConstants.SERVER_WORKER_NAME + <span class="jxr_string">"_"</span> + instance + <span class="jxr_string">"_"</span> + serverThread;
<a class="jxr_linenumber" name="78" href="#78">78</a>          <strong class="jxr_keyword">this</strong>.cert = cert;
<a class="jxr_linenumber" name="79" href="#79">79</a>      }
<a class="jxr_linenumber" name="80" href="#80">80</a>      <strong class="jxr_keyword">void</strong> init (){
<a class="jxr_linenumber" name="81" href="#81">81</a>          connectionContext = <strong class="jxr_keyword">new</strong> <a href="../../../../../org/trafodion/dcs/util/JdbcT2Util.html">ConnectionContext</a>();
<a class="jxr_linenumber" name="82" href="#82">82</a>          userDesc = <strong class="jxr_keyword">new</strong> <a href="../../../../../org/trafodion/dcs/servermt/serverDriverInputOutput/UserDesc.html">UserDesc</a>();
<a class="jxr_linenumber" name="83" href="#83">83</a>          serverException = <strong class="jxr_keyword">new</strong> <a href="../../../../../org/trafodion/dcs/servermt/serverDriverInputOutput/ServerException.html">ServerException</a>();
<a class="jxr_linenumber" name="84" href="#84">84</a>          outConnectionContext = <strong class="jxr_keyword">new</strong> <a href="../../../../../org/trafodion/dcs/servermt/serverDriverInputOutput/OutConnectionContext.html">OutConnectionContext</a>(cert);
<a class="jxr_linenumber" name="85" href="#85">85</a>          trafConnection = <strong class="jxr_keyword">null</strong>;
<a class="jxr_linenumber" name="86" href="#86">86</a>      }
<a class="jxr_linenumber" name="87" href="#87">87</a>      <strong class="jxr_keyword">void</strong> reset(){
<a class="jxr_linenumber" name="88" href="#88">88</a>          connectionContext = <strong class="jxr_keyword">null</strong>;
<a class="jxr_linenumber" name="89" href="#89">89</a>          userDesc = <strong class="jxr_keyword">null</strong>;
<a class="jxr_linenumber" name="90" href="#90">90</a>          serverException = <strong class="jxr_keyword">null</strong>;
<a class="jxr_linenumber" name="91" href="#91">91</a>          outConnectionContext = <strong class="jxr_keyword">null</strong>;
<a class="jxr_linenumber" name="92" href="#92">92</a>      }
<a class="jxr_linenumber" name="93" href="#93">93</a>      <a href="../../../../../org/trafodion/dcs/servermt/serverHandler/ClientData.html">ClientData</a> processApi(<a href="../../../../../org/trafodion/dcs/servermt/serverHandler/ClientData.html">ClientData</a> clientData) {  
<a class="jxr_linenumber" name="94" href="#94">94</a>          <strong class="jxr_keyword">this</strong>.clientData = clientData;
<a class="jxr_linenumber" name="95" href="#95">95</a>          init();
<a class="jxr_linenumber" name="96" href="#96">96</a>  <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="97" href="#97">97</a>  <em class="jxr_comment">// ==============process input ByteBuffer===========================</em>
<a class="jxr_linenumber" name="98" href="#98">98</a>  <em class="jxr_comment">// hdr + userDesc + connectionContext</em>
<a class="jxr_linenumber" name="99" href="#99">99</a>  <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="100" href="#100">100</a>         ByteBuffer bbHeader = clientData.bbHeader;
<a class="jxr_linenumber" name="101" href="#101">101</a>         ByteBuffer bbBody = clientData.bbBody;
<a class="jxr_linenumber" name="102" href="#102">102</a>         <a href="../../../../../org/trafodion/dcs/servermt/serverDriverInputOutput/Header.html">Header</a> hdr = clientData.hdr;
<a class="jxr_linenumber" name="103" href="#103">103</a> 
<a class="jxr_linenumber" name="104" href="#104">104</a>         bbHeader.flip();
<a class="jxr_linenumber" name="105" href="#105">105</a>         bbBody.flip();
<a class="jxr_linenumber" name="106" href="#106">106</a>         
<a class="jxr_linenumber" name="107" href="#107">107</a>         <strong class="jxr_keyword">try</strong> {
<a class="jxr_linenumber" name="108" href="#108">108</a> 
<a class="jxr_linenumber" name="109" href="#109">109</a>             hdr.extractFromByteArray(bbHeader);
<a class="jxr_linenumber" name="110" href="#110">110</a>             userDesc.extractFromByteBuffer(bbBody);
<a class="jxr_linenumber" name="111" href="#111">111</a>             connectionContext.extractFromByteBuffer(bbBody);
<a class="jxr_linenumber" name="112" href="#112">112</a> <em class="jxr_comment">//            </em>
<a class="jxr_linenumber" name="113" href="#113">113</a> <em class="jxr_comment">//=====================Display input data=========================================</em>
<a class="jxr_linenumber" name="114" href="#114">114</a> <em class="jxr_comment">//            </em>
<a class="jxr_linenumber" name="115" href="#115">115</a>             <strong class="jxr_keyword">if</strong>(LOG.isDebugEnabled())
<a class="jxr_linenumber" name="116" href="#116">116</a>                 LOG.debug(serverWorkerName + <span class="jxr_string">". threadRegisteredData :"</span> + clientData.getThreadRegisteredData());
<a class="jxr_linenumber" name="117" href="#117">117</a>             
<a class="jxr_linenumber" name="118" href="#118">118</a>             String[] st = clientData.getThreadRegisteredData().split(<span class="jxr_string">":"</span>);
<a class="jxr_linenumber" name="119" href="#119">119</a>             clientData.setDialogueId(Integer.parseInt(st[2]));
<a class="jxr_linenumber" name="120" href="#120">120</a>             clientData.setNodeNumber(Integer.parseInt(st[3]));
<a class="jxr_linenumber" name="121" href="#121">121</a>             clientData.setProcessId(Integer.parseInt(st[4]));
<a class="jxr_linenumber" name="122" href="#122">122</a>             clientData.setProcessName(st[5]);
<a class="jxr_linenumber" name="123" href="#123">123</a>             clientData.setHostName(st[6]);
<a class="jxr_linenumber" name="124" href="#124">124</a>             clientData.setPortNumber(Integer.parseInt(st[7]));
<a class="jxr_linenumber" name="125" href="#125">125</a>             clientData.setClientHostName(st[8]);
<a class="jxr_linenumber" name="126" href="#126">126</a>             clientData.setClientIpAddress(st[9]);
<a class="jxr_linenumber" name="127" href="#127">127</a>             clientData.setClientPortNumber(Integer.parseInt(st[10]));
<a class="jxr_linenumber" name="128" href="#128">128</a>             clientData.setClientApplication(st[11]);
<a class="jxr_linenumber" name="129" href="#129">129</a> 
<a class="jxr_linenumber" name="130" href="#130">130</a>             <strong class="jxr_keyword">if</strong>(LOG.isDebugEnabled()){
<a class="jxr_linenumber" name="131" href="#131">131</a>                 LOG.debug(serverWorkerName + <span class="jxr_string">". dialogueId :"</span> + clientData.getDialogueId());
<a class="jxr_linenumber" name="132" href="#132">132</a>                 LOG.debug(serverWorkerName + <span class="jxr_string">". nodeNumber :"</span> + clientData.getNodeNumber());
<a class="jxr_linenumber" name="133" href="#133">133</a>                 LOG.debug(serverWorkerName + <span class="jxr_string">". processId :"</span> + clientData.getProcessId());
<a class="jxr_linenumber" name="134" href="#134">134</a>                 LOG.debug(serverWorkerName + <span class="jxr_string">". processName :"</span> + clientData.getProcessName());
<a class="jxr_linenumber" name="135" href="#135">135</a>                 LOG.debug(serverWorkerName + <span class="jxr_string">". hostName :"</span> + clientData.getHostName());
<a class="jxr_linenumber" name="136" href="#136">136</a>                 LOG.debug(serverWorkerName + <span class="jxr_string">". portNumber :"</span> + clientData.getPortNumber());
<a class="jxr_linenumber" name="137" href="#137">137</a>                 LOG.debug(serverWorkerName + <span class="jxr_string">". clientHostName :"</span> + clientData.getClientHostName());
<a class="jxr_linenumber" name="138" href="#138">138</a>                 LOG.debug(serverWorkerName + <span class="jxr_string">". clientIpAddress :"</span> + clientData.getClientIpAddress());
<a class="jxr_linenumber" name="139" href="#139">139</a>                 LOG.debug(serverWorkerName + <span class="jxr_string">". clientPortNumber :"</span> + clientData.getClientPortNumber());
<a class="jxr_linenumber" name="140" href="#140">140</a>                 LOG.debug(serverWorkerName + <span class="jxr_string">". clientApplication :"</span> + clientData.getClientApplication());
<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> (connectionContext.getDialogueId() &lt; 1 ) {
<a class="jxr_linenumber" name="143" href="#143">143</a>                 <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> SQLException(serverWorkerName + <span class="jxr_string">". Wrong dialogueId :"</span> + connectionContext.getDialogueId());
<a class="jxr_linenumber" name="144" href="#144">144</a>             }
<a class="jxr_linenumber" name="145" href="#145">145</a>             <strong class="jxr_keyword">if</strong> (connectionContext.getDialogueId() != clientData.getDialogueId() ) {
<a class="jxr_linenumber" name="146" href="#146">146</a>                 <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> SQLException(serverWorkerName + <span class="jxr_string">". Wrong dialogueId sent by the Client [sent/expected] : ["</span> + connectionContext.getDialogueId() + <span class="jxr_string">"/"</span> + clientData.getDialogueId() + <span class="jxr_string">"]"</span>);
<a class="jxr_linenumber" name="147" href="#147">147</a>             }
<a class="jxr_linenumber" name="148" href="#148">148</a> <em class="jxr_comment">//=====================Process SqlConnect===========================</em>
<a class="jxr_linenumber" name="149" href="#149">149</a> 
<a class="jxr_linenumber" name="150" href="#150">150</a>             <strong class="jxr_keyword">try</strong> {
<a class="jxr_linenumber" name="151" href="#151">151</a>                 trafConnection = <strong class="jxr_keyword">new</strong> <a href="../../../../../org/trafodion/dcs/servermt/serverSql/TrafConnection.html">TrafConnection</a>(serverWorkerName, clientData, connectionContext);
<a class="jxr_linenumber" name="152" href="#152">152</a> 
<a class="jxr_linenumber" name="153" href="#153">153</a>                 outConnectionContext.getVersionList().getList()[0].setComponentId((<strong class="jxr_keyword">short</strong>)4);       <em class="jxr_comment">//ODBC_SRVR_COMPONENT</em>
<a class="jxr_linenumber" name="154" href="#154">154</a>                 outConnectionContext.getVersionList().getList()[0].setMajorVersion((<strong class="jxr_keyword">short</strong>)3);
<a class="jxr_linenumber" name="155" href="#155">155</a>                 outConnectionContext.getVersionList().getList()[0].setMinorVersion((<strong class="jxr_keyword">short</strong>)5);
<a class="jxr_linenumber" name="156" href="#156">156</a>                 outConnectionContext.getVersionList().getList()[0].setBuildId(1);
<a class="jxr_linenumber" name="157" href="#157">157</a>                 
<a class="jxr_linenumber" name="158" href="#158">158</a>                 outConnectionContext.getVersionList().getList()[1].setComponentId((<strong class="jxr_keyword">short</strong>)3);       <em class="jxr_comment">//SQL_COMPONENT</em>
<a class="jxr_linenumber" name="159" href="#159">159</a>                 outConnectionContext.getVersionList().getList()[1].setMajorVersion((<strong class="jxr_keyword">short</strong>)1);
<a class="jxr_linenumber" name="160" href="#160">160</a>                 outConnectionContext.getVersionList().getList()[1].setMinorVersion((<strong class="jxr_keyword">short</strong>)1);
<a class="jxr_linenumber" name="161" href="#161">161</a>                 outConnectionContext.getVersionList().getList()[1].setBuildId(1);
<a class="jxr_linenumber" name="162" href="#162">162</a>                 
<a class="jxr_linenumber" name="163" href="#163">163</a>                 outConnectionContext.setNodeId((<strong class="jxr_keyword">short</strong>)1);
<a class="jxr_linenumber" name="164" href="#164">164</a>                 outConnectionContext.setProcessId(Integer.valueOf(ServerUtils.processId()));
<a class="jxr_linenumber" name="165" href="#165">165</a>                 outConnectionContext.setComputerName(clientData.getHostName());
<a class="jxr_linenumber" name="166" href="#166">166</a>                 outConnectionContext.setCatalog(<span class="jxr_string">""</span>);
<a class="jxr_linenumber" name="167" href="#167">167</a>                 outConnectionContext.setSchema(<span class="jxr_string">""</span>);
<a class="jxr_linenumber" name="168" href="#168">168</a> 
<a class="jxr_linenumber" name="169" href="#169">169</a>                 outConnectionContext.setOptionFlags1(ServerConstants.OUTCONTEXT_OPT1_ENFORCE_ISO88591 | ServerConstants.OUTCONTEXT_OPT1_DOWNLOAD_CERTIFICATE);
<a class="jxr_linenumber" name="170" href="#170">170</a>                 outConnectionContext.setOptionFlags2(0);
<a class="jxr_linenumber" name="171" href="#171">171</a> 
<a class="jxr_linenumber" name="172" href="#172">172</a>                 outConnectionContext.setRoleName(<span class="jxr_string">""</span>);
<a class="jxr_linenumber" name="173" href="#173">173</a>                
<a class="jxr_linenumber" name="174" href="#174">174</a>             } <strong class="jxr_keyword">catch</strong> (SQLException ex){
<a class="jxr_linenumber" name="175" href="#175">175</a>                 LOG.error(serverWorkerName + <span class="jxr_string">". ServerApiSqlConnect.SQLException :"</span> + ex);
<a class="jxr_linenumber" name="176" href="#176">176</a>                 serverException.setServerException (odbc_SQLSvc_InitializeDialogue_SQLError_exn_, 0, ex);                
<a class="jxr_linenumber" name="177" href="#177">177</a>             }
<a class="jxr_linenumber" name="178" href="#178">178</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="179" href="#179">179</a> <em class="jxr_comment">//===================calculate length of output ByteBuffer========================</em>
<a class="jxr_linenumber" name="180" href="#180">180</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="181" href="#181">181</a>             bbHeader.clear();
<a class="jxr_linenumber" name="182" href="#182">182</a>             bbBody.clear();
<a class="jxr_linenumber" name="183" href="#183">183</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="184" href="#184">184</a> <em class="jxr_comment">// check if ByteBuffer is big enough for serverException + outConnectionContext</em>
<a class="jxr_linenumber" name="185" href="#185">185</a> <em class="jxr_comment">//        </em>
<a class="jxr_linenumber" name="186" href="#186">186</a>             <strong class="jxr_keyword">int</strong> dataLength = serverException.lengthOfData();
<a class="jxr_linenumber" name="187" href="#187">187</a>             dataLength += outConnectionContext.lengthOfData();
<a class="jxr_linenumber" name="188" href="#188">188</a>             <strong class="jxr_keyword">int</strong> availableBuffer = bbBody.capacity() - bbBody.position();
<a class="jxr_linenumber" name="189" href="#189">189</a>             
<a class="jxr_linenumber" name="190" href="#190">190</a>             <strong class="jxr_keyword">if</strong>(LOG.isDebugEnabled())
<a class="jxr_linenumber" name="191" href="#191">191</a>                 LOG.debug(<span class="jxr_string">"dataLength :"</span> + dataLength + <span class="jxr_string">" availableBuffer :"</span> + availableBuffer);
<a class="jxr_linenumber" name="192" href="#192">192</a>         
<a class="jxr_linenumber" name="193" href="#193">193</a>             <strong class="jxr_keyword">if</strong> (dataLength &gt; availableBuffer ) {
<a class="jxr_linenumber" name="194" href="#194">194</a>                 bbBody = ByteBufferUtils.increaseCapacity(bbBody, dataLength &gt; ServerConstants.BODY_SIZE ? dataLength : ServerConstants.BODY_SIZE );
<a class="jxr_linenumber" name="195" href="#195">195</a>                 ByteBufferUtils.printBBInfo(bbBody);
<a class="jxr_linenumber" name="196" href="#196">196</a>                 clientData.bbBuf[1] = bbBody;
<a class="jxr_linenumber" name="197" href="#197">197</a>             }
<a class="jxr_linenumber" name="198" href="#198">198</a> <em class="jxr_comment">//===================== build output ==============================================</em>
<a class="jxr_linenumber" name="199" href="#199">199</a>             serverException.insertIntoByteBuffer(bbBody);
<a class="jxr_linenumber" name="200" href="#200">200</a>             outConnectionContext.insertIntoByteBuffer(bbBody);
<a class="jxr_linenumber" name="201" href="#201">201</a>             bbBody.flip();
<a class="jxr_linenumber" name="202" href="#202">202</a> <em class="jxr_comment">//=========================Update header================================</em>
<a class="jxr_linenumber" name="203" href="#203">203</a>             hdr.setTotalLength(bbBody.limit());
<a class="jxr_linenumber" name="204" href="#204">204</a>             hdr.insertIntoByteBuffer(bbHeader);
<a class="jxr_linenumber" name="205" href="#205">205</a>             bbHeader.flip();
<a class="jxr_linenumber" name="206" href="#206">206</a> 
<a class="jxr_linenumber" name="207" href="#207">207</a>             clientData.setByteBufferArray(bbHeader, bbBody);
<a class="jxr_linenumber" name="208" href="#208">208</a>             clientData.setHdr(hdr);
<a class="jxr_linenumber" name="209" href="#209">209</a>             clientData.setRequest(ServerConstants.REQUST_WRITE_READ);
<a class="jxr_linenumber" name="210" href="#210">210</a>             clientData.setTrafConnection(trafConnection);
<a class="jxr_linenumber" name="211" href="#211">211</a>  
<a class="jxr_linenumber" name="212" href="#212">212</a>         } <strong class="jxr_keyword">catch</strong> (SQLException se){
<a class="jxr_linenumber" name="213" href="#213">213</a>             LOG.error(serverWorkerName + <span class="jxr_string">". Connect.SQLException :"</span> + se);
<a class="jxr_linenumber" name="214" href="#214">214</a>             clientData.setRequestAndDisconnect();
<a class="jxr_linenumber" name="215" href="#215">215</a>         } <strong class="jxr_keyword">catch</strong> (UnsupportedEncodingException ue){
<a class="jxr_linenumber" name="216" href="#216">216</a>             LOG.error(serverWorkerName + <span class="jxr_string">". Connect.UnsupportedEncodingException :"</span> + ue);
<a class="jxr_linenumber" name="217" href="#217">217</a>             clientData.setRequestAndDisconnect();
<a class="jxr_linenumber" name="218" href="#218">218</a>         } <strong class="jxr_keyword">catch</strong> (Exception e){
<a class="jxr_linenumber" name="219" href="#219">219</a>             LOG.error(serverWorkerName + <span class="jxr_string">". Connect.Exception :"</span> + e);
<a class="jxr_linenumber" name="220" href="#220">220</a>             clientData.setRequestAndDisconnect();
<a class="jxr_linenumber" name="221" href="#221">221</a>         }
<a class="jxr_linenumber" name="222" href="#222">222</a>         reset();
<a class="jxr_linenumber" name="223" href="#223">223</a>         <strong class="jxr_keyword">return</strong> clientData;
<a class="jxr_linenumber" name="224" href="#224">224</a>     }
<a class="jxr_linenumber" name="225" href="#225">225</a> }
</pre>
<hr/><div id="footer">This page was automatically generated by <a href="http://maven.apache.org/">Maven</a></div></body>
</html>

