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

<a class="jxr_linenumber" name="1" href="#1">1</a>   <em class="jxr_comment">/*</em>
<a class="jxr_linenumber" name="2" href="#2">2</a>   <em class="jxr_comment"> * Licensed to the Apache Software Foundation (ASF) under one or more</em>
<a class="jxr_linenumber" name="3" href="#3">3</a>   <em class="jxr_comment"> * contributor license agreements. See the NOTICE file distributed with</em>
<a class="jxr_linenumber" name="4" href="#4">4</a>   <em class="jxr_comment"> * this work for additional information regarding copyright ownership.</em>
<a class="jxr_linenumber" 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 class="jxr_linenumber" name="6" href="#6">6</a>   <em class="jxr_comment"> * (the "License"); you may not use this file except in compliance with</em>
<a class="jxr_linenumber" name="7" href="#7">7</a>   <em class="jxr_comment"> * the License. You may obtain a copy of the License at</em>
<a class="jxr_linenumber" name="8" href="#8">8</a>   <em class="jxr_comment"> *</em>
<a class="jxr_linenumber" 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 class="jxr_linenumber" name="10" href="#10">10</a>  <em class="jxr_comment"> *</em>
<a class="jxr_linenumber" name="11" href="#11">11</a>  <em class="jxr_comment"> * Unless required by applicable law or agreed to in writing, software</em>
<a class="jxr_linenumber" name="12" href="#12">12</a>  <em class="jxr_comment"> * distributed under the License is distributed on an "AS IS" BASIS,</em>
<a class="jxr_linenumber" name="13" href="#13">13</a>  <em class="jxr_comment"> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</em>
<a class="jxr_linenumber" name="14" href="#14">14</a>  <em class="jxr_comment"> * See the license for the specific language governing permissions and</em>
<a class="jxr_linenumber" name="15" href="#15">15</a>  <em class="jxr_comment"> * limitations under the license.</em>
<a class="jxr_linenumber" name="16" href="#16">16</a>  <em class="jxr_comment"> */</em>
<a class="jxr_linenumber" name="17" href="#17">17</a>  <strong class="jxr_keyword">package</strong> org.apache.logging.log4j.flumeog.appender;
<a class="jxr_linenumber" name="18" href="#18">18</a>  
<a class="jxr_linenumber" name="19" href="#19">19</a>  <strong class="jxr_keyword">import</strong> org.apache.logging.log4j.core.Filter;
<a class="jxr_linenumber" name="20" href="#20">20</a>  <strong class="jxr_keyword">import</strong> org.apache.logging.log4j.core.Layout;
<a class="jxr_linenumber" name="21" href="#21">21</a>  <strong class="jxr_keyword">import</strong> org.apache.logging.log4j.core.LogEvent;
<a class="jxr_linenumber" name="22" href="#22">22</a>  <strong class="jxr_keyword">import</strong> org.apache.logging.log4j.core.appender.AppenderBase;
<a class="jxr_linenumber" name="23" href="#23">23</a>  <strong class="jxr_keyword">import</strong> org.apache.logging.log4j.core.config.plugins.Plugin;
<a class="jxr_linenumber" name="24" href="#24">24</a>  <strong class="jxr_keyword">import</strong> org.apache.logging.log4j.core.config.plugins.PluginAttr;
<a class="jxr_linenumber" name="25" href="#25">25</a>  <strong class="jxr_keyword">import</strong> org.apache.logging.log4j.core.config.plugins.PluginElement;
<a class="jxr_linenumber" name="26" href="#26">26</a>  <strong class="jxr_keyword">import</strong> org.apache.logging.log4j.core.config.plugins.PluginFactory;
<a class="jxr_linenumber" name="27" href="#27">27</a>  <strong class="jxr_keyword">import</strong> org.apache.logging.log4j.core.layout.RFC5424Layout;
<a class="jxr_linenumber" name="28" href="#28">28</a>  
<a class="jxr_linenumber" name="29" href="#29">29</a>  <strong class="jxr_keyword">import</strong> java.net.InetAddress;
<a class="jxr_linenumber" name="30" href="#30">30</a>  
<a class="jxr_linenumber" name="31" href="#31">31</a>  <em class="jxr_javadoccomment">/**</em>
<a class="jxr_linenumber" name="32" href="#32">32</a>  <em class="jxr_javadoccomment"> * An Appender that uses the Avro protocol to route events to Flume.</em>
<a class="jxr_linenumber" name="33" href="#33">33</a>  <em class="jxr_javadoccomment"> */</em>
<a class="jxr_linenumber" name="34" href="#34">34</a>  @Plugin(name = <span class="jxr_string">"Flume"</span>, type = <span class="jxr_string">"Core"</span>, elementType = <span class="jxr_string">"appender"</span>, printObject = <strong class="jxr_keyword">true</strong>)
<a class="jxr_linenumber" name="35" href="#35">35</a>  <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">class</strong> <a href="../../../../../../org/apache/logging/log4j/flumeog/appender/FlumeAvroAppender.html">FlumeAvroAppender</a> <strong class="jxr_keyword">extends</strong> AppenderBase <strong class="jxr_keyword">implements</strong> <a href="../../../../../../org/apache/logging/log4j/flumeog/appender/FlumeEventFactory.html">FlumeEventFactory</a> {
<a class="jxr_linenumber" name="36" href="#36">36</a>  
<a class="jxr_linenumber" name="37" href="#37">37</a>      <strong class="jxr_keyword">private</strong> <a href="../../../../../../org/apache/logging/log4j/flumeog/appender/FlumeAvroManager.html">FlumeAvroManager</a> manager;
<a class="jxr_linenumber" name="38" href="#38">38</a>  
<a class="jxr_linenumber" name="39" href="#39">39</a>      <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> String mdcIncludes;
<a class="jxr_linenumber" name="40" href="#40">40</a>      <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> String mdcExcludes;
<a class="jxr_linenumber" name="41" href="#41">41</a>      <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> String mdcRequired;
<a class="jxr_linenumber" name="42" href="#42">42</a>  
<a class="jxr_linenumber" name="43" href="#43">43</a>      <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> String eventPrefix;
<a class="jxr_linenumber" name="44" href="#44">44</a>  
<a class="jxr_linenumber" name="45" href="#45">45</a>      <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> String mdcPrefix;
<a class="jxr_linenumber" name="46" href="#46">46</a>  
<a class="jxr_linenumber" name="47" href="#47">47</a>      <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">boolean</strong> compressBody;
<a class="jxr_linenumber" name="48" href="#48">48</a>  
<a class="jxr_linenumber" name="49" href="#49">49</a>      <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> String hostname;
<a class="jxr_linenumber" name="50" href="#50">50</a>  
<a class="jxr_linenumber" name="51" href="#51">51</a>      <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">int</strong> reconnectDelay;
<a class="jxr_linenumber" name="52" href="#52">52</a>  
<a class="jxr_linenumber" name="53" href="#53">53</a>      <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">int</strong> retries;
<a class="jxr_linenumber" name="54" href="#54">54</a>  
<a class="jxr_linenumber" name="55" href="#55">55</a>      <strong class="jxr_keyword">private</strong> <strong class="jxr_keyword">final</strong> <a href="../../../../../../org/apache/logging/log4j/flumeog/appender/FlumeEventFactory.html">FlumeEventFactory</a> factory;
<a class="jxr_linenumber" name="56" href="#56">56</a>  
<a class="jxr_linenumber" name="57" href="#57">57</a>      <strong class="jxr_keyword">private</strong> <a href="../../../../../../org/apache/logging/log4j/flumeog/appender/FlumeAvroAppender.html">FlumeAvroAppender</a>(String name, Filter filter, Layout layout, <strong class="jxr_keyword">boolean</strong> handleException,
<a class="jxr_linenumber" name="58" href="#58">58</a>                                String hostname, String includes, String excludes, String required, String mdcPrefix,
<a class="jxr_linenumber" name="59" href="#59">59</a>                                String eventPrefix, <strong class="jxr_keyword">boolean</strong> compress, <strong class="jxr_keyword">int</strong> delay, <strong class="jxr_keyword">int</strong> retries,
<a class="jxr_linenumber" name="60" href="#60">60</a>                                <a href="../../../../../../org/apache/logging/log4j/flumeog/appender/FlumeEventFactory.html">FlumeEventFactory</a> factory, <a href="../../../../../../org/apache/logging/log4j/flumeog/appender/FlumeAvroManager.html">FlumeAvroManager</a> manager) {
<a class="jxr_linenumber" name="61" href="#61">61</a>          <strong class="jxr_keyword">super</strong>(name, filter, layout, handleException);
<a class="jxr_linenumber" name="62" href="#62">62</a>          <strong class="jxr_keyword">this</strong>.manager = manager;
<a class="jxr_linenumber" name="63" href="#63">63</a>          <strong class="jxr_keyword">this</strong>.mdcIncludes = includes;
<a class="jxr_linenumber" name="64" href="#64">64</a>          <strong class="jxr_keyword">this</strong>.mdcExcludes = excludes;
<a class="jxr_linenumber" name="65" href="#65">65</a>          <strong class="jxr_keyword">this</strong>.mdcRequired = required;
<a class="jxr_linenumber" name="66" href="#66">66</a>          <strong class="jxr_keyword">this</strong>.eventPrefix = eventPrefix;
<a class="jxr_linenumber" name="67" href="#67">67</a>          <strong class="jxr_keyword">this</strong>.mdcPrefix = mdcPrefix;
<a class="jxr_linenumber" name="68" href="#68">68</a>          <strong class="jxr_keyword">this</strong>.compressBody = compress;
<a class="jxr_linenumber" name="69" href="#69">69</a>          <strong class="jxr_keyword">this</strong>.hostname = hostname;
<a class="jxr_linenumber" name="70" href="#70">70</a>          <strong class="jxr_keyword">this</strong>.reconnectDelay = delay;
<a class="jxr_linenumber" name="71" href="#71">71</a>          <strong class="jxr_keyword">this</strong>.retries = retries;
<a class="jxr_linenumber" name="72" href="#72">72</a>          <strong class="jxr_keyword">this</strong>.factory = factory == <strong class="jxr_keyword">null</strong> ? <strong class="jxr_keyword">this</strong> : factory;
<a class="jxr_linenumber" name="73" href="#73">73</a>      }
<a class="jxr_linenumber" name="74" href="#74">74</a>  
<a class="jxr_linenumber" name="75" href="#75">75</a>      <em class="jxr_javadoccomment">/**</em>
<a class="jxr_linenumber" name="76" href="#76">76</a>  <em class="jxr_javadoccomment">     * Publish the event.</em>
<a class="jxr_linenumber" name="77" href="#77">77</a>  <em class="jxr_javadoccomment">     * @param event The LogEvent.</em>
<a class="jxr_linenumber" name="78" href="#78">78</a>  <em class="jxr_javadoccomment">     */</em>
<a class="jxr_linenumber" name="79" href="#79">79</a>      <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> append(LogEvent event) {
<a class="jxr_linenumber" name="80" href="#80">80</a>  
<a class="jxr_linenumber" name="81" href="#81">81</a>          <a href="../../../../../../org/apache/logging/log4j/flumeog/appender/FlumeEvent.html">FlumeEvent</a> flumeEvent = factory.createEvent(event, hostname, mdcIncludes, mdcExcludes, mdcRequired, mdcPrefix,
<a class="jxr_linenumber" name="82" href="#82">82</a>              eventPrefix, compressBody);
<a class="jxr_linenumber" name="83" href="#83">83</a>          flumeEvent.setBody(getLayout().format(flumeEvent));
<a class="jxr_linenumber" name="84" href="#84">84</a>          manager.send(flumeEvent, reconnectDelay, retries);
<a class="jxr_linenumber" name="85" href="#85">85</a>      }
<a class="jxr_linenumber" name="86" href="#86">86</a>  
<a class="jxr_linenumber" name="87" href="#87">87</a>      @Override
<a class="jxr_linenumber" name="88" href="#88">88</a>      <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> stop() {
<a class="jxr_linenumber" name="89" href="#89">89</a>          <strong class="jxr_keyword">super</strong>.stop();
<a class="jxr_linenumber" name="90" href="#90">90</a>          manager.release();
<a class="jxr_linenumber" name="91" href="#91">91</a>      }
<a class="jxr_linenumber" name="92" href="#92">92</a>  
<a class="jxr_linenumber" name="93" href="#93">93</a>      <em class="jxr_javadoccomment">/**</em>
<a class="jxr_linenumber" name="94" href="#94">94</a>  <em class="jxr_javadoccomment">     * Create a Flume event.</em>
<a class="jxr_linenumber" name="95" href="#95">95</a>  <em class="jxr_javadoccomment">     * @param event The Log4j LogEvent.</em>
<a class="jxr_linenumber" name="96" href="#96">96</a>  <em class="jxr_javadoccomment">     * @param hostname The host name.</em>
<a class="jxr_linenumber" name="97" href="#97">97</a>  <em class="jxr_javadoccomment">     * @param includes comma separated list of mdc elements to include.</em>
<a class="jxr_linenumber" name="98" href="#98">98</a>  <em class="jxr_javadoccomment">     * @param excludes comma separated list of mdc elements to exclude.</em>
<a class="jxr_linenumber" name="99" href="#99">99</a>  <em class="jxr_javadoccomment">     * @param required comma separated list of mdc elements that must be present with a value.</em>
<a class="jxr_linenumber" name="100" href="#100">100</a> <em class="jxr_javadoccomment">     * @param mdcPrefix The prefix to add to MDC key names.</em>
<a class="jxr_linenumber" name="101" href="#101">101</a> <em class="jxr_javadoccomment">     * @param eventPrefix The prefix to add to event fields.</em>
<a class="jxr_linenumber" name="102" href="#102">102</a> <em class="jxr_javadoccomment">     * @param compress If true the body will be compressed.</em>
<a class="jxr_linenumber" name="103" href="#103">103</a> <em class="jxr_javadoccomment">     * @return A Flume Event.</em>
<a class="jxr_linenumber" name="104" href="#104">104</a> <em class="jxr_javadoccomment">     */</em>
<a class="jxr_linenumber" name="105" href="#105">105</a>     <strong class="jxr_keyword">public</strong> <a href="../../../../../../org/apache/logging/log4j/flumeog/appender/FlumeEvent.html">FlumeEvent</a> createEvent(LogEvent event, String hostname, String includes, String excludes, String required,
<a class="jxr_linenumber" name="106" href="#106">106</a>                       String mdcPrefix, String eventPrefix, <strong class="jxr_keyword">boolean</strong> compress) {
<a class="jxr_linenumber" name="107" href="#107">107</a>         <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">new</strong> <a href="../../../../../../org/apache/logging/log4j/flumeog/appender/FlumeEvent.html">FlumeEvent</a>(event, hostname, mdcIncludes, mdcExcludes, mdcRequired, mdcPrefix,
<a class="jxr_linenumber" name="108" href="#108">108</a>             eventPrefix, compressBody);
<a class="jxr_linenumber" name="109" href="#109">109</a>     }
<a class="jxr_linenumber" name="110" href="#110">110</a> 
<a class="jxr_linenumber" name="111" href="#111">111</a>     <em class="jxr_javadoccomment">/**</em>
<a class="jxr_linenumber" name="112" href="#112">112</a> <em class="jxr_javadoccomment">     * Create a Flume Avro Appender.</em>
<a class="jxr_linenumber" name="113" href="#113">113</a> <em class="jxr_javadoccomment">     * @param agents An array of Agents.</em>
<a class="jxr_linenumber" name="114" href="#114">114</a> <em class="jxr_javadoccomment">     * @param delay The amount of time in milliseconds to wait between retries.</em>
<a class="jxr_linenumber" name="115" href="#115">115</a> <em class="jxr_javadoccomment">     * @param agentRetries The number of times to retry an agent before failing to the next agent.</em>
<a class="jxr_linenumber" name="116" href="#116">116</a> <em class="jxr_javadoccomment">     * @param name The name of the Appender.</em>
<a class="jxr_linenumber" name="117" href="#117">117</a> <em class="jxr_javadoccomment">     * @param suppress If true exceptions will be handled in the appender.</em>
<a class="jxr_linenumber" name="118" href="#118">118</a> <em class="jxr_javadoccomment">     * @param excludes A comma separated list of MDC elements to exclude.</em>
<a class="jxr_linenumber" name="119" href="#119">119</a> <em class="jxr_javadoccomment">     * @param includes A comma separated list of MDC elements to include.</em>
<a class="jxr_linenumber" name="120" href="#120">120</a> <em class="jxr_javadoccomment">     * @param required A comma separated list of MDC elements that are required.</em>
<a class="jxr_linenumber" name="121" href="#121">121</a> <em class="jxr_javadoccomment">     * @param mdcPrefix The prefix to add to MDC key names.</em>
<a class="jxr_linenumber" name="122" href="#122">122</a> <em class="jxr_javadoccomment">     * @param eventPrefix The prefix to add to event key names.</em>
<a class="jxr_linenumber" name="123" href="#123">123</a> <em class="jxr_javadoccomment">     * @param compressBody If true the event body will be compressed.</em>
<a class="jxr_linenumber" name="124" href="#124">124</a> <em class="jxr_javadoccomment">     * @param factory The factory to use to create Flume events.</em>
<a class="jxr_linenumber" name="125" href="#125">125</a> <em class="jxr_javadoccomment">     * @param layout The layout to format the event.</em>
<a class="jxr_linenumber" name="126" href="#126">126</a> <em class="jxr_javadoccomment">     * @param filter A Filter to filter events.</em>
<a class="jxr_linenumber" name="127" href="#127">127</a> <em class="jxr_javadoccomment">     * @return A Flume Avro Appender.</em>
<a class="jxr_linenumber" name="128" href="#128">128</a> <em class="jxr_javadoccomment">     */</em>
<a class="jxr_linenumber" name="129" href="#129">129</a>     @PluginFactory
<a class="jxr_linenumber" name="130" href="#130">130</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">static</strong> <a href="../../../../../../org/apache/logging/log4j/flumeog/appender/FlumeAvroAppender.html">FlumeAvroAppender</a> createAppender(@PluginElement(<span class="jxr_string">"agents"</span>) <a href="../../../../../../org/apache/logging/log4j/flumeog/appender/Agent.html">Agent</a>[] agents,
<a class="jxr_linenumber" name="131" href="#131">131</a>                                                    @PluginAttr(<span class="jxr_string">"reconnectionDelay"</span>) String delay,
<a class="jxr_linenumber" name="132" href="#132">132</a>                                                    @PluginAttr(<span class="jxr_string">"agentRetries"</span>) String agentRetries,
<a class="jxr_linenumber" name="133" href="#133">133</a>                                                    @PluginAttr(<span class="jxr_string">"name"</span>) String name,
<a class="jxr_linenumber" name="134" href="#134">134</a>                                                    @PluginAttr(<span class="jxr_string">"suppressExceptions"</span>) String suppress,
<a class="jxr_linenumber" name="135" href="#135">135</a>                                                    @PluginAttr(<span class="jxr_string">"mdcExcludes"</span>) String excludes,
<a class="jxr_linenumber" name="136" href="#136">136</a>                                                    @PluginAttr(<span class="jxr_string">"mdcIncludes"</span>) String includes,
<a class="jxr_linenumber" name="137" href="#137">137</a>                                                    @PluginAttr(<span class="jxr_string">"mdcRequired"</span>) String required,
<a class="jxr_linenumber" name="138" href="#138">138</a>                                                    @PluginAttr(<span class="jxr_string">"mdcPrefix"</span>) String mdcPrefix,
<a class="jxr_linenumber" name="139" href="#139">139</a>                                                    @PluginAttr(<span class="jxr_string">"eventPrefix"</span>) String eventPrefix,
<a class="jxr_linenumber" name="140" href="#140">140</a>                                                    @PluginAttr(<span class="jxr_string">"compress"</span>) String compressBody,
<a class="jxr_linenumber" name="141" href="#141">141</a>                                                    @PluginElement(<span class="jxr_string">"flumeEventFactory"</span>) <a href="../../../../../../org/apache/logging/log4j/flumeog/appender/FlumeEventFactory.html">FlumeEventFactory</a> factory,
<a class="jxr_linenumber" name="142" href="#142">142</a>                                                    @PluginElement(<span class="jxr_string">"layout"</span>) Layout layout,
<a class="jxr_linenumber" name="143" href="#143">143</a>                                                    @PluginElement(<span class="jxr_string">"filters"</span>) Filter filter) {
<a class="jxr_linenumber" name="144" href="#144">144</a> 
<a class="jxr_linenumber" name="145" href="#145">145</a>         String hostname;
<a class="jxr_linenumber" name="146" href="#146">146</a>         <strong class="jxr_keyword">try</strong> {
<a class="jxr_linenumber" name="147" href="#147">147</a>             hostname = InetAddress.getLocalHost().getHostName();
<a class="jxr_linenumber" name="148" href="#148">148</a>         } <strong class="jxr_keyword">catch</strong> (Exception ex) {
<a class="jxr_linenumber" name="149" href="#149">149</a>             LOGGER.error(<span class="jxr_string">"Unable to determine local hostname"</span>, ex);
<a class="jxr_linenumber" name="150" href="#150">150</a>             <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">null</strong>;
<a class="jxr_linenumber" name="151" href="#151">151</a>         }
<a class="jxr_linenumber" name="152" href="#152">152</a>         <strong class="jxr_keyword">if</strong> (agents == <strong class="jxr_keyword">null</strong> || agents.length == 0) {
<a class="jxr_linenumber" name="153" href="#153">153</a>             LOGGER.debug(<span class="jxr_string">"No agents provided, using defaults"</span>);
<a class="jxr_linenumber" name="154" href="#154">154</a>             agents = <strong class="jxr_keyword">new</strong> <a href="../../../../../../org/apache/logging/log4j/flumeog/appender/Agent.html">Agent</a>[] {Agent.createAgent(<strong class="jxr_keyword">null</strong>, <strong class="jxr_keyword">null</strong>)};
<a class="jxr_linenumber" name="155" href="#155">155</a>         }
<a class="jxr_linenumber" name="156" href="#156">156</a> 
<a class="jxr_linenumber" name="157" href="#157">157</a>         <strong class="jxr_keyword">boolean</strong> handleExceptions = suppress == <strong class="jxr_keyword">null</strong> ? <strong class="jxr_keyword">true</strong> : Boolean.valueOf(suppress);
<a class="jxr_linenumber" name="158" href="#158">158</a>         <strong class="jxr_keyword">boolean</strong> compress = compressBody == <strong class="jxr_keyword">null</strong> ? <strong class="jxr_keyword">true</strong> : Boolean.valueOf(compressBody);
<a class="jxr_linenumber" name="159" href="#159">159</a> 
<a class="jxr_linenumber" name="160" href="#160">160</a>         <strong class="jxr_keyword">int</strong> reconnectDelay = delay == <strong class="jxr_keyword">null</strong> ? 0 : Integer.parseInt(delay);
<a class="jxr_linenumber" name="161" href="#161">161</a>         <strong class="jxr_keyword">int</strong> retries = agentRetries == <strong class="jxr_keyword">null</strong> ? 0 : Integer.parseInt(agentRetries);
<a class="jxr_linenumber" name="162" href="#162">162</a> 
<a class="jxr_linenumber" name="163" href="#163">163</a>         <strong class="jxr_keyword">if</strong> (layout == <strong class="jxr_keyword">null</strong>) {
<a class="jxr_linenumber" name="164" href="#164">164</a>             layout = RFC5424Layout.createLayout(<strong class="jxr_keyword">null</strong>, <strong class="jxr_keyword">null</strong>, <strong class="jxr_keyword">null</strong>, <span class="jxr_string">"true"</span>, <strong class="jxr_keyword">null</strong>, <strong class="jxr_keyword">null</strong>, <strong class="jxr_keyword">null</strong>, <strong class="jxr_keyword">null</strong>, excludes,
<a class="jxr_linenumber" name="165" href="#165">165</a>                 includes, required, <strong class="jxr_keyword">null</strong>, <strong class="jxr_keyword">null</strong>);
<a class="jxr_linenumber" name="166" href="#166">166</a>         }
<a class="jxr_linenumber" name="167" href="#167">167</a> 
<a class="jxr_linenumber" name="168" href="#168">168</a>         <strong class="jxr_keyword">if</strong> (name == <strong class="jxr_keyword">null</strong>) {
<a class="jxr_linenumber" name="169" href="#169">169</a>             LOGGER.error(<span class="jxr_string">"No name provided for Appender"</span>);
<a class="jxr_linenumber" name="170" href="#170">170</a>             <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">null</strong>;
<a class="jxr_linenumber" name="171" href="#171">171</a>         }
<a class="jxr_linenumber" name="172" href="#172">172</a> 
<a class="jxr_linenumber" name="173" href="#173">173</a>         <a href="../../../../../../org/apache/logging/log4j/flumeog/appender/FlumeAvroManager.html">FlumeAvroManager</a> manager = FlumeAvroManager.getManager(agents);
<a class="jxr_linenumber" name="174" href="#174">174</a>         <strong class="jxr_keyword">if</strong> (manager == <strong class="jxr_keyword">null</strong>) {
<a class="jxr_linenumber" name="175" href="#175">175</a>             <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">null</strong>;
<a class="jxr_linenumber" name="176" href="#176">176</a>         }
<a class="jxr_linenumber" name="177" href="#177">177</a> 
<a class="jxr_linenumber" name="178" href="#178">178</a>         <strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">new</strong> <a href="../../../../../../org/apache/logging/log4j/flumeog/appender/FlumeAvroAppender.html">FlumeAvroAppender</a>(name, filter, layout,  handleExceptions, hostname, includes,
<a class="jxr_linenumber" name="179" href="#179">179</a>             excludes, required, mdcPrefix, eventPrefix, compress, reconnectDelay, retries, factory, manager);
<a class="jxr_linenumber" name="180" href="#180">180</a>     }
<a class="jxr_linenumber" name="181" href="#181">181</a> }
</pre>
<hr/><div id="footer">This page was automatically generated by <a href="http://maven.apache.org/">Maven</a></div></body>
</html>

