<html>
<head>
<title>
log4cxx - Documentation
</title>
<link href="../css/doxygen.css" rel="stylesheet" type="text/css"/>
</head>

<body bgcolor="#ffffff" text="#000000" link="#525D76">        
<!-- START Header table --> 
<table border="0" cellspacing="0" width="90%">
<!-- TOP IMAGE -->
<tr>
<td colspan="2">
<a href="http://logging.apache.org">
<img src="http://logging.apache.org/images/ls-logo.jpg" align="left" border="0"/>
</a>
</td>

</tr>
</table>
<!-- END Header table --> 

           <!-- START main table --> 
            <table id="main" border="0" width="90%" cellspacing="2" cellpadding="0">
                <tr><td colspan="2">
                    <hr noshade="" size="1"/>
                </td></tr>
                
                <tr>
                    <!-- LEFT SIDE NAVIGATION -->
                    <td id="navbar" valign="top">
                      <!-- ============================================================ -->
  <table id="navbar" border="0" cellspacing="0" cellpadding="0">
                      <tr >
       	 <td class="navbarHeader" nowrap="true">
           <strong>Apache</strong>
         </td>
       </tr>
              	 <tr><td class="navbarItem"><small>    <a href="http://www.apache.org">Apache Home</a>
</small></td></tr>
              	 <tr><td class="navbarItem"><small>    <a href="http://logging.apache.org/">Logging Services</a>
</small></td></tr>
                                <tr >
       	 <td class="navbarHeader" nowrap="true">
           <strong>log4cxx project</strong>
         </td>
       </tr>
              	 <tr><td class="navbarItem"><small>    <a href="../index.html">About</a>
</small></td></tr>
              	 <tr><td class="navbarItem"><small>    <a href="../news.html">News</a>
</small></td></tr>
              	 <tr><td class="navbarItem"><small>    <a href="../team.html">Team</a>
</small></td></tr>
              	 <tr><td class="navbarItem"><small>    <a href="../manual/index.html">Documentation</a>
</small></td></tr>
              	 <tr><td class="navbarItem"><small>    <a href="../performance.html">Performance</a>
</small></td></tr>
              	 <tr><td class="navbarItem"><small>    <a href="../download.html">Download</a>
</small></td></tr>
             </table> 
   
                    </td>
                    <td id="mainContents" align="left" valign="top">
<hr>
<!-- Generated by Doxygen 1.3.5 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="pages.html">Related&nbsp;Pages</a></div>
<h1>ConsoleAppender Class Reference</h1>Inheritance diagram for ConsoleAppender:<p><center><img src="classlog4cxx_1_1ConsoleAppender__inherit__graph.png" border="0" usemap="#ConsoleAppender__inherit__map" alt="Inheritance graph"></center>
<map name="ConsoleAppender__inherit__map">
<area href="classlog4cxx_1_1WriterAppender.html" shape="rect" coords="45,294,152,313" alt="">
<area href="classlog4cxx_1_1AppenderSkeleton.html" shape="rect" coords="36,225,161,244" alt="">
<area href="classlog4cxx_1_1Appender.html" shape="rect" coords="12,156,87,174" alt="">
<area href="classlog4cxx_1_1spi_1_1OptionHandler.html" shape="rect" coords="7,86,105,105" alt="">
<area href="classlog4cxx_1_1helpers_1_1Object.html" shape="rect" coords="73,17,127,36" alt="">
<area href="classlog4cxx_1_1helpers_1_1ObjectImpl.html" shape="rect" coords="111,156,188,174" alt="">
</map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center>Collaboration diagram for ConsoleAppender:<p><center><img src="classlog4cxx_1_1ConsoleAppender__coll__graph.png" border="0" usemap="#ConsoleAppender__coll__map" alt="Collaboration graph"></center>
<map name="ConsoleAppender__coll__map">
<area href="classlog4cxx_1_1WriterAppender.html" shape="rect" coords="80,401,187,419" alt="">
<area href="classlog4cxx_1_1AppenderSkeleton.html" shape="rect" coords="71,329,196,347" alt="">
<area href="classlog4cxx_1_1Appender.html" shape="rect" coords="21,179,96,198" alt="">
<area href="classlog4cxx_1_1spi_1_1OptionHandler.html" shape="rect" coords="7,89,105,107" alt="">
<area href="classlog4cxx_1_1helpers_1_1Object.html" shape="rect" coords="81,17,135,35" alt="">
<area href="classlog4cxx_1_1helpers_1_1ObjectImpl.html" shape="rect" coords="101,134,179,153" alt="">
<area href="classlog4cxx_1_1helpers_1_1ObjectPtrT.html" shape="rect" coords="171,179,245,198" alt="">
</map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center><a href="classlog4cxx_1_1ConsoleAppender-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
<tr><td></td></tr>
<tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classlog4cxx_1_1ConsoleAppender.html#a4">setTarget</a> (const String &amp;value)</td></tr>

