<!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>BaselinePlugin xref</title>
<link type="text/css" rel="stylesheet" href="../../../../../stylesheet.css" />
</head>
<body>
<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</em>
<a name="3" href="#3">3</a>   <em class="jxr_comment"> * or more contributor license agreements.  See the NOTICE file</em>
<a name="4" href="#4">4</a>   <em class="jxr_comment"> * distributed with this work for additional information</em>
<a name="5" href="#5">5</a>   <em class="jxr_comment"> * regarding copyright ownership.  The ASF licenses this file</em>
<a name="6" href="#6">6</a>   <em class="jxr_comment"> * to you under the Apache License, Version 2.0 (the</em>
<a name="7" href="#7">7</a>   <em class="jxr_comment"> * "License"); you may not use this file except in compliance</em>
<a name="8" href="#8">8</a>   <em class="jxr_comment"> * with the License.  You may obtain a copy of the License at</em>
<a name="9" href="#9">9</a>   <em class="jxr_comment"> *</em>
<a name="10" href="#10">10</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="11" href="#11">11</a>  <em class="jxr_comment"> *</em>
<a name="12" href="#12">12</a>  <em class="jxr_comment"> * Unless required by applicable law or agreed to in writing,</em>
<a name="13" href="#13">13</a>  <em class="jxr_comment"> * software distributed under the License is distributed on an</em>
<a name="14" href="#14">14</a>  <em class="jxr_comment"> * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY</em>
<a name="15" href="#15">15</a>  <em class="jxr_comment"> * KIND, either express or implied.  See the License for the</em>
<a name="16" href="#16">16</a>  <em class="jxr_comment"> * specific language governing permissions and limitations</em>
<a name="17" href="#17">17</a>  <em class="jxr_comment"> * under the License.</em>
<a name="18" href="#18">18</a>  <em class="jxr_comment"> */</em>
<a name="19" href="#19">19</a>  <strong class="jxr_keyword">package</strong> org.apache.felix.bundleplugin.baseline;
<a name="20" href="#20">20</a>  
<a name="21" href="#21">21</a>  <strong class="jxr_keyword">import</strong> java.io.File;
<a name="22" href="#22">22</a>  <strong class="jxr_keyword">import</strong> java.io.FileWriter;
<a name="23" href="#23">23</a>  <strong class="jxr_keyword">import</strong> java.io.IOException;
<a name="24" href="#24">24</a>  <strong class="jxr_keyword">import</strong> java.util.Map;
<a name="25" href="#25">25</a>  <strong class="jxr_keyword">import</strong> java.util.Map.Entry;
<a name="26" href="#26">26</a>  
<a name="27" href="#27">27</a>  <strong class="jxr_keyword">import</strong> org.codehaus.plexus.util.IOUtil;
<a name="28" href="#28">28</a>  <strong class="jxr_keyword">import</strong> org.codehaus.plexus.util.xml.PrettyPrintXMLWriter;
<a name="29" href="#29">29</a>  
<a name="30" href="#30">30</a>  <em class="jxr_javadoccomment">/**</em>
<a name="31" href="#31">31</a>  <em class="jxr_javadoccomment"> * BND Baseline check between two bundles.</em>
<a name="32" href="#32">32</a>  <em class="jxr_javadoccomment"> *</em>
<a name="33" href="#33">33</a>  <em class="jxr_javadoccomment"> * @goal baseline</em>
<a name="34" href="#34">34</a>  <em class="jxr_javadoccomment"> * @phase verify</em>
<a name="35" href="#35">35</a>  <em class="jxr_javadoccomment"> * @threadSafe true</em>
<a name="36" href="#36">36</a>  <em class="jxr_javadoccomment"> * @since 2.4.1</em>
<a name="37" href="#37">37</a>  <em class="jxr_javadoccomment"> */</em>
<a name="38" href="#38">38</a>  <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">class</strong> <a href="../../../../../org/apache/felix/bundleplugin/baseline/BaselinePlugin.html">BaselinePlugin</a>
<a name="39" href="#39">39</a>      <strong class="jxr_keyword">extends</strong> <a href="../../../../../org/apache/felix/bundleplugin/baseline/AbstractBaselinePlugin.html">AbstractBaselinePlugin</a>
<a name="40" href="#40">40</a>  {
<a name="41" href="#41">41</a>  
<a name="42" href="#42">42</a>      <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> String TABLE_PATTERN = <span class="jxr_string">"%s %-50s %-10s %-10s %-10s %-10s %-10s"</span>;
<a name="43" href="#43">43</a>  
<a name="44" href="#44">44</a>      <em class="jxr_javadoccomment">/**</em>
<a name="45" href="#45">45</a>  <em class="jxr_javadoccomment">     * An XML output file to render to &lt;code&gt;${project.build.directory}/baseline.xml&lt;/code&gt;.</em>
<a name="46" href="#46">46</a>  <em class="jxr_javadoccomment">     *</em>
<a name="47" href="#47">47</a>  <em class="jxr_javadoccomment">     * @parameter expression="${project.build.directory}/baseline.xml"</em>
<a name="48" href="#48">48</a>  <em class="jxr_javadoccomment">     */</em>
<a name="49" href="#49">49</a>      <strong class="jxr_keyword">private</strong> File xmlOutputFile;
<a name="50" href="#50">50</a>  
<a name="51" href="#51">51</a>      <em class="jxr_javadoccomment">/**</em>
<a name="52" href="#52">52</a>  <em class="jxr_javadoccomment">     * Whether to log the results to the console or not, true by default.</em>
<a name="53" href="#53">53</a>  <em class="jxr_javadoccomment">     *</em>
<a name="54" href="#54">54</a>  <em class="jxr_javadoccomment">     * @parameter expression="${logResults}" default-value="true"</em>
<a name="55" href="#55">55</a>  <em class="jxr_javadoccomment">     */</em>
<a name="56" href="#56">56</a>      <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">boolean</strong> logResults;
<a name="57" href="#57">57</a>  
<a name="58" href="#58">58</a>      <strong class="jxr_keyword">private</strong> FileWriter xmlFileWriter;
<a name="59" href="#59">59</a>  
<a name="60" href="#60">60</a>      <strong class="jxr_keyword">private</strong> PrettyPrintXMLWriter xmlWriter;
<a name="61" href="#61">61</a>  
<a name="62" href="#62">62</a>      <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">void</strong> init()
<a name="63" href="#63">63</a>      {
<a name="64" href="#64">64</a>          <strong class="jxr_keyword">if</strong> ( xmlOutputFile != <strong class="jxr_keyword">null</strong> )
<a name="65" href="#65">65</a>          {
<a name="66" href="#66">66</a>              xmlOutputFile.getParentFile().mkdirs();
<a name="67" href="#67">67</a>              <strong class="jxr_keyword">try</strong>
<a name="68" href="#68">68</a>              {
<a name="69" href="#69">69</a>                  xmlFileWriter = <strong class="jxr_keyword">new</strong> FileWriter( xmlOutputFile );
<a name="70" href="#70">70</a>                  xmlWriter = <strong class="jxr_keyword">new</strong> PrettyPrintXMLWriter( xmlFileWriter );
<a name="71" href="#71">71</a>              }
<a name="72" href="#72">72</a>              <strong class="jxr_keyword">catch</strong> ( IOException e )
<a name="73" href="#73">73</a>              {
<a name="74" href="#74">74</a>                  getLog().warn( <span class="jxr_string">"No XML report will be produced, cannot write data to "</span> + xmlOutputFile, e );
<a name="75" href="#75">75</a>              }
<a name="76" href="#76">76</a>          }
<a name="77" href="#77">77</a>      }
<a name="78" href="#78">78</a>  
<a name="79" href="#79">79</a>      <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">void</strong> startBaseline( String generationDate,
<a name="80" href="#80">80</a>                                    String bundleName,
<a name="81" href="#81">81</a>                                    String currentVersion,
<a name="82" href="#82">82</a>                                    String previousVersion )
<a name="83" href="#83">83</a>      {
<a name="84" href="#84">84</a>          <strong class="jxr_keyword">if</strong> ( isLoggingResults() )
<a name="85" href="#85">85</a>          {
<a name="86" href="#86">86</a>              log( <span class="jxr_string">"Baseline Report - Generated by Apache Felix Maven Bundle Plugin on %s based on Bnd - see http://www.aqute.biz/Bnd/Bnd"</span>,
<a name="87" href="#87">87</a>                   generationDate );
<a name="88" href="#88">88</a>              log( <span class="jxr_string">"Comparing bundle %s version %s to version %s"</span>, bundleName, currentVersion, previousVersion );
<a name="89" href="#89">89</a>              log( <span class="jxr_string">""</span> );
<a name="90" href="#90">90</a>              log( TABLE_PATTERN,
<a name="91" href="#91">91</a>                   <span class="jxr_string">" "</span>,
<a name="92" href="#92">92</a>                   <span class="jxr_string">"PACKAGE_NAME"</span>,
<a name="93" href="#93">93</a>                   <span class="jxr_string">"DELTA"</span>,
<a name="94" href="#94">94</a>                   <span class="jxr_string">"CUR_VER"</span>,
<a name="95" href="#95">95</a>                   <span class="jxr_string">"BASE_VER"</span>,
<a name="96" href="#96">96</a>                   <span class="jxr_string">"REC_VER"</span>,
<a name="97" href="#97">97</a>                   <span class="jxr_string">"WARNINGS"</span>,
<a name="98" href="#98">98</a>                   <span class="jxr_string">"ATTRIBUTES"</span> );
<a name="99" href="#99">99</a>              log( TABLE_PATTERN,
<a name="100" href="#100">100</a>                  <span class="jxr_string">"="</span>,
<a name="101" href="#101">101</a>                  <span class="jxr_string">"=================================================="</span>,
<a name="102" href="#102">102</a>                  <span class="jxr_string">"=========="</span>,
<a name="103" href="#103">103</a>                  <span class="jxr_string">"=========="</span>,
<a name="104" href="#104">104</a>                  <span class="jxr_string">"=========="</span>,
<a name="105" href="#105">105</a>                  <span class="jxr_string">"=========="</span>,
<a name="106" href="#106">106</a>                  <span class="jxr_string">"=========="</span>,
<a name="107" href="#107">107</a>                  <span class="jxr_string">"=========="</span> );
<a name="108" href="#108">108</a>         }
<a name="109" href="#109">109</a> 
<a name="110" href="#110">110</a>         <strong class="jxr_keyword">if</strong> ( isProducingXml() )
<a name="111" href="#111">111</a>         {
<a name="112" href="#112">112</a>             xmlWriter.startElement( <span class="jxr_string">"baseline"</span> );
<a name="113" href="#113">113</a>             xmlWriter.addAttribute( <span class="jxr_string">"version"</span>, <span class="jxr_string">"1.0.0"</span> );
<a name="114" href="#114">114</a>             xmlWriter.addAttribute( <span class="jxr_string">"vendor"</span>, <span class="jxr_string">"The Apache Software Foundation"</span> );
<a name="115" href="#115">115</a>             xmlWriter.addAttribute( <span class="jxr_string">"vendorURL"</span>, <span class="jxr_string">"http://www.apache.org/"</span> );
<a name="116" href="#116">116</a>             xmlWriter.addAttribute( <span class="jxr_string">"generator"</span>, <span class="jxr_string">"Apache Felix Maven Bundle Plugin"</span> );
<a name="117" href="#117">117</a>             xmlWriter.addAttribute( <span class="jxr_string">"generatorURL"</span>, <span class="jxr_string">"http://felix.apache.org/site/apache-felix-maven-bundle-plugin-bnd.html"</span> );
<a name="118" href="#118">118</a>             xmlWriter.addAttribute( <span class="jxr_string">"analyzer"</span>, <span class="jxr_string">"Bnd"</span> );
<a name="119" href="#119">119</a>             xmlWriter.addAttribute( <span class="jxr_string">"analyzerURL"</span>, <span class="jxr_string">"http://www.aqute.biz/Bnd/Bnd"</span> );
<a name="120" href="#120">120</a>             xmlWriter.addAttribute( <span class="jxr_string">"generatedOn"</span>, generationDate );
<a name="121" href="#121">121</a>             xmlWriter.addAttribute( <span class="jxr_string">"bundleName"</span>, bundleName );
<a name="122" href="#122">122</a>             xmlWriter.addAttribute( <span class="jxr_string">"currentVersion"</span>, currentVersion );
<a name="123" href="#123">123</a>             xmlWriter.addAttribute( <span class="jxr_string">"previousVersion"</span>, previousVersion );
<a name="124" href="#124">124</a>         }
<a name="125" href="#125">125</a>     }
<a name="126" href="#126">126</a> 
<a name="127" href="#127">127</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">void</strong> startPackage( <strong class="jxr_keyword">boolean</strong> mismatch,
<a name="128" href="#128">128</a>                                  String name,
<a name="129" href="#129">129</a>                                  String shortDelta,
<a name="130" href="#130">130</a>                                  String delta,
<a name="131" href="#131">131</a>                                  String newerVersion,
<a name="132" href="#132">132</a>                                  String olderVersion,
<a name="133" href="#133">133</a>                                  String suggestedVersion,
<a name="134" href="#134">134</a>                                  <a href="../../../../../org/apache/felix/bundleplugin/baseline/DiffMessage.html">DiffMessage</a> diffMessage,
<a name="135" href="#135">135</a>                                  Map&lt;String,String&gt; attributes )
<a name="136" href="#136">136</a>     {
<a name="137" href="#137">137</a>         <strong class="jxr_keyword">if</strong> ( isLoggingResults() )
<a name="138" href="#138">138</a>         {
<a name="139" href="#139">139</a>             log( TABLE_PATTERN,
<a name="140" href="#140">140</a>                  mismatch ? '*' : shortDelta,
<a name="141" href="#141">141</a>                  name,
<a name="142" href="#142">142</a>                  delta,
<a name="143" href="#143">143</a>                  newerVersion,
<a name="144" href="#144">144</a>                  olderVersion,
<a name="145" href="#145">145</a>                  suggestedVersion,
<a name="146" href="#146">146</a>                  diffMessage != <strong class="jxr_keyword">null</strong> ? diffMessage : '-',
<a name="147" href="#147">147</a>                  attributes );
<a name="148" href="#148">148</a>         }
<a name="149" href="#149">149</a> 
<a name="150" href="#150">150</a>         <strong class="jxr_keyword">if</strong> ( isProducingXml() )
<a name="151" href="#151">151</a>         {
<a name="152" href="#152">152</a>             xmlWriter.startElement( <span class="jxr_string">"package"</span> );
<a name="153" href="#153">153</a>             xmlWriter.addAttribute( <span class="jxr_string">"name"</span>, name );
<a name="154" href="#154">154</a>             xmlWriter.addAttribute( <span class="jxr_string">"delta"</span>, delta );
<a name="155" href="#155">155</a>             simpleElement( <span class="jxr_string">"mismatch"</span>, String.valueOf( mismatch ) );
<a name="156" href="#156">156</a>             simpleElement( <span class="jxr_string">"newerVersion"</span>, newerVersion );
<a name="157" href="#157">157</a>             simpleElement( <span class="jxr_string">"olderVersion"</span>, olderVersion );
<a name="158" href="#158">158</a>             simpleElement( <span class="jxr_string">"suggestedVersion"</span>, suggestedVersion );
<a name="159" href="#159">159</a> 
<a name="160" href="#160">160</a>             <strong class="jxr_keyword">if</strong> ( diffMessage != <strong class="jxr_keyword">null</strong> )
<a name="161" href="#161">161</a>             {
<a name="162" href="#162">162</a>                 simpleElement( diffMessage.getType().name(), diffMessage.getMessage() );
<a name="163" href="#163">163</a>             }
<a name="164" href="#164">164</a> 
<a name="165" href="#165">165</a>             xmlWriter.startElement( <span class="jxr_string">"attributes"</span> );
<a name="166" href="#166">166</a>             <strong class="jxr_keyword">if</strong> (attributes != <strong class="jxr_keyword">null</strong>)
<a name="167" href="#167">167</a>             {
<a name="168" href="#168">168</a>                 <strong class="jxr_keyword">for</strong> (Entry&lt;String, String&gt; attribute : attributes.entrySet())
<a name="169" href="#169">169</a>                 {
<a name="170" href="#170">170</a>                     String attributeName = attribute.getKey();
<a name="171" href="#171">171</a>                     <strong class="jxr_keyword">if</strong> (':' == attributeName.charAt(attributeName.length() - 1))
<a name="172" href="#172">172</a>                     {
<a name="173" href="#173">173</a>                         attributeName = attributeName.substring(0, attributeName.length() - 1);
<a name="174" href="#174">174</a>                     }
<a name="175" href="#175">175</a>                     String attributeValue = attribute.getValue();
<a name="176" href="#176">176</a> 
<a name="177" href="#177">177</a>                     xmlWriter.startElement(attributeName);
<a name="178" href="#178">178</a>                     xmlWriter.writeText(attributeValue);
<a name="179" href="#179">179</a>                     xmlWriter.endElement();
<a name="180" href="#180">180</a>                 }
<a name="181" href="#181">181</a>             }
<a name="182" href="#182">182</a>             xmlWriter.endElement();
<a name="183" href="#183">183</a>         }
<a name="184" href="#184">184</a>     }
<a name="185" href="#185">185</a> 
<a name="186" href="#186">186</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">void</strong> startDiff( <strong class="jxr_keyword">int</strong> depth, String type, String name, String delta, String shortDelta )
<a name="187" href="#187">187</a>     {
<a name="188" href="#188">188</a>         <strong class="jxr_keyword">if</strong> ( isLoggingResults() )
<a name="189" href="#189">189</a>         {
<a name="190" href="#190">190</a>             log( <span class="jxr_string">"%-"</span> + (depth * 4) + <span class="jxr_string">"s %s %s %s"</span>,
<a name="191" href="#191">191</a>                  <span class="jxr_string">""</span>,
<a name="192" href="#192">192</a>                  shortDelta,
<a name="193" href="#193">193</a>                  type,
<a name="194" href="#194">194</a>                  name );
<a name="195" href="#195">195</a>         }
<a name="196" href="#196">196</a> 
<a name="197" href="#197">197</a>         <strong class="jxr_keyword">if</strong> ( isProducingXml() )
<a name="198" href="#198">198</a>         {
<a name="199" href="#199">199</a>             xmlWriter.startElement( type );
<a name="200" href="#200">200</a>             xmlWriter.addAttribute( <span class="jxr_string">"name"</span>, name );
<a name="201" href="#201">201</a>             xmlWriter.addAttribute( <span class="jxr_string">"delta"</span>, delta );
<a name="202" href="#202">202</a>         }
<a name="203" href="#203">203</a>     }
<a name="204" href="#204">204</a> 
<a name="205" href="#205">205</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">void</strong> endDiff( <strong class="jxr_keyword">int</strong> depth )
<a name="206" href="#206">206</a>     {
<a name="207" href="#207">207</a>         <strong class="jxr_keyword">if</strong> ( isProducingXml() )
<a name="208" href="#208">208</a>         {
<a name="209" href="#209">209</a>             xmlWriter.endElement();
<a name="210" href="#210">210</a>         }
<a name="211" href="#211">211</a>     }
<a name="212" href="#212">212</a> 
<a name="213" href="#213">213</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">void</strong> endPackage()
<a name="214" href="#214">214</a>     {
<a name="215" href="#215">215</a>         <strong class="jxr_keyword">if</strong> ( isLoggingResults() )
<a name="216" href="#216">216</a>         {
<a name="217" href="#217">217</a>             log( <span class="jxr_string">"-----------------------------------------------------------------------------------------------------------"</span> );
<a name="218" href="#218">218</a>         }
<a name="219" href="#219">219</a> 
<a name="220" href="#220">220</a>         <strong class="jxr_keyword">if</strong> ( isProducingXml() )
<a name="221" href="#221">221</a>         {
<a name="222" href="#222">222</a>             xmlWriter.endElement();
<a name="223" href="#223">223</a>         }
<a name="224" href="#224">224</a>     }
<a name="225" href="#225">225</a> 
<a name="226" href="#226">226</a>     <strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">void</strong> endBaseline()
<a name="227" href="#227">227</a>     {
<a name="228" href="#228">228</a>         <strong class="jxr_keyword">if</strong> ( xmlWriter != <strong class="jxr_keyword">null</strong> )
<a name="229" href="#229">229</a>         {
<a name="230" href="#230">230</a>             xmlWriter.endElement();
<a name="231" href="#231">231</a>             IOUtil.close( xmlFileWriter );
<a name="232" href="#232">232</a>         }
<a name="233" href="#233">233</a>     }
<a name="234" href="#234">234</a> 
<a name="235" href="#235">235</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">boolean</strong> isProducingXml()
<a name="236" href="#236">236</a>     {
<a name="237" href="#237">237</a>         <strong class="jxr_keyword">return</strong> xmlFileWriter!= <strong class="jxr_keyword">null</strong> &amp;&amp; xmlWriter != <strong class="jxr_keyword">null</strong>;
<a name="238" href="#238">238</a>     }
<a name="239" href="#239">239</a> 
<a name="240" href="#240">240</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">boolean</strong> isLoggingResults()
<a name="241" href="#241">241</a>     {
<a name="242" href="#242">242</a>         <strong class="jxr_keyword">return</strong> logResults &amp;&amp; getLog().isInfoEnabled();
<a name="243" href="#243">243</a>     }
<a name="244" href="#244">244</a> 
<a name="245" href="#245">245</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">void</strong> log( String format, Object...args )
<a name="246" href="#246">246</a>     {
<a name="247" href="#247">247</a>         getLog().info( String.format( format, args ) );
<a name="248" href="#248">248</a>     }
<a name="249" href="#249">249</a> 
<a name="250" href="#250">250</a>     <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">void</strong> simpleElement( String name, String value )
<a name="251" href="#251">251</a>     {
<a name="252" href="#252">252</a>         xmlWriter.startElement( name );
<a name="253" href="#253">253</a>         xmlWriter.writeText( value );
<a name="254" href="#254">254</a>         xmlWriter.endElement();
<a name="255" href="#255">255</a>     }
<a name="256" href="#256">256</a> 
<a name="257" href="#257">257</a> }
</pre>
<hr/><div id="footer">This page was automatically generated by <a href="http://maven.apache.org/">Maven</a></div></body>
</html>

