<!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>/home/robert/logging-chainsaw/src/main/java/org/apache/log4j/db/CustomSQLDBReceiver.java xref</title>
<link type="text/css" rel="stylesheet" href="../stylesheet.css" />
</head>
<body>
<pre>
<a class="jxr_linenumber" name="L1" href="#L1">1</a>   <em class="jxr_comment">///*</em>
<a class="jxr_linenumber" name="L2" href="#L2">2</a>   <em class="jxr_comment">// * Licensed to the Apache Software Foundation (ASF) under one or more</em>
<a class="jxr_linenumber" name="L3" href="#L3">3</a>   <em class="jxr_comment">// * contributor license agreements.  See the NOTICE file distributed with</em>
<a class="jxr_linenumber" name="L4" href="#L4">4</a>   <em class="jxr_comment">// * this work for additional information regarding copyright ownership.</em>
<a class="jxr_linenumber" name="L5" href="#L5">5</a>   <em class="jxr_comment">// * The ASF licenses this file to You under the Apache License, Version 2.0</em>
<a class="jxr_linenumber" name="L6" href="#L6">6</a>   <em class="jxr_comment">// * (the "License"); you may not use this file except in compliance with</em>
<a class="jxr_linenumber" name="L7" href="#L7">7</a>   <em class="jxr_comment">// * the License.  You may obtain a copy of the License at</em>
<a class="jxr_linenumber" name="L8" href="#L8">8</a>   <em class="jxr_comment">// *</em>
<a class="jxr_linenumber" name="L9" href="#L9">9</a>   <em class="jxr_comment">// *      http://www.apache.org/licenses/LICENSE-2.0</em>
<a class="jxr_linenumber" name="L10" href="#L10">10</a>  <em class="jxr_comment">// *</em>
<a class="jxr_linenumber" name="L11" href="#L11">11</a>  <em class="jxr_comment">// * Unless required by applicable law or agreed to in writing, software</em>
<a class="jxr_linenumber" name="L12" href="#L12">12</a>  <em class="jxr_comment">// * distributed under the License is distributed on an "AS IS" BASIS,</em>
<a class="jxr_linenumber" name="L13" href="#L13">13</a>  <em class="jxr_comment">// * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</em>
<a class="jxr_linenumber" name="L14" href="#L14">14</a>  <em class="jxr_comment">// * See the License for the specific language governing permissions and</em>
<a class="jxr_linenumber" name="L15" href="#L15">15</a>  <em class="jxr_comment">// * limitations under the License.</em>
<a class="jxr_linenumber" name="L16" href="#L16">16</a>  <em class="jxr_comment">// */</em>
<a class="jxr_linenumber" name="L17" href="#L17">17</a>  <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L18" href="#L18">18</a>  <em class="jxr_comment">//package org.apache.log4j.db;</em>
<a class="jxr_linenumber" name="L19" href="#L19">19</a>  <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L20" href="#L20">20</a>  <em class="jxr_comment">//import org.apache.log4j.Level;</em>
<a class="jxr_linenumber" name="L21" href="#L21">21</a>  <em class="jxr_comment">//import org.apache.log4j.Logger;</em>
<a class="jxr_linenumber" name="L22" href="#L22">22</a>  <em class="jxr_comment">//import org.apache.log4j.plugins.Pauseable;</em>
<a class="jxr_linenumber" name="L23" href="#L23">23</a>  <em class="jxr_comment">//import org.apache.log4j.plugins.Receiver;</em>
<a class="jxr_linenumber" name="L24" href="#L24">24</a>  <em class="jxr_comment">//import org.apache.log4j.scheduler.Job;</em>
<a class="jxr_linenumber" name="L25" href="#L25">25</a>  <em class="jxr_comment">//import org.apache.log4j.scheduler.Scheduler;</em>
<a class="jxr_linenumber" name="L26" href="#L26">26</a>  <em class="jxr_comment">//import org.apache.log4j.spi.LocationInfo;</em>
<a class="jxr_linenumber" name="L27" href="#L27">27</a>  <em class="jxr_comment">//import org.apache.log4j.spi.LoggerRepositoryEx;</em>
<a class="jxr_linenumber" name="L28" href="#L28">28</a>  <em class="jxr_comment">//import org.apache.log4j.spi.LoggingEvent;</em>
<a class="jxr_linenumber" name="L29" href="#L29">29</a>  <em class="jxr_comment">//import org.apache.log4j.spi.ThrowableInformation;</em>
<a class="jxr_linenumber" name="L30" href="#L30">30</a>  <em class="jxr_comment">//import org.apache.log4j.xml.DOMConfigurator;</em>
<a class="jxr_linenumber" name="L31" href="#L31">31</a>  <em class="jxr_comment">//import org.apache.log4j.xml.UnrecognizedElementHandler;</em>
<a class="jxr_linenumber" name="L32" href="#L32">32</a>  <em class="jxr_comment">//import org.w3c.dom.Element;</em>
<a class="jxr_linenumber" name="L33" href="#L33">33</a>  <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L34" href="#L34">34</a>  <em class="jxr_comment">//import java.sql.Connection;</em>
<a class="jxr_linenumber" name="L35" href="#L35">35</a>  <em class="jxr_comment">//import java.sql.ResultSet;</em>
<a class="jxr_linenumber" name="L36" href="#L36">36</a>  <em class="jxr_comment">//import java.sql.SQLException;</em>
<a class="jxr_linenumber" name="L37" href="#L37">37</a>  <em class="jxr_comment">//import java.sql.Statement;</em>
<a class="jxr_linenumber" name="L38" href="#L38">38</a>  <em class="jxr_comment">//import java.util.Hashtable;</em>
<a class="jxr_linenumber" name="L39" href="#L39">39</a>  <em class="jxr_comment">//import java.util.Properties;</em>
<a class="jxr_linenumber" name="L40" href="#L40">40</a>  <em class="jxr_comment">//import java.util.StringTokenizer;</em>
<a class="jxr_linenumber" name="L41" href="#L41">41</a>  <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L42" href="#L42">42</a>  <em class="jxr_comment">///**</em>
<a class="jxr_linenumber" name="L43" href="#L43">43</a>  <em class="jxr_comment">// * Converts log data stored in a database into LoggingEvents.</em>
<a class="jxr_linenumber" name="L44" href="#L44">44</a>  <em class="jxr_comment">// * &lt;p&gt;</em>
<a class="jxr_linenumber" name="L45" href="#L45">45</a>  <em class="jxr_comment">// * &lt;b&gt;NOTE:&lt;/b&gt; This receiver cannot yet be created through Chainsaw's receiver panel.</em>
<a class="jxr_linenumber" name="L46" href="#L46">46</a>  <em class="jxr_comment">// * It must be created through an XML configuration file.</em>
<a class="jxr_linenumber" name="L47" href="#L47">47</a>  <em class="jxr_comment">// * &lt;p&gt;</em>
<a class="jxr_linenumber" name="L48" href="#L48">48</a>  <em class="jxr_comment">// * This receiver supports database configuration via ConnectionSource, in the</em>
<a class="jxr_linenumber" name="L49" href="#L49">49</a>  <em class="jxr_comment">// * org.apache.log4j.db package: DriverManagerConnectionSource,</em>
<a class="jxr_linenumber" name="L50" href="#L50">50</a>  <em class="jxr_comment">// * DataSourceConnectionSource, JNDIConnectionSource</em>
<a class="jxr_linenumber" name="L51" href="#L51">51</a>  <em class="jxr_comment">// * &lt;p&gt;</em>
<a class="jxr_linenumber" name="L52" href="#L52">52</a>  <em class="jxr_comment">// * This database receiver differs from DBReceiver in that this receiver relies</em>
<a class="jxr_linenumber" name="L53" href="#L53">53</a>  <em class="jxr_comment">// * on custom SQL to retrieve logging event data, where DBReceiver requires the</em>
<a class="jxr_linenumber" name="L54" href="#L54">54</a>  <em class="jxr_comment">// * use of a log4j-defined schema.</em>
<a class="jxr_linenumber" name="L55" href="#L55">55</a>  <em class="jxr_comment">// * &lt;p&gt;</em>
<a class="jxr_linenumber" name="L56" href="#L56">56</a>  <em class="jxr_comment">// * A 'refreshMillis' int parameter controls SQL execution. If 'refreshMillis' is</em>
<a class="jxr_linenumber" name="L57" href="#L57">57</a>  <em class="jxr_comment">// * zero (the default), the receiver will run only one time. If it is set to any</em>
<a class="jxr_linenumber" name="L58" href="#L58">58</a>  <em class="jxr_comment">// * other numeric value, the SQL will be executed on a recurring basis every</em>
<a class="jxr_linenumber" name="L59" href="#L59">59</a>  <em class="jxr_comment">// * 'refreshMillis' milliseconds.</em>
<a class="jxr_linenumber" name="L60" href="#L60">60</a>  <em class="jxr_comment">// * &lt;p&gt;</em>
<a class="jxr_linenumber" name="L61" href="#L61">61</a>  <em class="jxr_comment">// * The receiver closes the connection and acquires a new connection on each</em>
<a class="jxr_linenumber" name="L62" href="#L62">62</a>  <em class="jxr_comment">// * execution of the SQL (use pooled connections if possible).</em>
<a class="jxr_linenumber" name="L63" href="#L63">63</a>  <em class="jxr_comment">// * &lt;p&gt;</em>
<a class="jxr_linenumber" name="L64" href="#L64">64</a>  <em class="jxr_comment">// * If the SQL will be executing on a recurring basis, specify the IDField param -</em>
<a class="jxr_linenumber" name="L65" href="#L65">65</a>  <em class="jxr_comment">// * the column name holding the unique identifier (int) representing the logging</em>
<a class="jxr_linenumber" name="L66" href="#L66">66</a>  <em class="jxr_comment">// * event.</em>
<a class="jxr_linenumber" name="L67" href="#L67">67</a>  <em class="jxr_comment">// * &lt;p&gt;</em>
<a class="jxr_linenumber" name="L68" href="#L68">68</a>  <em class="jxr_comment">// * As events are retrieved, the column represented by IDField is examined and</em>
<a class="jxr_linenumber" name="L69" href="#L69">69</a>  <em class="jxr_comment">// * the largest value is held and used by the next execution of the SQL statement</em>
<a class="jxr_linenumber" name="L70" href="#L70">70</a>  <em class="jxr_comment">// * to avoid retrieving previously processed events.</em>
<a class="jxr_linenumber" name="L71" href="#L71">71</a>  <em class="jxr_comment">// * &lt;p&gt;</em>
<a class="jxr_linenumber" name="L72" href="#L72">72</a>  <em class="jxr_comment">// * As an example, the IDField references a 'COUNTER' (int, auto-increment,</em>
<a class="jxr_linenumber" name="L73" href="#L73">73</a>  <em class="jxr_comment">// * unique) column. The first execution of the SQL statement returns 500 rows,</em>
<a class="jxr_linenumber" name="L74" href="#L74">74</a>  <em class="jxr_comment">// * with a final value in the COUNTER field of 500.</em>
<a class="jxr_linenumber" name="L75" href="#L75">75</a>  <em class="jxr_comment">// * &lt;p&gt;</em>
<a class="jxr_linenumber" name="L76" href="#L76">76</a>  <em class="jxr_comment">// * The SQL statement is manipulated prior to the next execution, adding ' WHERE</em>
<a class="jxr_linenumber" name="L77" href="#L77">77</a>  <em class="jxr_comment">// * COUNTER &amp;gt; 500' to the statement to avoid retrieval of previously processed</em>
<a class="jxr_linenumber" name="L78" href="#L78">78</a>  <em class="jxr_comment">// * events.</em>
<a class="jxr_linenumber" name="L79" href="#L79">79</a>  <em class="jxr_comment">// * &lt;p&gt;</em>
<a class="jxr_linenumber" name="L80" href="#L80">80</a>  <em class="jxr_comment">// * The select statement must provide ALL fields which define a LoggingEvent.</em>
<a class="jxr_linenumber" name="L81" href="#L81">81</a>  <em class="jxr_comment">// * &lt;p&gt;</em>
<a class="jxr_linenumber" name="L82" href="#L82">82</a>  <em class="jxr_comment">// * The SQL statement MUST include the columns: LOGGER, TIMESTAMP, LEVEL, THREAD,</em>
<a class="jxr_linenumber" name="L83" href="#L83">83</a>  <em class="jxr_comment">// * MESSAGE, NDC, MDC, CLASS, METHOD, FILE, LINE, PROPERTIES, THROWABLE</em>
<a class="jxr_linenumber" name="L84" href="#L84">84</a>  <em class="jxr_comment">// * &lt;p&gt;</em>
<a class="jxr_linenumber" name="L85" href="#L85">85</a>  <em class="jxr_comment">// * Use ' AS ' in the SQL statement to alias the SQL's column names to match your</em>
<a class="jxr_linenumber" name="L86" href="#L86">86</a>  <em class="jxr_comment">// * database schema. (see example below).</em>
<a class="jxr_linenumber" name="L87" href="#L87">87</a>  <em class="jxr_comment">// * &lt;p&gt;</em>
<a class="jxr_linenumber" name="L88" href="#L88">88</a>  <em class="jxr_comment">// * Include all fields in the SQL statement, even if you don't have data for the</em>
<a class="jxr_linenumber" name="L89" href="#L89">89</a>  <em class="jxr_comment">// * field (specify an empty string as the value for columns which you don't have</em>
<a class="jxr_linenumber" name="L90" href="#L90">90</a>  <em class="jxr_comment">// * data).</em>
<a class="jxr_linenumber" name="L91" href="#L91">91</a>  <em class="jxr_comment">// * &lt;p&gt;</em>
<a class="jxr_linenumber" name="L92" href="#L92">92</a>  <em class="jxr_comment">// * The TIMESTAMP column must be a datetime.</em>
<a class="jxr_linenumber" name="L93" href="#L93">93</a>  <em class="jxr_comment">// * &lt;p&gt;</em>
<a class="jxr_linenumber" name="L94" href="#L94">94</a>  <em class="jxr_comment">// * Both a PROPERTIES column and an MDC column are supported. These fields</em>
<a class="jxr_linenumber" name="L95" href="#L95">95</a>  <em class="jxr_comment">// * represent Maps on the logging event, but require the use of string</em>
<a class="jxr_linenumber" name="L96" href="#L96">96</a>  <em class="jxr_comment">// * concatenation database functions to hold the (possibly multiple) name/value</em>
<a class="jxr_linenumber" name="L97" href="#L97">97</a>  <em class="jxr_comment">// * pairs in the column.</em>
<a class="jxr_linenumber" name="L98" href="#L98">98</a>  <em class="jxr_comment">// * &lt;p&gt;</em>
<a class="jxr_linenumber" name="L99" href="#L99">99</a>  <em class="jxr_comment">// * For example, to include both 'userid' and 'lastname' properties in the</em>
<a class="jxr_linenumber" name="L100" href="#L100">100</a> <em class="jxr_comment">// * logging event (from either the PROPERTIES or MDC columns), the name/value</em>
<a class="jxr_linenumber" name="L101" href="#L101">101</a> <em class="jxr_comment">// * pairs must be concatenated together by your database.</em>
<a class="jxr_linenumber" name="L102" href="#L102">102</a> <em class="jxr_comment">// * &lt;p&gt;</em>
<a class="jxr_linenumber" name="L103" href="#L103">103</a> <em class="jxr_comment">// * The resulting PROPERTIES or MDC column must have data in this format: {{name,</em>
<a class="jxr_linenumber" name="L104" href="#L104">104</a> <em class="jxr_comment">// * value, name2, value2}}</em>
<a class="jxr_linenumber" name="L105" href="#L105">105</a> <em class="jxr_comment">// * &lt;p&gt;</em>
<a class="jxr_linenumber" name="L106" href="#L106">106</a> <em class="jxr_comment">// * The resulting PROPERTIES column would contain this text: {{userid, someone,</em>
<a class="jxr_linenumber" name="L107" href="#L107">107</a> <em class="jxr_comment">// * lastname, mylastname}}</em>
<a class="jxr_linenumber" name="L108" href="#L108">108</a> <em class="jxr_comment">// * &lt;p&gt;</em>
<a class="jxr_linenumber" name="L109" href="#L109">109</a> <em class="jxr_comment">// * Here is an example of concatenating a PROPERTIES or MDC column using MySQL's</em>
<a class="jxr_linenumber" name="L110" href="#L110">110</a> <em class="jxr_comment">// * concat function, where the 'application' and 'hostname' parameters were fixed</em>
<a class="jxr_linenumber" name="L111" href="#L111">111</a> <em class="jxr_comment">// * text, but the 'log4jid' key's value is the value of the COUNTER column:</em>
<a class="jxr_linenumber" name="L112" href="#L112">112</a> <em class="jxr_comment">// * &lt;p&gt;</em>
<a class="jxr_linenumber" name="L113" href="#L113">113</a> <em class="jxr_comment">// * concat("{{application,databaselogs,hostname,mymachine,log4jid,", COUNTER,</em>
<a class="jxr_linenumber" name="L114" href="#L114">114</a> <em class="jxr_comment">// * "}}") as PROPERTIES</em>
<a class="jxr_linenumber" name="L115" href="#L115">115</a> <em class="jxr_comment">// * &lt;p&gt;</em>
<a class="jxr_linenumber" name="L116" href="#L116">116</a> <em class="jxr_comment">// * log4jid is a special property that is used by Chainsaw to represent an 'ID'</em>
<a class="jxr_linenumber" name="L117" href="#L117">117</a> <em class="jxr_comment">// * field. Specify this property to ensure you can map events in Chainsaw to</em>
<a class="jxr_linenumber" name="L118" href="#L118">118</a> <em class="jxr_comment">// * events in the database if you need to go back and view events at a later time</em>
<a class="jxr_linenumber" name="L119" href="#L119">119</a> <em class="jxr_comment">// * or save the events to XML for later analysis.</em>
<a class="jxr_linenumber" name="L120" href="#L120">120</a> <em class="jxr_comment">// * &lt;p&gt;</em>
<a class="jxr_linenumber" name="L121" href="#L121">121</a> <em class="jxr_comment">// * Here is a complete MySQL SQL statement which can be used to provide events to</em>
<a class="jxr_linenumber" name="L122" href="#L122">122</a> <em class="jxr_comment">// * Chainsaw (note how in the example below, there is no column in logtable representing the throwable, so an</em>
<a class="jxr_linenumber" name="L123" href="#L123">123</a> <em class="jxr_comment">// * empty string is passed in and an ALIAS is still defined):</em>
<a class="jxr_linenumber" name="L124" href="#L124">124</a> <em class="jxr_comment">// * &lt;p&gt;</em>
<a class="jxr_linenumber" name="L125" href="#L125">125</a> <em class="jxr_comment">// * select myloggercolumn as LOGGER, mytimestampcolumn as TIMESTAMP, mylevelcolumn as LEVEL, mythreadcolumn as</em>
<a class="jxr_linenumber" name="L126" href="#L126">126</a> <em class="jxr_comment">// * THREAD, mymessagecolumn as MESSAGE, myndccolumn as NDC, mymdccolumn as MDC, myclasscolumn as CLASS, mymethodcolumn as</em>
<a class="jxr_linenumber" name="L127" href="#L127">127</a> <em class="jxr_comment">// * METHOD, myfilecolumn as FILE, mylinecolumn as LINE,</em>
<a class="jxr_linenumber" name="L128" href="#L128">128</a> <em class="jxr_comment">// * concat("{{application,databaselogs,hostname,mymachine, log4jid,",</em>
<a class="jxr_linenumber" name="L129" href="#L129">129</a> <em class="jxr_comment">// * COUNTER,"}}") as PROPERTIES, "" as THROWABLE from logtable</em>
<a class="jxr_linenumber" name="L130" href="#L130">130</a> <em class="jxr_comment">// * &lt;p&gt;</em>
<a class="jxr_linenumber" name="L131" href="#L131">131</a> <em class="jxr_comment">// *</em>
<a class="jxr_linenumber" name="L132" href="#L132">132</a> <em class="jxr_comment">// * @author Scott Deboy &amp;lt;sdeboy@apache.org&amp;gt;</em>
<a class="jxr_linenumber" name="L133" href="#L133">133</a> <em class="jxr_comment">// * &lt;p&gt;</em>
<a class="jxr_linenumber" name="L134" href="#L134">134</a> <em class="jxr_comment">// */</em>
<a class="jxr_linenumber" name="L135" href="#L135">135</a> <em class="jxr_comment">//public class CustomSQLDBReceiver extends Receiver implements Pauseable, UnrecognizedElementHandler {</em>
<a class="jxr_linenumber" name="L136" href="#L136">136</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L137" href="#L137">137</a> <em class="jxr_comment">//    protected volatile Connection connection = null;</em>
<a class="jxr_linenumber" name="L138" href="#L138">138</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L139" href="#L139">139</a> <em class="jxr_comment">//    protected String sqlStatement = "";</em>
<a class="jxr_linenumber" name="L140" href="#L140">140</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L141" href="#L141">141</a> <em class="jxr_comment">//    /**</em>
<a class="jxr_linenumber" name="L142" href="#L142">142</a> <em class="jxr_comment">//     * By default we refresh data every 1000 milliseconds.</em>
<a class="jxr_linenumber" name="L143" href="#L143">143</a> <em class="jxr_comment">//     *</em>
<a class="jxr_linenumber" name="L144" href="#L144">144</a> <em class="jxr_comment">//     * @see #setRefreshMillis</em>
<a class="jxr_linenumber" name="L145" href="#L145">145</a> <em class="jxr_comment">//     */</em>
<a class="jxr_linenumber" name="L146" href="#L146">146</a> <em class="jxr_comment">//    static int DEFAULT_REFRESH_MILLIS = 1000;</em>
<a class="jxr_linenumber" name="L147" href="#L147">147</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L148" href="#L148">148</a> <em class="jxr_comment">//    int refreshMillis = DEFAULT_REFRESH_MILLIS;</em>
<a class="jxr_linenumber" name="L149" href="#L149">149</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L150" href="#L150">150</a> <em class="jxr_comment">//    protected String idField = null;</em>
<a class="jxr_linenumber" name="L151" href="#L151">151</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L152" href="#L152">152</a> <em class="jxr_comment">//    int lastID = -1;</em>
<a class="jxr_linenumber" name="L153" href="#L153">153</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L154" href="#L154">154</a> <em class="jxr_comment">//    private static final String WHERE_CLAUSE = " WHERE ";</em>
<a class="jxr_linenumber" name="L155" href="#L155">155</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L156" href="#L156">156</a> <em class="jxr_comment">//    private static final String AND_CLAUSE = " AND ";</em>
<a class="jxr_linenumber" name="L157" href="#L157">157</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L158" href="#L158">158</a> <em class="jxr_comment">//    private boolean whereExists = false;</em>
<a class="jxr_linenumber" name="L159" href="#L159">159</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L160" href="#L160">160</a> <em class="jxr_comment">//    private boolean paused = false;</em>
<a class="jxr_linenumber" name="L161" href="#L161">161</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L162" href="#L162">162</a> <em class="jxr_comment">//    private ConnectionSource connectionSource;</em>
<a class="jxr_linenumber" name="L163" href="#L163">163</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L164" href="#L164">164</a> <em class="jxr_comment">//    public static final String LOG4J_ID_KEY = "log4jid";</em>
<a class="jxr_linenumber" name="L165" href="#L165">165</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L166" href="#L166">166</a> <em class="jxr_comment">//    private Job customReceiverJob;</em>
<a class="jxr_linenumber" name="L167" href="#L167">167</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L168" href="#L168">168</a> <em class="jxr_comment">//    public void activateOptions() {</em>
<a class="jxr_linenumber" name="L169" href="#L169">169</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L170" href="#L170">170</a> <em class="jxr_comment">//        if (connectionSource == null) {</em>
<a class="jxr_linenumber" name="L171" href="#L171">171</a> <em class="jxr_comment">//            throw new IllegalStateException(</em>
<a class="jxr_linenumber" name="L172" href="#L172">172</a> <em class="jxr_comment">//                "CustomSQLDBReceiver cannot function without a connection source");</em>
<a class="jxr_linenumber" name="L173" href="#L173">173</a> <em class="jxr_comment">//        }</em>
<a class="jxr_linenumber" name="L174" href="#L174">174</a> <em class="jxr_comment">//        whereExists = (sqlStatement.toUpperCase().contains(WHERE_CLAUSE));</em>
<a class="jxr_linenumber" name="L175" href="#L175">175</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L176" href="#L176">176</a> <em class="jxr_comment">//        customReceiverJob = new CustomReceiverJob();</em>
<a class="jxr_linenumber" name="L177" href="#L177">177</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L178" href="#L178">178</a> <em class="jxr_comment">//        if (this.repository == null) {</em>
<a class="jxr_linenumber" name="L179" href="#L179">179</a> <em class="jxr_comment">//            throw new IllegalStateException(</em>
<a class="jxr_linenumber" name="L180" href="#L180">180</a> <em class="jxr_comment">//                "CustomSQLDBReceiver cannot function without a reference to its owning repository");</em>
<a class="jxr_linenumber" name="L181" href="#L181">181</a> <em class="jxr_comment">//        }</em>
<a class="jxr_linenumber" name="L182" href="#L182">182</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L183" href="#L183">183</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L184" href="#L184">184</a> <em class="jxr_comment">//        if (repository instanceof LoggerRepositoryEx) {</em>
<a class="jxr_linenumber" name="L185" href="#L185">185</a> <em class="jxr_comment">//            Scheduler scheduler = ((LoggerRepositoryEx) repository).getScheduler();</em>
<a class="jxr_linenumber" name="L186" href="#L186">186</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L187" href="#L187">187</a> <em class="jxr_comment">//            scheduler.schedule(</em>
<a class="jxr_linenumber" name="L188" href="#L188">188</a> <em class="jxr_comment">//                customReceiverJob, System.currentTimeMillis() + 500, refreshMillis);</em>
<a class="jxr_linenumber" name="L189" href="#L189">189</a> <em class="jxr_comment">//        }</em>
<a class="jxr_linenumber" name="L190" href="#L190">190</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L191" href="#L191">191</a> <em class="jxr_comment">//    }</em>
<a class="jxr_linenumber" name="L192" href="#L192">192</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L193" href="#L193">193</a> <em class="jxr_comment">//    void closeConnection() {</em>
<a class="jxr_linenumber" name="L194" href="#L194">194</a> <em class="jxr_comment">//        if (connection != null) {</em>
<a class="jxr_linenumber" name="L195" href="#L195">195</a> <em class="jxr_comment">//            try {</em>
<a class="jxr_linenumber" name="L196" href="#L196">196</a> <em class="jxr_comment">//                // LogLog.warn("closing the connection. ", new Exception("x"));</em>
<a class="jxr_linenumber" name="L197" href="#L197">197</a> <em class="jxr_comment">//                connection.close();</em>
<a class="jxr_linenumber" name="L198" href="#L198">198</a> <em class="jxr_comment">//            } catch (SQLException sqle) {</em>
<a class="jxr_linenumber" name="L199" href="#L199">199</a> <em class="jxr_comment">//                // nothing we can do here</em>
<a class="jxr_linenumber" name="L200" href="#L200">200</a> <em class="jxr_comment">//            }</em>
<a class="jxr_linenumber" name="L201" href="#L201">201</a> <em class="jxr_comment">//        }</em>
<a class="jxr_linenumber" name="L202" href="#L202">202</a> <em class="jxr_comment">//    }</em>
<a class="jxr_linenumber" name="L203" href="#L203">203</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L204" href="#L204">204</a> <em class="jxr_comment">//    public void setRefreshMillis(int refreshMillis) {</em>
<a class="jxr_linenumber" name="L205" href="#L205">205</a> <em class="jxr_comment">//        this.refreshMillis = refreshMillis;</em>
<a class="jxr_linenumber" name="L206" href="#L206">206</a> <em class="jxr_comment">//    }</em>
<a class="jxr_linenumber" name="L207" href="#L207">207</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L208" href="#L208">208</a> <em class="jxr_comment">//    public int getRefreshMillis() {</em>
<a class="jxr_linenumber" name="L209" href="#L209">209</a> <em class="jxr_comment">//        return refreshMillis;</em>
<a class="jxr_linenumber" name="L210" href="#L210">210</a> <em class="jxr_comment">//    }</em>
<a class="jxr_linenumber" name="L211" href="#L211">211</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L212" href="#L212">212</a> <em class="jxr_comment">//    /**</em>
<a class="jxr_linenumber" name="L213" href="#L213">213</a> <em class="jxr_comment">//     * @return Returns the connectionSource.</em>
<a class="jxr_linenumber" name="L214" href="#L214">214</a> <em class="jxr_comment">//     */</em>
<a class="jxr_linenumber" name="L215" href="#L215">215</a> <em class="jxr_comment">//    public ConnectionSource getConnectionSource() {</em>
<a class="jxr_linenumber" name="L216" href="#L216">216</a> <em class="jxr_comment">//        return connectionSource;</em>
<a class="jxr_linenumber" name="L217" href="#L217">217</a> <em class="jxr_comment">//    }</em>
<a class="jxr_linenumber" name="L218" href="#L218">218</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L219" href="#L219">219</a> <em class="jxr_comment">//    /**</em>
<a class="jxr_linenumber" name="L220" href="#L220">220</a> <em class="jxr_comment">//     * @param connectionSource The connectionSource to set.</em>
<a class="jxr_linenumber" name="L221" href="#L221">221</a> <em class="jxr_comment">//     */</em>
<a class="jxr_linenumber" name="L222" href="#L222">222</a> <em class="jxr_comment">//    public void setConnectionSource(ConnectionSource connectionSource) {</em>
<a class="jxr_linenumber" name="L223" href="#L223">223</a> <em class="jxr_comment">//        this.connectionSource = connectionSource;</em>
<a class="jxr_linenumber" name="L224" href="#L224">224</a> <em class="jxr_comment">//    }</em>
<a class="jxr_linenumber" name="L225" href="#L225">225</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L226" href="#L226">226</a> <em class="jxr_comment">//    public void close() {</em>
<a class="jxr_linenumber" name="L227" href="#L227">227</a> <em class="jxr_comment">//        try {</em>
<a class="jxr_linenumber" name="L228" href="#L228">228</a> <em class="jxr_comment">//            if ((connection != null) &amp;&amp; !connection.isClosed()) {</em>
<a class="jxr_linenumber" name="L229" href="#L229">229</a> <em class="jxr_comment">//                connection.close();</em>
<a class="jxr_linenumber" name="L230" href="#L230">230</a> <em class="jxr_comment">//            }</em>
<a class="jxr_linenumber" name="L231" href="#L231">231</a> <em class="jxr_comment">//        } catch (SQLException e) {</em>
<a class="jxr_linenumber" name="L232" href="#L232">232</a> <em class="jxr_comment">//            e.printStackTrace();</em>
<a class="jxr_linenumber" name="L233" href="#L233">233</a> <em class="jxr_comment">//        } finally {</em>
<a class="jxr_linenumber" name="L234" href="#L234">234</a> <em class="jxr_comment">//            connection = null;</em>
<a class="jxr_linenumber" name="L235" href="#L235">235</a> <em class="jxr_comment">//        }</em>
<a class="jxr_linenumber" name="L236" href="#L236">236</a> <em class="jxr_comment">//    }</em>
<a class="jxr_linenumber" name="L237" href="#L237">237</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L238" href="#L238">238</a> <em class="jxr_comment">//    public void finalize() throws Throwable {</em>
<a class="jxr_linenumber" name="L239" href="#L239">239</a> <em class="jxr_comment">//        super.finalize();</em>
<a class="jxr_linenumber" name="L240" href="#L240">240</a> <em class="jxr_comment">//        close();</em>
<a class="jxr_linenumber" name="L241" href="#L241">241</a> <em class="jxr_comment">//    }</em>
<a class="jxr_linenumber" name="L242" href="#L242">242</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L243" href="#L243">243</a> <em class="jxr_comment">//    /*</em>
<a class="jxr_linenumber" name="L244" href="#L244">244</a> <em class="jxr_comment">//     * (non-Javadoc)</em>
<a class="jxr_linenumber" name="L245" href="#L245">245</a> <em class="jxr_comment">//     *</em>
<a class="jxr_linenumber" name="L246" href="#L246">246</a> <em class="jxr_comment">//     * @see org.apache.log4j.plugins.Plugin#shutdown()</em>
<a class="jxr_linenumber" name="L247" href="#L247">247</a> <em class="jxr_comment">//     */</em>
<a class="jxr_linenumber" name="L248" href="#L248">248</a> <em class="jxr_comment">//    public void shutdown() {</em>
<a class="jxr_linenumber" name="L249" href="#L249">249</a> <em class="jxr_comment">//        getLogger().info("removing receiverJob from the Scheduler.");</em>
<a class="jxr_linenumber" name="L250" href="#L250">250</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L251" href="#L251">251</a> <em class="jxr_comment">//        if (this.repository instanceof LoggerRepositoryEx) {</em>
<a class="jxr_linenumber" name="L252" href="#L252">252</a> <em class="jxr_comment">//            Scheduler scheduler = ((LoggerRepositoryEx) repository).getScheduler();</em>
<a class="jxr_linenumber" name="L253" href="#L253">253</a> <em class="jxr_comment">//            scheduler.delete(customReceiverJob);</em>
<a class="jxr_linenumber" name="L254" href="#L254">254</a> <em class="jxr_comment">//        }</em>
<a class="jxr_linenumber" name="L255" href="#L255">255</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L256" href="#L256">256</a> <em class="jxr_comment">//        lastID = -1;</em>
<a class="jxr_linenumber" name="L257" href="#L257">257</a> <em class="jxr_comment">//    }</em>
<a class="jxr_linenumber" name="L258" href="#L258">258</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L259" href="#L259">259</a> <em class="jxr_comment">//    public void setSql(String s) {</em>
<a class="jxr_linenumber" name="L260" href="#L260">260</a> <em class="jxr_comment">//        sqlStatement = s;</em>
<a class="jxr_linenumber" name="L261" href="#L261">261</a> <em class="jxr_comment">//    }</em>
<a class="jxr_linenumber" name="L262" href="#L262">262</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L263" href="#L263">263</a> <em class="jxr_comment">//    public String getSql() {</em>
<a class="jxr_linenumber" name="L264" href="#L264">264</a> <em class="jxr_comment">//        return sqlStatement;</em>
<a class="jxr_linenumber" name="L265" href="#L265">265</a> <em class="jxr_comment">//    }</em>
<a class="jxr_linenumber" name="L266" href="#L266">266</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L267" href="#L267">267</a> <em class="jxr_comment">//    public void setIDField(String id) {</em>
<a class="jxr_linenumber" name="L268" href="#L268">268</a> <em class="jxr_comment">//        idField = id;</em>
<a class="jxr_linenumber" name="L269" href="#L269">269</a> <em class="jxr_comment">//    }</em>
<a class="jxr_linenumber" name="L270" href="#L270">270</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L271" href="#L271">271</a> <em class="jxr_comment">//    public String getIDField() {</em>
<a class="jxr_linenumber" name="L272" href="#L272">272</a> <em class="jxr_comment">//        return idField;</em>
<a class="jxr_linenumber" name="L273" href="#L273">273</a> <em class="jxr_comment">//    }</em>
<a class="jxr_linenumber" name="L274" href="#L274">274</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L275" href="#L275">275</a> <em class="jxr_comment">//    public synchronized void setPaused(boolean p) {</em>
<a class="jxr_linenumber" name="L276" href="#L276">276</a> <em class="jxr_comment">//        paused = p;</em>
<a class="jxr_linenumber" name="L277" href="#L277">277</a> <em class="jxr_comment">//    }</em>
<a class="jxr_linenumber" name="L278" href="#L278">278</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L279" href="#L279">279</a> <em class="jxr_comment">//    public synchronized boolean isPaused() {</em>
<a class="jxr_linenumber" name="L280" href="#L280">280</a> <em class="jxr_comment">//        return paused;</em>
<a class="jxr_linenumber" name="L281" href="#L281">281</a> <em class="jxr_comment">//    }</em>
<a class="jxr_linenumber" name="L282" href="#L282">282</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L283" href="#L283">283</a> <em class="jxr_comment">//    class CustomReceiverJob implements Job {</em>
<a class="jxr_linenumber" name="L284" href="#L284">284</a> <em class="jxr_comment">//        public void execute() {</em>
<a class="jxr_linenumber" name="L285" href="#L285">285</a> <em class="jxr_comment">//            int oldLastID = lastID;</em>
<a class="jxr_linenumber" name="L286" href="#L286">286</a> <em class="jxr_comment">//            try {</em>
<a class="jxr_linenumber" name="L287" href="#L287">287</a> <em class="jxr_comment">//                connection = connectionSource.getConnection();</em>
<a class="jxr_linenumber" name="L288" href="#L288">288</a> <em class="jxr_comment">//                Statement statement = connection.createStatement();</em>
<a class="jxr_linenumber" name="L289" href="#L289">289</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L290" href="#L290">290</a> <em class="jxr_comment">//                Logger eventLogger;</em>
<a class="jxr_linenumber" name="L291" href="#L291">291</a> <em class="jxr_comment">//                long timeStamp;</em>
<a class="jxr_linenumber" name="L292" href="#L292">292</a> <em class="jxr_comment">//                String level;</em>
<a class="jxr_linenumber" name="L293" href="#L293">293</a> <em class="jxr_comment">//                String threadName;</em>
<a class="jxr_linenumber" name="L294" href="#L294">294</a> <em class="jxr_comment">//                Object message;</em>
<a class="jxr_linenumber" name="L295" href="#L295">295</a> <em class="jxr_comment">//                String ndc;</em>
<a class="jxr_linenumber" name="L296" href="#L296">296</a> <em class="jxr_comment">//                Hashtable&lt;String, String&gt; mdc;</em>
<a class="jxr_linenumber" name="L297" href="#L297">297</a> <em class="jxr_comment">//                String[] throwable;</em>
<a class="jxr_linenumber" name="L298" href="#L298">298</a> <em class="jxr_comment">//                String className;</em>
<a class="jxr_linenumber" name="L299" href="#L299">299</a> <em class="jxr_comment">//                String methodName;</em>
<a class="jxr_linenumber" name="L300" href="#L300">300</a> <em class="jxr_comment">//                String fileName;</em>
<a class="jxr_linenumber" name="L301" href="#L301">301</a> <em class="jxr_comment">//                String lineNumber;</em>
<a class="jxr_linenumber" name="L302" href="#L302">302</a> <em class="jxr_comment">//                Hashtable&lt;String, String&gt; properties;</em>
<a class="jxr_linenumber" name="L303" href="#L303">303</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L304" href="#L304">304</a> <em class="jxr_comment">//                String currentSQLStatement;</em>
<a class="jxr_linenumber" name="L305" href="#L305">305</a> <em class="jxr_comment">//                if (whereExists) {</em>
<a class="jxr_linenumber" name="L306" href="#L306">306</a> <em class="jxr_comment">//                    currentSQLStatement = sqlStatement + AND_CLAUSE + idField</em>
<a class="jxr_linenumber" name="L307" href="#L307">307</a> <em class="jxr_comment">//                        + " &gt; " + lastID;</em>
<a class="jxr_linenumber" name="L308" href="#L308">308</a> <em class="jxr_comment">//                } else {</em>
<a class="jxr_linenumber" name="L309" href="#L309">309</a> <em class="jxr_comment">//                    currentSQLStatement = sqlStatement + WHERE_CLAUSE + idField</em>
<a class="jxr_linenumber" name="L310" href="#L310">310</a> <em class="jxr_comment">//                        + " &gt; " + lastID;</em>
<a class="jxr_linenumber" name="L311" href="#L311">311</a> <em class="jxr_comment">//                }</em>
<a class="jxr_linenumber" name="L312" href="#L312">312</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L313" href="#L313">313</a> <em class="jxr_comment">//                ResultSet rs = statement.executeQuery(currentSQLStatement);</em>
<a class="jxr_linenumber" name="L314" href="#L314">314</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L315" href="#L315">315</a> <em class="jxr_comment">//                int i = 0;</em>
<a class="jxr_linenumber" name="L316" href="#L316">316</a> <em class="jxr_comment">//                while (rs.next()) {</em>
<a class="jxr_linenumber" name="L317" href="#L317">317</a> <em class="jxr_comment">//                    // add a small break every 1000 received events</em>
<a class="jxr_linenumber" name="L318" href="#L318">318</a> <em class="jxr_comment">//                    if (++i == 1000) {</em>
<a class="jxr_linenumber" name="L319" href="#L319">319</a> <em class="jxr_comment">//                        synchronized (this) {</em>
<a class="jxr_linenumber" name="L320" href="#L320">320</a> <em class="jxr_comment">//                            try {</em>
<a class="jxr_linenumber" name="L321" href="#L321">321</a> <em class="jxr_comment">//                                // add a delay</em>
<a class="jxr_linenumber" name="L322" href="#L322">322</a> <em class="jxr_comment">//                                wait(300);</em>
<a class="jxr_linenumber" name="L323" href="#L323">323</a> <em class="jxr_comment">//                            } catch (InterruptedException ie) {</em>
<a class="jxr_linenumber" name="L324" href="#L324">324</a> <em class="jxr_comment">//                            }</em>
<a class="jxr_linenumber" name="L325" href="#L325">325</a> <em class="jxr_comment">//                            i = 0;</em>
<a class="jxr_linenumber" name="L326" href="#L326">326</a> <em class="jxr_comment">//                        }</em>
<a class="jxr_linenumber" name="L327" href="#L327">327</a> <em class="jxr_comment">//                    }</em>
<a class="jxr_linenumber" name="L328" href="#L328">328</a> <em class="jxr_comment">//                    eventLogger = Logger.getLogger(rs.getString("LOGGER"));</em>
<a class="jxr_linenumber" name="L329" href="#L329">329</a> <em class="jxr_comment">//                    timeStamp = rs.getTimestamp("TIMESTAMP").getTime();</em>
<a class="jxr_linenumber" name="L330" href="#L330">330</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L331" href="#L331">331</a> <em class="jxr_comment">//                    level = rs.getString("LEVEL");</em>
<a class="jxr_linenumber" name="L332" href="#L332">332</a> <em class="jxr_comment">//                    threadName = rs.getString("THREAD");</em>
<a class="jxr_linenumber" name="L333" href="#L333">333</a> <em class="jxr_comment">//                    message = rs.getString("MESSAGE");</em>
<a class="jxr_linenumber" name="L334" href="#L334">334</a> <em class="jxr_comment">//                    ndc = rs.getString("NDC");</em>
<a class="jxr_linenumber" name="L335" href="#L335">335</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L336" href="#L336">336</a> <em class="jxr_comment">//                    String mdcString = rs.getString("MDC");</em>
<a class="jxr_linenumber" name="L337" href="#L337">337</a> <em class="jxr_comment">//                    mdc = new Hashtable&lt;&gt;();</em>
<a class="jxr_linenumber" name="L338" href="#L338">338</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L339" href="#L339">339</a> <em class="jxr_comment">//                    if (mdcString != null) {</em>
<a class="jxr_linenumber" name="L340" href="#L340">340</a> <em class="jxr_comment">//                        // support MDC being wrapped in {{name, value}}</em>
<a class="jxr_linenumber" name="L341" href="#L341">341</a> <em class="jxr_comment">//                        // or</em>
<a class="jxr_linenumber" name="L342" href="#L342">342</a> <em class="jxr_comment">//                        // just name, value</em>
<a class="jxr_linenumber" name="L343" href="#L343">343</a> <em class="jxr_comment">//                        if ((mdcString.contains("{{"))</em>
<a class="jxr_linenumber" name="L344" href="#L344">344</a> <em class="jxr_comment">//                            &amp;&amp; (mdcString.contains("}}"))) {</em>
<a class="jxr_linenumber" name="L345" href="#L345">345</a> <em class="jxr_comment">//                            mdcString = mdcString</em>
<a class="jxr_linenumber" name="L346" href="#L346">346</a> <em class="jxr_comment">//                                .substring(mdcString.indexOf("{{") + 2,</em>
<a class="jxr_linenumber" name="L347" href="#L347">347</a> <em class="jxr_comment">//                                    mdcString.indexOf("}}"));</em>
<a class="jxr_linenumber" name="L348" href="#L348">348</a> <em class="jxr_comment">//                        }</em>
<a class="jxr_linenumber" name="L349" href="#L349">349</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L350" href="#L350">350</a> <em class="jxr_comment">//                        StringTokenizer tok = new StringTokenizer(mdcString,</em>
<a class="jxr_linenumber" name="L351" href="#L351">351</a> <em class="jxr_comment">//                            ",");</em>
<a class="jxr_linenumber" name="L352" href="#L352">352</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L353" href="#L353">353</a> <em class="jxr_comment">//                        while (tok.countTokens() &gt; 1) {</em>
<a class="jxr_linenumber" name="L354" href="#L354">354</a> <em class="jxr_comment">//                            mdc.put(tok.nextToken(), tok.nextToken());</em>
<a class="jxr_linenumber" name="L355" href="#L355">355</a> <em class="jxr_comment">//                        }</em>
<a class="jxr_linenumber" name="L356" href="#L356">356</a> <em class="jxr_comment">//                    }</em>
<a class="jxr_linenumber" name="L357" href="#L357">357</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L358" href="#L358">358</a> <em class="jxr_comment">//                    throwable = new String[]{rs.getString("THROWABLE")};</em>
<a class="jxr_linenumber" name="L359" href="#L359">359</a> <em class="jxr_comment">//                    className = rs.getString("CLASS");</em>
<a class="jxr_linenumber" name="L360" href="#L360">360</a> <em class="jxr_comment">//                    methodName = rs.getString("METHOD");</em>
<a class="jxr_linenumber" name="L361" href="#L361">361</a> <em class="jxr_comment">//                    fileName = rs.getString("FILE");</em>
<a class="jxr_linenumber" name="L362" href="#L362">362</a> <em class="jxr_comment">//                    lineNumber = rs.getString("LINE");</em>
<a class="jxr_linenumber" name="L363" href="#L363">363</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L364" href="#L364">364</a> <em class="jxr_comment">//                    // if properties are provided in the</em>
<a class="jxr_linenumber" name="L365" href="#L365">365</a> <em class="jxr_comment">//                    // SQL they can be used here (for example, to route</em>
<a class="jxr_linenumber" name="L366" href="#L366">366</a> <em class="jxr_comment">//                    // events to a unique tab in</em>
<a class="jxr_linenumber" name="L367" href="#L367">367</a> <em class="jxr_comment">//                    // Chainsaw if the machinename and/or appname</em>
<a class="jxr_linenumber" name="L368" href="#L368">368</a> <em class="jxr_comment">//                    // property</em>
<a class="jxr_linenumber" name="L369" href="#L369">369</a> <em class="jxr_comment">//                    // are set)</em>
<a class="jxr_linenumber" name="L370" href="#L370">370</a> <em class="jxr_comment">//                    String propertiesString = rs.getString("PROPERTIES");</em>
<a class="jxr_linenumber" name="L371" href="#L371">371</a> <em class="jxr_comment">//                    properties = new Hashtable&lt;&gt;();</em>
<a class="jxr_linenumber" name="L372" href="#L372">372</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L373" href="#L373">373</a> <em class="jxr_comment">//                    if (propertiesString != null) {</em>
<a class="jxr_linenumber" name="L374" href="#L374">374</a> <em class="jxr_comment">//                        // support properties being wrapped in {{name,</em>
<a class="jxr_linenumber" name="L375" href="#L375">375</a> <em class="jxr_comment">//                        // value}} or just name, value</em>
<a class="jxr_linenumber" name="L376" href="#L376">376</a> <em class="jxr_comment">//                        if ((propertiesString.contains("{{"))</em>
<a class="jxr_linenumber" name="L377" href="#L377">377</a> <em class="jxr_comment">//                            &amp;&amp; (propertiesString.contains("}}"))) {</em>
<a class="jxr_linenumber" name="L378" href="#L378">378</a> <em class="jxr_comment">//                            propertiesString = propertiesString.substring(</em>
<a class="jxr_linenumber" name="L379" href="#L379">379</a> <em class="jxr_comment">//                                propertiesString.indexOf("{{") + 2,</em>
<a class="jxr_linenumber" name="L380" href="#L380">380</a> <em class="jxr_comment">//                                propertiesString.indexOf("}}"));</em>
<a class="jxr_linenumber" name="L381" href="#L381">381</a> <em class="jxr_comment">//                        }</em>
<a class="jxr_linenumber" name="L382" href="#L382">382</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L383" href="#L383">383</a> <em class="jxr_comment">//                        StringTokenizer tok2 = new StringTokenizer(</em>
<a class="jxr_linenumber" name="L384" href="#L384">384</a> <em class="jxr_comment">//                            propertiesString, ",");</em>
<a class="jxr_linenumber" name="L385" href="#L385">385</a> <em class="jxr_comment">//                        while (tok2.countTokens() &gt; 1) {</em>
<a class="jxr_linenumber" name="L386" href="#L386">386</a> <em class="jxr_comment">//                            String tokenName = tok2.nextToken();</em>
<a class="jxr_linenumber" name="L387" href="#L387">387</a> <em class="jxr_comment">//                            String value = tok2.nextToken();</em>
<a class="jxr_linenumber" name="L388" href="#L388">388</a> <em class="jxr_comment">//                            if (tokenName.equals(LOG4J_ID_KEY)) {</em>
<a class="jxr_linenumber" name="L389" href="#L389">389</a> <em class="jxr_comment">//                                try {</em>
<a class="jxr_linenumber" name="L390" href="#L390">390</a> <em class="jxr_comment">//                                    int thisInt = Integer.parseInt(value);</em>
<a class="jxr_linenumber" name="L391" href="#L391">391</a> <em class="jxr_comment">//                                    value = String.valueOf(thisInt);</em>
<a class="jxr_linenumber" name="L392" href="#L392">392</a> <em class="jxr_comment">//                                    if (thisInt &gt; lastID) {</em>
<a class="jxr_linenumber" name="L393" href="#L393">393</a> <em class="jxr_comment">//                                        lastID = thisInt;</em>
<a class="jxr_linenumber" name="L394" href="#L394">394</a> <em class="jxr_comment">//                                    }</em>
<a class="jxr_linenumber" name="L395" href="#L395">395</a> <em class="jxr_comment">//                                } catch (Exception e) {</em>
<a class="jxr_linenumber" name="L396" href="#L396">396</a> <em class="jxr_comment">//                                }</em>
<a class="jxr_linenumber" name="L397" href="#L397">397</a> <em class="jxr_comment">//                            }</em>
<a class="jxr_linenumber" name="L398" href="#L398">398</a> <em class="jxr_comment">//                            properties.put(tokenName, value);</em>
<a class="jxr_linenumber" name="L399" href="#L399">399</a> <em class="jxr_comment">//                        }</em>
<a class="jxr_linenumber" name="L400" href="#L400">400</a> <em class="jxr_comment">//                    }</em>
<a class="jxr_linenumber" name="L401" href="#L401">401</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L402" href="#L402">402</a> <em class="jxr_comment">//                    Level levelImpl = Level.toLevel(level);</em>
<a class="jxr_linenumber" name="L403" href="#L403">403</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L404" href="#L404">404</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L405" href="#L405">405</a> <em class="jxr_comment">//                    LocationInfo locationInfo = new LocationInfo(fileName,</em>
<a class="jxr_linenumber" name="L406" href="#L406">406</a> <em class="jxr_comment">//                        className, methodName, lineNumber);</em>
<a class="jxr_linenumber" name="L407" href="#L407">407</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L408" href="#L408">408</a> <em class="jxr_comment">//                    ThrowableInformation throwableInfo = new ThrowableInformation(</em>
<a class="jxr_linenumber" name="L409" href="#L409">409</a> <em class="jxr_comment">//                        throwable);</em>
<a class="jxr_linenumber" name="L410" href="#L410">410</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L411" href="#L411">411</a> <em class="jxr_comment">//                    properties.putAll(mdc);</em>
<a class="jxr_linenumber" name="L412" href="#L412">412</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L413" href="#L413">413</a> <em class="jxr_comment">//                    LoggingEvent event = new LoggingEvent(eventLogger.getName(),</em>
<a class="jxr_linenumber" name="L414" href="#L414">414</a> <em class="jxr_comment">//                        eventLogger, timeStamp, levelImpl, message,</em>
<a class="jxr_linenumber" name="L415" href="#L415">415</a> <em class="jxr_comment">//                        threadName,</em>
<a class="jxr_linenumber" name="L416" href="#L416">416</a> <em class="jxr_comment">//                        throwableInfo,</em>
<a class="jxr_linenumber" name="L417" href="#L417">417</a> <em class="jxr_comment">//                        ndc,</em>
<a class="jxr_linenumber" name="L418" href="#L418">418</a> <em class="jxr_comment">//                        locationInfo,</em>
<a class="jxr_linenumber" name="L419" href="#L419">419</a> <em class="jxr_comment">//                        properties);</em>
<a class="jxr_linenumber" name="L420" href="#L420">420</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L421" href="#L421">421</a> <em class="jxr_comment">//                    doPost(event);</em>
<a class="jxr_linenumber" name="L422" href="#L422">422</a> <em class="jxr_comment">//                }</em>
<a class="jxr_linenumber" name="L423" href="#L423">423</a> <em class="jxr_comment">//                //log when rows are retrieved</em>
<a class="jxr_linenumber" name="L424" href="#L424">424</a> <em class="jxr_comment">//                if (lastID != oldLastID) {</em>
<a class="jxr_linenumber" name="L425" href="#L425">425</a> <em class="jxr_comment">//                    getLogger().debug("lastID: " + lastID);</em>
<a class="jxr_linenumber" name="L426" href="#L426">426</a> <em class="jxr_comment">//                }</em>
<a class="jxr_linenumber" name="L427" href="#L427">427</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L428" href="#L428">428</a> <em class="jxr_comment">//                statement.close();</em>
<a class="jxr_linenumber" name="L429" href="#L429">429</a> <em class="jxr_comment">//            } catch (SQLException sqle) {</em>
<a class="jxr_linenumber" name="L430" href="#L430">430</a> <em class="jxr_comment">//                getLogger()</em>
<a class="jxr_linenumber" name="L431" href="#L431">431</a> <em class="jxr_comment">//                    .error("*************Problem receiving events", sqle);</em>
<a class="jxr_linenumber" name="L432" href="#L432">432</a> <em class="jxr_comment">//            } finally {</em>
<a class="jxr_linenumber" name="L433" href="#L433">433</a> <em class="jxr_comment">//                closeConnection();</em>
<a class="jxr_linenumber" name="L434" href="#L434">434</a> <em class="jxr_comment">//            }</em>
<a class="jxr_linenumber" name="L435" href="#L435">435</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L436" href="#L436">436</a> <em class="jxr_comment">//            // if paused, loop prior to executing sql query</em>
<a class="jxr_linenumber" name="L437" href="#L437">437</a> <em class="jxr_comment">//            synchronized (this) {</em>
<a class="jxr_linenumber" name="L438" href="#L438">438</a> <em class="jxr_comment">//                while (isPaused()) {</em>
<a class="jxr_linenumber" name="L439" href="#L439">439</a> <em class="jxr_comment">//                    try {</em>
<a class="jxr_linenumber" name="L440" href="#L440">440</a> <em class="jxr_comment">//                        wait(1000);</em>
<a class="jxr_linenumber" name="L441" href="#L441">441</a> <em class="jxr_comment">//                    } catch (InterruptedException ie) {</em>
<a class="jxr_linenumber" name="L442" href="#L442">442</a> <em class="jxr_comment">//                    }</em>
<a class="jxr_linenumber" name="L443" href="#L443">443</a> <em class="jxr_comment">//                }</em>
<a class="jxr_linenumber" name="L444" href="#L444">444</a> <em class="jxr_comment">//            }</em>
<a class="jxr_linenumber" name="L445" href="#L445">445</a> <em class="jxr_comment">//        }</em>
<a class="jxr_linenumber" name="L446" href="#L446">446</a> <em class="jxr_comment">//    }</em>
<a class="jxr_linenumber" name="L447" href="#L447">447</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L448" href="#L448">448</a> <em class="jxr_comment">//    /**</em>
<a class="jxr_linenumber" name="L449" href="#L449">449</a> <em class="jxr_comment">//     * {@inheritDoc}</em>
<a class="jxr_linenumber" name="L450" href="#L450">450</a> <em class="jxr_comment">//     */</em>
<a class="jxr_linenumber" name="L451" href="#L451">451</a> <em class="jxr_comment">//    public boolean parseUnrecognizedElement(Element element, Properties props) throws Exception {</em>
<a class="jxr_linenumber" name="L452" href="#L452">452</a> <em class="jxr_comment">//        if ("connectionSource".equals(element.getNodeName())) {</em>
<a class="jxr_linenumber" name="L453" href="#L453">453</a> <em class="jxr_comment">//            Object instance =</em>
<a class="jxr_linenumber" name="L454" href="#L454">454</a> <em class="jxr_comment">//                DOMConfigurator.parseElement(element, props, ConnectionSource.class);</em>
<a class="jxr_linenumber" name="L455" href="#L455">455</a> <em class="jxr_comment">//            if (instance instanceof ConnectionSource) {</em>
<a class="jxr_linenumber" name="L456" href="#L456">456</a> <em class="jxr_comment">//                ConnectionSource source = (ConnectionSource) instance;</em>
<a class="jxr_linenumber" name="L457" href="#L457">457</a> <em class="jxr_comment">//                source.activateOptions();</em>
<a class="jxr_linenumber" name="L458" href="#L458">458</a> <em class="jxr_comment">//                setConnectionSource(source);</em>
<a class="jxr_linenumber" name="L459" href="#L459">459</a> <em class="jxr_comment">//            }</em>
<a class="jxr_linenumber" name="L460" href="#L460">460</a> <em class="jxr_comment">//            return true;</em>
<a class="jxr_linenumber" name="L461" href="#L461">461</a> <em class="jxr_comment">//        }</em>
<a class="jxr_linenumber" name="L462" href="#L462">462</a> <em class="jxr_comment">//        return false;</em>
<a class="jxr_linenumber" name="L463" href="#L463">463</a> <em class="jxr_comment">//    }</em>
<a class="jxr_linenumber" name="L464" href="#L464">464</a> <em class="jxr_comment">//</em>
<a class="jxr_linenumber" name="L465" href="#L465">465</a> <em class="jxr_comment">//}</em>
</pre>
<hr/>
<div id="footer">Copyright &#169; 2002&#x2013;2022 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</div>
</body>
</html>