<tr><td class="memItemLeft" nowrap align=right valign=top>const String &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classlog4cxx_1_1ConsoleAppender.html#a5">getTarget</a> () const </td></tr>

<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classlog4cxx_1_1ConsoleAppender.html#a6">activateOptions</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classlog4cxx_1_1ConsoleAppender.html#a7">setOption</a> (const String &amp;option, const String &amp;value)</td></tr>

<tr><td colspan=2><br><h2>Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classlog4cxx_1_1ConsoleAppender.html#b0">closeWriter</a> ()</td></tr>

</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
<a class="el" href="classlog4cxx_1_1ConsoleAppender.html">ConsoleAppender</a> appends log events to <code>stdout</code> or <code>stderr</code> using a layout specified by the user. The default target is <code>stdout</code>.
<p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="a6" doxytag="log4cxx::ConsoleAppender::activateOptions" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> void activateOptions </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap><code> [virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Derived appenders should override this method if option structure requires it.
<p>
Reimplemented from <a class="el" href="classlog4cxx_1_1AppenderSkeleton.html#a2">AppenderSkeleton</a>.    </td>
  </tr>
</table>
<a class="anchor" name="b0" doxytag="log4cxx::ConsoleAppender::closeWriter" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> virtual void closeWriter </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap><code> [inline, protected, virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
This method overrides the parent <a class="el" href="classlog4cxx_1_1WriterAppender.html#b1">WriterAppender::closeWriter</a> implementation to do nothing because the console stream is not ours to close. 
<p>
Implements <a class="el" href="classlog4cxx_1_1WriterAppender.html#b1">WriterAppender</a>.    </td>
  </tr>
</table>
<a class="anchor" name="a5" doxytag="log4cxx::ConsoleAppender::getTarget" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> const String &amp; getTarget </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap> const</td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Returns the current value of the <b>#target</b> property. The default value of the option is "System.out".<p>
See also <a class="el" href="classlog4cxx_1_1ConsoleAppender.html#a4">setTarget</a>.     </td>
  </tr>
</table>
<a class="anchor" name="a7" doxytag="log4cxx::ConsoleAppender::setOption" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> void setOption </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const String &amp;&nbsp;</td>
          <td class="mdname" nowrap> <em>option</em>, </td>
        </tr>
        <tr>
          <td></td>
          <td></td>
          <td class="md" nowrap>const String &amp;&nbsp;</td>
          <td class="mdname" nowrap> <em>value</em></td>
        </tr>
        <tr>
          <td></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"><code> [virtual]</code></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Set <code>option</code> to <code>value</code>.<p>
The handling of each option depends on the OptionHandler instance. Some options may become active immediately whereas other may be activated only when <a class="el" href="classlog4cxx_1_1ConsoleAppender.html#a6">activateOptions</a> is called.
<p>
Reimplemented from <a class="el" href="classlog4cxx_1_1AppenderSkeleton.html#a3">AppenderSkeleton</a>.    </td>
  </tr>
</table>
<a class="anchor" name="a4" doxytag="log4cxx::ConsoleAppender::setTarget" ></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top"> void setTarget </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const String &amp;&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>value</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>

      </table>
    </td>
  </tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Sets the value of the <b>#target</b> property. Recognized values are "System.out" and "System.err". Any other value will be ignored.     </td>
  </tr>
</table>
<hr>The documentation for this class was generated from the following files:<ul>
<li>consoleappender.h<li>consoleappender.cpp</ul>
                                                
                    </td>
                </tr>
             
                <!-- FOOTER -->
                <tr><td colspan="2">
                    <hr noshade="" size="1"/>
                </td></tr>
                <tr><td colspan="2">
                    <div align="center"><font color="#525D76" size="-1"><em>
                    Copyright &#169; 1999-2004, Apache Software Foundation
                    </em></font></div>
                </td></tr>
            </table>
           <!-- END main table --> 
        </body>
    </html>
<!-- end the processing -->
