<!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=ISO-8859-1" />
<title>NameAbbreviator xref</title>
<link type="text/css" rel="stylesheet" href="../../../../stylesheet.css" />
</head>
<body>
<div id="overview"><a href="../../../../../apidocs/org/apache/log4j/pattern/NameAbbreviator.html">View Javadoc</a></div><pre>

<a name="1" href="#1">1</a>   <em class="jxr_comment">/*</em>
<a name="2" href="#2">2</a>   <em class="jxr_comment"> * Licensed to the Apache Software Foundation (ASF) under one or more</em>
<a name="3" href="#3">3</a>   <em class="jxr_comment"> * contributor license agreements.  See the NOTICE file distributed with</em>
<a name="4" href="#4">4</a>   <em class="jxr_comment"> * this work for additional information regarding copyright ownership.</em>
<a name="5" href="#5">5</a>   <em class="jxr_comment"> * The ASF licenses this file to You under the Apache License, Version 2.0</em>
<a name="6" href="#6">6</a>   <em class="jxr_comment"> * (the "License"); you may not use this file except in compliance with</em>
<a name="7" href="#7">7</a>   <em class="jxr_comment"> * the License.  You may obtain a copy of the License at</em>
<a name="8" href="#8">8</a>   <em class="jxr_comment"> *</em>
<a name="9" href="#9">9</a>   <em class="jxr_comment"> *      <a href="http://www.apache.org/licenses/LICENSE-2.0" target="alexandria_uri">http://www.apache.org/licenses/LICENSE-2.0</a></em>
<a name="10" href="#10">10</a>  <em class="jxr_comment"> *</em>
<a name="11" href="#11">11</a>  <em class="jxr_comment"> * Unless required by applicable law or agreed to in writing, software</em>
<a name="12" href="#12">12</a>  <em class="jxr_comment"> * distributed under the License is distributed on an "AS IS" BASIS,</em>
<a name="13" href="#13">13</a>  <em class="jxr_comment"> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</em>
<a name="14" href="#14">14</a>  <em class="jxr_comment"> * See the License for the specific language governing permissions and</em>
<a name="15" href="#15">15</a>  <em class="jxr_comment"> * limitations under the License.</em>
<a name="16" href="#16">16</a>  <em class="jxr_comment"> */</em>
<a name="17" href="#17">17</a>  
<a name="18" href="#18">18</a>  <strong class="jxr_keyword">package</strong> org.apache.log4j.pattern;
<a name="19" href="#19">19</a>  
<a name="20" href="#20">20</a>  <strong class="jxr_keyword">import</strong> java.util.ArrayList;
<a name="21" href="#21">21</a>  <strong class="jxr_keyword">import</strong> java.util.List;
<a name="22" href="#22">22</a>  
<a name="23" href="#23">23</a>  
<a name="24" href="#24">24</a>  <em class="jxr_javadoccomment">/**</em>
<a name="25" href="#25">25</a>  <em class="jxr_javadoccomment"> * NameAbbreviator generates abbreviated logger and class names.</em>
<a name="26" href="#26">26</a>  <em class="jxr_javadoccomment"> *</em>
<a name="27" href="#27">27</a>  <em class="jxr_javadoccomment"> */</em>
<a name="28" href="#28">28</a>  <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">abstract</strong> <strong class="jxr_keyword">class</strong> <a href="../../../../org/apache/log4j/pattern/NameAbbreviator.html">NameAbbreviator</a> {
<a name="29" href="#29">29</a>    <em class="jxr_javadoccomment">/**</em>
<a name="30" href="#30">30</a>  <em class="jxr_javadoccomment">   * Default (no abbreviation) abbreviator.</em>
<a name="31" href="#31">31</a>  <em class="jxr_javadoccomment">   */</em>
<a name="32" href="#32">32</a>    <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> <a href="../../../../org/apache/log4j/pattern/NameAbbreviator.html">NameAbbreviator</a> DEFAULT = <strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/log4j/pattern/NameAbbreviator.html">NOPAbbreviator</a>();
<a name="33" href="#33">33</a>  
<a name="34" href="#34">34</a>    <em class="jxr_javadoccomment">/**</em>
<a name="35" href="#35">35</a>  <em class="jxr_javadoccomment">   * Gets an abbreviator.</em>
<a name="36" href="#36">36</a>  <em class="jxr_javadoccomment">   *</em>
<a name="37" href="#37">37</a>  <em class="jxr_javadoccomment">   * For example, "%logger{2}" will output only 2 elements of the logger name,</em>
<a name="38" href="#38">38</a>  <em class="jxr_javadoccomment">   * %logger{-2} will drop 2 elements from the logger name,</em>
<a name="39" href="#39">39</a>  <em class="jxr_javadoccomment">   * "%logger{1.}" will output only the first character of the non-final elements in the name,</em>
<a name="40" href="#40">40</a>  <em class="jxr_javadoccomment">   * "%logger{1~.2~} will output the first character of the first element, two characters of</em>
<a name="41" href="#41">41</a>  <em class="jxr_javadoccomment">   * the second and subsequent elements and will use a tilde to indicate abbreviated characters.</em>
<a name="42" href="#42">42</a>  <em class="jxr_javadoccomment">   *</em>
<a name="43" href="#43">43</a>  <em class="jxr_javadoccomment">   * @param pattern abbreviation pattern.</em>
<a name="44" href="#44">44</a>  <em class="jxr_javadoccomment">   * @return abbreviator, will not be null.</em>
<a name="45" href="#45">45</a>  <em class="jxr_javadoccomment">   */</em>
<a name="46" href="#46">46</a>    <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">static</strong> <a href="../../../../org/apache/log4j/pattern/NameAbbreviator.html">NameAbbreviator</a> getAbbreviator(<strong class="jxr_keyword">final</strong> String pattern) {
<a name="47" href="#47">47</a>      <strong class="jxr_keyword">if</strong> (pattern.length() &gt; 0) {
<a name="48" href="#48">48</a>        <em class="jxr_comment">//  if pattern is just spaces and numbers then</em>
<a name="49" href="#49">49</a>        <em class="jxr_comment">//     use MaxElementAbbreviator</em>
<a name="50" href="#50">50</a>        String trimmed = pattern.trim();
<a name="51" href="#51">51</a>  
<a name="52" href="#52">52</a>        <strong class="jxr_keyword">if</strong> (trimmed.length() == 0) {
<a name="53" href="#53">53</a>          <strong class="jxr_keyword">return</strong> DEFAULT;
<a name="54" href="#54">54</a>        }
<a name="55" href="#55">55</a>  
<a name="56" href="#56">56</a>        <strong class="jxr_keyword">int</strong> i = 0;
<a name="57" href="#57">57</a>        <strong class="jxr_keyword">if</strong> (trimmed.length() &gt; 0) {
<a name="58" href="#58">58</a>            <strong class="jxr_keyword">if</strong> (trimmed.charAt(0) == '-') {
<a name="59" href="#59">59</a>                i++;
<a name="60" href="#60">60</a>            }
<a name="61" href="#61">61</a>            <strong class="jxr_keyword">for</strong> (;
<a name="62" href="#62">62</a>                  (i &lt; trimmed.length()) &amp;&amp;
<a name="63" href="#63">63</a>                    (trimmed.charAt(i) &gt;= '0') &amp;&amp;
<a name="64" href="#64">64</a>                    (trimmed.charAt(i) &lt;= '9');
<a name="65" href="#65">65</a>                 i++) {
<a name="66" href="#66">66</a>            }
<a name="67" href="#67">67</a>        }
<a name="68" href="#68">68</a>  
<a name="69" href="#69">69</a>  
<a name="70" href="#70">70</a>        <em class="jxr_comment">//</em>
<a name="71" href="#71">71</a>        <em class="jxr_comment">//  if all blanks and digits</em>
<a name="72" href="#72">72</a>        <em class="jxr_comment">//</em>
<a name="73" href="#73">73</a>        <strong class="jxr_keyword">if</strong> (i == trimmed.length()) {
<a name="74" href="#74">74</a>          <strong class="jxr_keyword">int</strong> elements = Integer.parseInt(trimmed);
<a name="75" href="#75">75</a>          <strong class="jxr_keyword">if</strong> (elements &gt;= 0) {
<a name="76" href="#76">76</a>              <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/log4j/pattern/NameAbbreviator.html">MaxElementAbbreviator</a>(elements);
<a name="77" href="#77">77</a>          } <strong class="jxr_keyword">else</strong> {
<a name="78" href="#78">78</a>              <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/log4j/pattern/NameAbbreviator.html">DropElementAbbreviator</a>(-elements);
<a name="79" href="#79">79</a>          }
<a name="80" href="#80">80</a>        }
<a name="81" href="#81">81</a>  
<a name="82" href="#82">82</a>        ArrayList fragments = <strong class="jxr_keyword">new</strong> ArrayList(5);
<a name="83" href="#83">83</a>        <strong class="jxr_keyword">char</strong> ellipsis;
<a name="84" href="#84">84</a>        <strong class="jxr_keyword">int</strong> charCount;
<a name="85" href="#85">85</a>        <strong class="jxr_keyword">int</strong> pos = 0;
<a name="86" href="#86">86</a>  
<a name="87" href="#87">87</a>        <strong class="jxr_keyword">while</strong> ((pos &lt; trimmed.length()) &amp;&amp; (pos &gt;= 0)) {
<a name="88" href="#88">88</a>          <strong class="jxr_keyword">int</strong> ellipsisPos = pos;
<a name="89" href="#89">89</a>  
<a name="90" href="#90">90</a>          <strong class="jxr_keyword">if</strong> (trimmed.charAt(pos) == '*') {
<a name="91" href="#91">91</a>            charCount = Integer.MAX_VALUE;
<a name="92" href="#92">92</a>            ellipsisPos++;
<a name="93" href="#93">93</a>          } <strong class="jxr_keyword">else</strong> {
<a name="94" href="#94">94</a>            <strong class="jxr_keyword">if</strong> ((trimmed.charAt(pos) &gt;= '0') &amp;&amp; (trimmed.charAt(pos) &lt;= '9')) {
<a name="95" href="#95">95</a>              charCount = trimmed.charAt(pos) - '0';
<a name="96" href="#96">96</a>              ellipsisPos++;
<a name="97" href="#97">97</a>            } <strong class="jxr_keyword">else</strong> {
<a name="98" href="#98">98</a>              charCount = 0;
<a name="99" href="#99">99</a>            }
<a name="100" href="#100">100</a>         }
<a name="101" href="#101">101</a> 
<a name="102" href="#102">102</a>         ellipsis = '\0';
<a name="103" href="#103">103</a> 
<a name="104" href="#104">104</a>         <strong class="jxr_keyword">if</strong> (ellipsisPos &lt; trimmed.length()) {
<a name="105" href="#105">105</a>           ellipsis = trimmed.charAt(ellipsisPos);
<a name="106" href="#106">106</a> 
<a name="107" href="#107">107</a>           <strong class="jxr_keyword">if</strong> (ellipsis == '.') {
<a name="108" href="#108">108</a>             ellipsis = '\0';
<a name="109" href="#109">109</a>           }
<a name="110" href="#110">110</a>         }
<a name="111" href="#111">111</a> 
<a name="112" href="#112">112</a>         fragments.add(<strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/log4j/pattern/NameAbbreviator.html">PatternAbbreviatorFragment</a>(charCount, ellipsis));
<a name="113" href="#113">113</a>         pos = trimmed.indexOf(<span class="jxr_string">"."</span>, pos);
<a name="114" href="#114">114</a> 
<a name="115" href="#115">115</a>         <strong class="jxr_keyword">if</strong> (pos == -1) {
<a name="116" href="#116">116</a>           <strong class="jxr_keyword">break</strong>;
<a name="117" href="#117">117</a>         }
<a name="118" href="#118">118</a> 
<a name="119" href="#119">119</a>         pos++;
<a name="120" href="#120">120</a>       }
<a name="121" href="#121">121</a> 
<a name="122" href="#122">122</a>       <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/log4j/pattern/NameAbbreviator.html">PatternAbbreviator</a>(fragments);
<a name="123" href="#123">123</a>     }
<a name="124" href="#124">124</a> 
<a name="125" href="#125">125</a>     <em class="jxr_comment">//</em>
<a name="126" href="#126">126</a>     <em class="jxr_comment">//  no matching abbreviation, return defaultAbbreviator</em>
<a name="127" href="#127">127</a>     <em class="jxr_comment">//</em>
<a name="128" href="#128">128</a>     <strong class="jxr_keyword">return</strong> DEFAULT;
<a name="129" href="#129">129</a>   }
<a name="130" href="#130">130</a> 
<a name="131" href="#131">131</a>   <em class="jxr_javadoccomment">/**</em>
<a name="132" href="#132">132</a> <em class="jxr_javadoccomment">   * Gets default abbreviator.</em>
<a name="133" href="#133">133</a> <em class="jxr_javadoccomment">   *</em>
<a name="134" href="#134">134</a> <em class="jxr_javadoccomment">   * @return default abbreviator.</em>
<a name="135" href="#135">135</a> <em class="jxr_javadoccomment">   */</em>
<a name="136" href="#136">136</a>   <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">static</strong> <a href="../../../../org/apache/log4j/pattern/NameAbbreviator.html">NameAbbreviator</a> getDefaultAbbreviator() {
<a name="137" href="#137">137</a>     <strong class="jxr_keyword">return</strong> DEFAULT;
<a name="138" href="#138">138</a>   }
<a name="139" href="#139">139</a> 
<a name="140" href="#140">140</a>   <em class="jxr_javadoccomment">/**</em>
<a name="141" href="#141">141</a> <em class="jxr_javadoccomment">   * Abbreviates a name in a StringBuffer.</em>
<a name="142" href="#142">142</a> <em class="jxr_javadoccomment">   *</em>
<a name="143" href="#143">143</a> <em class="jxr_javadoccomment">   * @param nameStart starting position of name in buf.</em>
<a name="144" href="#144">144</a> <em class="jxr_javadoccomment">   * @param buf buffer, may not be null.</em>
<a name="145" href="#145">145</a> <em class="jxr_javadoccomment">   */</em>
<a name="146" href="#146">146</a>   <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">abstract</strong> <strong class="jxr_keyword">void</strong> abbreviate(<strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">int</strong> nameStart, <strong class="jxr_keyword">final</strong> StringBuffer buf);
<a name="147" href="#147">147</a> 
<a name="148" href="#148">148</a>   <em class="jxr_javadoccomment">/**</em>
<a name="149" href="#149">149</a> <em class="jxr_javadoccomment">   * Abbreviator that simply appends full name to buffer.</em>
<a name="150" href="#150">150</a> <em class="jxr_javadoccomment">   */</em>
<a name="151" href="#151">151</a>   <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">class</strong> <a href="../../../../org/apache/log4j/pattern/NameAbbreviator.html">NOPAbbreviator</a> <strong class="jxr_keyword">extends</strong> <a href="../../../../org/apache/log4j/pattern/NameAbbreviator.html">NameAbbreviator</a> {
<a name="152" href="#152">152</a>     <em class="jxr_javadoccomment">/**</em>
<a name="153" href="#153">153</a> <em class="jxr_javadoccomment">     * Constructor.</em>
<a name="154" href="#154">154</a> <em class="jxr_javadoccomment">     */</em>
<a name="155" href="#155">155</a>     <strong class="jxr_keyword">public</strong> <a href="../../../../org/apache/log4j/pattern/NameAbbreviator.html">NOPAbbreviator</a>() {
<a name="156" href="#156">156</a>     }
<a name="157" href="#157">157</a> 
<a name="158" href="#158">158</a>     <em class="jxr_javadoccomment">/**</em>
<a name="159" href="#159">159</a> <em class="jxr_javadoccomment">     * {@inheritDoc}</em>
<a name="160" href="#160">160</a> <em class="jxr_javadoccomment">     */</em>
<a name="161" href="#161">161</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> abbreviate(<strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">int</strong> nameStart, <strong class="jxr_keyword">final</strong> StringBuffer buf) {
<a name="162" href="#162">162</a>     }
<a name="163" href="#163">163</a>   }
<a name="164" href="#164">164</a> 
<a name="165" href="#165">165</a>   <em class="jxr_javadoccomment">/**</em>
<a name="166" href="#166">166</a> <em class="jxr_javadoccomment">   * Abbreviator that drops starting path elements.</em>
<a name="167" href="#167">167</a> <em class="jxr_javadoccomment">   */</em>
<a name="168" href="#168">168</a>   <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">class</strong> <a href="../../../../org/apache/log4j/pattern/NameAbbreviator.html">MaxElementAbbreviator</a> <strong class="jxr_keyword">extends</strong> <a href="../../../../org/apache/log4j/pattern/NameAbbreviator.html">NameAbbreviator</a> {
<a name="169" href="#169">169</a>     <em class="jxr_javadoccomment">/**</em>
<a name="170" href="#170">170</a> <em class="jxr_javadoccomment">     * Maximum number of path elements to output.</em>
<a name="171" href="#171">171</a> <em class="jxr_javadoccomment">     */</em>
<a name="172" href="#172">172</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">int</strong> count;
<a name="173" href="#173">173</a> 
<a name="174" href="#174">174</a>     <em class="jxr_javadoccomment">/**</em>
<a name="175" href="#175">175</a> <em class="jxr_javadoccomment">     * Create new instance.</em>
<a name="176" href="#176">176</a> <em class="jxr_javadoccomment">     * @param count maximum number of path elements to output.</em>
<a name="177" href="#177">177</a> <em class="jxr_javadoccomment">     */</em>
<a name="178" href="#178">178</a>     <strong class="jxr_keyword">public</strong> <a href="../../../../org/apache/log4j/pattern/NameAbbreviator.html">MaxElementAbbreviator</a>(<strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">int</strong> count) {
<a name="179" href="#179">179</a>       <strong class="jxr_keyword">this</strong>.count = count;
<a name="180" href="#180">180</a>     }
<a name="181" href="#181">181</a> 
<a name="182" href="#182">182</a>     <em class="jxr_javadoccomment">/**</em>
<a name="183" href="#183">183</a> <em class="jxr_javadoccomment">     * Abbreviate name.</em>
<a name="184" href="#184">184</a> <em class="jxr_javadoccomment">     * @param buf buffer to append abbreviation.</em>
<a name="185" href="#185">185</a> <em class="jxr_javadoccomment">     * @param nameStart start of name to abbreviate.</em>
<a name="186" href="#186">186</a> <em class="jxr_javadoccomment">     */</em>
<a name="187" href="#187">187</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> abbreviate(<strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">int</strong> nameStart, <strong class="jxr_keyword">final</strong> StringBuffer buf) {
<a name="188" href="#188">188</a>       <em class="jxr_comment">// We substract 1 from 'len' when assigning to 'end' to avoid out of</em>
<a name="189" href="#189">189</a>       <em class="jxr_comment">// bounds exception in return r.substring(end+1, len). This can happen if</em>
<a name="190" href="#190">190</a>       <em class="jxr_comment">// precision is 1 and the category name ends with a dot.</em>
<a name="191" href="#191">191</a>       <strong class="jxr_keyword">int</strong> end = buf.length() - 1;
<a name="192" href="#192">192</a> 
<a name="193" href="#193">193</a>       String bufString = buf.toString();
<a name="194" href="#194">194</a>       <strong class="jxr_keyword">for</strong> (<strong class="jxr_keyword">int</strong> i = count; i &gt; 0; i--) {
<a name="195" href="#195">195</a>         end = bufString.lastIndexOf(<span class="jxr_string">"."</span>, end - 1);
<a name="196" href="#196">196</a> 
<a name="197" href="#197">197</a>         <strong class="jxr_keyword">if</strong> ((end == -1) || (end &lt; nameStart)) {
<a name="198" href="#198">198</a>           <strong class="jxr_keyword">return</strong>;
<a name="199" href="#199">199</a>         }
<a name="200" href="#200">200</a>       }
<a name="201" href="#201">201</a> 
<a name="202" href="#202">202</a>       buf.delete(nameStart, end + 1);
<a name="203" href="#203">203</a>     }
<a name="204" href="#204">204</a>   }
<a name="205" href="#205">205</a> 
<a name="206" href="#206">206</a>   <em class="jxr_javadoccomment">/**</em>
<a name="207" href="#207">207</a> <em class="jxr_javadoccomment">   * Abbreviator that drops starting path elements.</em>
<a name="208" href="#208">208</a> <em class="jxr_javadoccomment">   */</em>
<a name="209" href="#209">209</a>   <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">class</strong> <a href="../../../../org/apache/log4j/pattern/NameAbbreviator.html">DropElementAbbreviator</a> <strong class="jxr_keyword">extends</strong> <a href="../../../../org/apache/log4j/pattern/NameAbbreviator.html">NameAbbreviator</a> {
<a name="210" href="#210">210</a>     <em class="jxr_javadoccomment">/**</em>
<a name="211" href="#211">211</a> <em class="jxr_javadoccomment">     * Maximum number of path elements to output.</em>
<a name="212" href="#212">212</a> <em class="jxr_javadoccomment">     */</em>
<a name="213" href="#213">213</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">int</strong> count;
<a name="214" href="#214">214</a> 
<a name="215" href="#215">215</a>     <em class="jxr_javadoccomment">/**</em>
<a name="216" href="#216">216</a> <em class="jxr_javadoccomment">     * Create new instance.</em>
<a name="217" href="#217">217</a> <em class="jxr_javadoccomment">     * @param count maximum number of path elements to output.</em>
<a name="218" href="#218">218</a> <em class="jxr_javadoccomment">     */</em>
<a name="219" href="#219">219</a>     <strong class="jxr_keyword">public</strong> <a href="../../../../org/apache/log4j/pattern/NameAbbreviator.html">DropElementAbbreviator</a>(<strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">int</strong> count) {
<a name="220" href="#220">220</a>       <strong class="jxr_keyword">this</strong>.count = count;
<a name="221" href="#221">221</a>     }
<a name="222" href="#222">222</a> 
<a name="223" href="#223">223</a>     <em class="jxr_javadoccomment">/**</em>
<a name="224" href="#224">224</a> <em class="jxr_javadoccomment">     * Abbreviate name.</em>
<a name="225" href="#225">225</a> <em class="jxr_javadoccomment">     * @param buf buffer to append abbreviation.</em>
<a name="226" href="#226">226</a> <em class="jxr_javadoccomment">     * @param nameStart start of name to abbreviate.</em>
<a name="227" href="#227">227</a> <em class="jxr_javadoccomment">     */</em>
<a name="228" href="#228">228</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> abbreviate(<strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">int</strong> nameStart, <strong class="jxr_keyword">final</strong> StringBuffer buf) {
<a name="229" href="#229">229</a>       <strong class="jxr_keyword">int</strong> i = count;
<a name="230" href="#230">230</a>       <strong class="jxr_keyword">for</strong>(<strong class="jxr_keyword">int</strong> pos = buf.indexOf(<span class="jxr_string">"."</span>, nameStart);
<a name="231" href="#231">231</a>         pos != -1;
<a name="232" href="#232">232</a>         pos = buf.indexOf(<span class="jxr_string">"."</span>, pos + 1)) {
<a name="233" href="#233">233</a>           <strong class="jxr_keyword">if</strong>(--i == 0) {
<a name="234" href="#234">234</a>               buf.delete(nameStart, pos + 1);
<a name="235" href="#235">235</a>               <strong class="jxr_keyword">break</strong>;
<a name="236" href="#236">236</a>           }
<a name="237" href="#237">237</a>       }
<a name="238" href="#238">238</a>     }
<a name="239" href="#239">239</a>   }
<a name="240" href="#240">240</a> 
<a name="241" href="#241">241</a> 
<a name="242" href="#242">242</a>   <em class="jxr_javadoccomment">/**</em>
<a name="243" href="#243">243</a> <em class="jxr_javadoccomment">   * Fragment of an pattern abbreviator.</em>
<a name="244" href="#244">244</a> <em class="jxr_javadoccomment">   *</em>
<a name="245" href="#245">245</a> <em class="jxr_javadoccomment">   */</em>
<a name="246" href="#246">246</a>   <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">class</strong> <a href="../../../../org/apache/log4j/pattern/NameAbbreviator.html">PatternAbbreviatorFragment</a> {
<a name="247" href="#247">247</a>     <em class="jxr_javadoccomment">/**</em>
<a name="248" href="#248">248</a> <em class="jxr_javadoccomment">     * Count of initial characters of element to output.</em>
<a name="249" href="#249">249</a> <em class="jxr_javadoccomment">     */</em>
<a name="250" href="#250">250</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">int</strong> charCount;
<a name="251" href="#251">251</a> 
<a name="252" href="#252">252</a>     <em class="jxr_javadoccomment">/**</em>
<a name="253" href="#253">253</a> <em class="jxr_javadoccomment">     *  Character used to represent dropped characters.</em>
<a name="254" href="#254">254</a> <em class="jxr_javadoccomment">     * '\0' indicates no representation of dropped characters.</em>
<a name="255" href="#255">255</a> <em class="jxr_javadoccomment">     */</em>
<a name="256" href="#256">256</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">char</strong> ellipsis;
<a name="257" href="#257">257</a> 
<a name="258" href="#258">258</a>     <em class="jxr_javadoccomment">/**</em>
<a name="259" href="#259">259</a> <em class="jxr_javadoccomment">     * Creates a PatternAbbreviatorFragment.</em>
<a name="260" href="#260">260</a> <em class="jxr_javadoccomment">     * @param charCount number of initial characters to preserve.</em>
<a name="261" href="#261">261</a> <em class="jxr_javadoccomment">     * @param ellipsis character to represent elimination of characters,</em>
<a name="262" href="#262">262</a> <em class="jxr_javadoccomment">     *    '\0' if no ellipsis is desired.</em>
<a name="263" href="#263">263</a> <em class="jxr_javadoccomment">     */</em>
<a name="264" href="#264">264</a>     <strong class="jxr_keyword">public</strong> <a href="../../../../org/apache/log4j/pattern/NameAbbreviator.html">PatternAbbreviatorFragment</a>(
<a name="265" href="#265">265</a>       <strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">int</strong> charCount, <strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">char</strong> ellipsis) {
<a name="266" href="#266">266</a>       <strong class="jxr_keyword">this</strong>.charCount = charCount;
<a name="267" href="#267">267</a>       <strong class="jxr_keyword">this</strong>.ellipsis = ellipsis;
<a name="268" href="#268">268</a>     }
<a name="269" href="#269">269</a> 
<a name="270" href="#270">270</a>     <em class="jxr_javadoccomment">/**</em>
<a name="271" href="#271">271</a> <em class="jxr_javadoccomment">     * Abbreviate element of name.</em>
<a name="272" href="#272">272</a> <em class="jxr_javadoccomment">     * @param buf buffer to receive element.</em>
<a name="273" href="#273">273</a> <em class="jxr_javadoccomment">     * @param startPos starting index of name element.</em>
<a name="274" href="#274">274</a> <em class="jxr_javadoccomment">     * @return starting index of next element.</em>
<a name="275" href="#275">275</a> <em class="jxr_javadoccomment">     */</em>
<a name="276" href="#276">276</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">int</strong> abbreviate(<strong class="jxr_keyword">final</strong> StringBuffer buf, <strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">int</strong> startPos) {
<a name="277" href="#277">277</a>       <strong class="jxr_keyword">int</strong> nextDot = buf.toString().indexOf(<span class="jxr_string">"."</span>, startPos);
<a name="278" href="#278">278</a> 
<a name="279" href="#279">279</a>       <strong class="jxr_keyword">if</strong> (nextDot != -1) {
<a name="280" href="#280">280</a>         <strong class="jxr_keyword">if</strong> ((nextDot - startPos) &gt; charCount) {
<a name="281" href="#281">281</a>           buf.delete(startPos + charCount, nextDot);
<a name="282" href="#282">282</a>           nextDot = startPos + charCount;
<a name="283" href="#283">283</a> 
<a name="284" href="#284">284</a>           <strong class="jxr_keyword">if</strong> (ellipsis != '\0') {
<a name="285" href="#285">285</a>             buf.insert(nextDot, ellipsis);
<a name="286" href="#286">286</a>             nextDot++;
<a name="287" href="#287">287</a>           }
<a name="288" href="#288">288</a>         }
<a name="289" href="#289">289</a> 
<a name="290" href="#290">290</a>         nextDot++;
<a name="291" href="#291">291</a>       }
<a name="292" href="#292">292</a> 
<a name="293" href="#293">293</a>       <strong class="jxr_keyword">return</strong> nextDot;
<a name="294" href="#294">294</a>     }
<a name="295" href="#295">295</a>   }
<a name="296" href="#296">296</a> 
<a name="297" href="#297">297</a>   <em class="jxr_javadoccomment">/**</em>
<a name="298" href="#298">298</a> <em class="jxr_javadoccomment">   * Pattern abbreviator.</em>
<a name="299" href="#299">299</a> <em class="jxr_javadoccomment">   *</em>
<a name="300" href="#300">300</a> <em class="jxr_javadoccomment">   *</em>
<a name="301" href="#301">301</a> <em class="jxr_javadoccomment">   */</em>
<a name="302" href="#302">302</a>   <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">class</strong> <a href="../../../../org/apache/log4j/pattern/NameAbbreviator.html">PatternAbbreviator</a> <strong class="jxr_keyword">extends</strong> <a href="../../../../org/apache/log4j/pattern/NameAbbreviator.html">NameAbbreviator</a> {
<a name="303" href="#303">303</a>     <em class="jxr_javadoccomment">/**</em>
<a name="304" href="#304">304</a> <em class="jxr_javadoccomment">     * Element abbreviation patterns.</em>
<a name="305" href="#305">305</a> <em class="jxr_javadoccomment">     */</em>
<a name="306" href="#306">306</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> <a href="../../../../org/apache/log4j/pattern/NameAbbreviator.html">PatternAbbreviatorFragment</a>[] fragments;
<a name="307" href="#307">307</a> 
<a name="308" href="#308">308</a>     <em class="jxr_javadoccomment">/**</em>
<a name="309" href="#309">309</a> <em class="jxr_javadoccomment">     * Create PatternAbbreviator.</em>
<a name="310" href="#310">310</a> <em class="jxr_javadoccomment">     *</em>
<a name="311" href="#311">311</a> <em class="jxr_javadoccomment">     * @param fragments element abbreviation patterns.</em>
<a name="312" href="#312">312</a> <em class="jxr_javadoccomment">     */</em>
<a name="313" href="#313">313</a>     <strong class="jxr_keyword">public</strong> <a href="../../../../org/apache/log4j/pattern/NameAbbreviator.html">PatternAbbreviator</a>(List fragments) {
<a name="314" href="#314">314</a>       <strong class="jxr_keyword">if</strong> (fragments.size() == 0) {
<a name="315" href="#315">315</a>         <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> IllegalArgumentException(
<a name="316" href="#316">316</a>           <span class="jxr_string">"fragments must have at least one element"</span>);
<a name="317" href="#317">317</a>       }
<a name="318" href="#318">318</a> 
<a name="319" href="#319">319</a>       <strong class="jxr_keyword">this</strong>.fragments = <strong class="jxr_keyword">new</strong> <a href="../../../../org/apache/log4j/pattern/NameAbbreviator.html">PatternAbbreviatorFragment</a>[fragments.size()];
<a name="320" href="#320">320</a>       fragments.toArray(<strong class="jxr_keyword">this</strong>.fragments);
<a name="321" href="#321">321</a>     }
<a name="322" href="#322">322</a> 
<a name="323" href="#323">323</a>     <em class="jxr_javadoccomment">/**</em>
<a name="324" href="#324">324</a> <em class="jxr_javadoccomment">     * Abbreviate name.</em>
<a name="325" href="#325">325</a> <em class="jxr_javadoccomment">     * @param buf buffer that abbreviated name is appended.</em>
<a name="326" href="#326">326</a> <em class="jxr_javadoccomment">     * @param nameStart start of name.</em>
<a name="327" href="#327">327</a> <em class="jxr_javadoccomment">     */</em>
<a name="328" href="#328">328</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> abbreviate(<strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">int</strong> nameStart, <strong class="jxr_keyword">final</strong> StringBuffer buf) {
<a name="329" href="#329">329</a>       <em class="jxr_comment">//</em>
<a name="330" href="#330">330</a>       <em class="jxr_comment">//  all non-terminal patterns are executed once</em>
<a name="331" href="#331">331</a>       <em class="jxr_comment">//</em>
<a name="332" href="#332">332</a>       <strong class="jxr_keyword">int</strong> pos = nameStart;
<a name="333" href="#333">333</a> 
<a name="334" href="#334">334</a>       <strong class="jxr_keyword">for</strong> (<strong class="jxr_keyword">int</strong> i = 0; (i &lt; (fragments.length - 1)) &amp;&amp; (pos &lt; buf.length());
<a name="335" href="#335">335</a>           i++) {
<a name="336" href="#336">336</a>         pos = fragments[i].abbreviate(buf, pos);
<a name="337" href="#337">337</a>       }
<a name="338" href="#338">338</a> 
<a name="339" href="#339">339</a>       <em class="jxr_comment">//</em>
<a name="340" href="#340">340</a>       <em class="jxr_comment">//   last pattern in executed repeatedly</em>
<a name="341" href="#341">341</a>       <em class="jxr_comment">//</em>
<a name="342" href="#342">342</a>       <a href="../../../../org/apache/log4j/pattern/NameAbbreviator.html">PatternAbbreviatorFragment</a> terminalFragment =
<a name="343" href="#343">343</a>         fragments[fragments.length - 1];
<a name="344" href="#344">344</a> 
<a name="345" href="#345">345</a>       <strong class="jxr_keyword">while</strong> ((pos &lt; buf.length()) &amp;&amp; (pos &gt;= 0)) {
<a name="346" href="#346">346</a>         pos = terminalFragment.abbreviate(buf, pos);
<a name="347" href="#347">347</a>       }
<a name="348" href="#348">348</a>     }
<a name="349" href="#349">349</a>   }
<a name="350" href="#350">350</a> }
</pre>
<hr/><div id="footer">This page was automatically generated by <a href="http://maven.apache.org/">Maven</a></div></body>
</html>

