blob: 40e40864e830a39019f3d85dbbffbc65c1dceaa1 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
--><html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>Apache log4cxx: Appender Class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.4.6 -->
<div class="tabs">
<ul>
<li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li id="current"><a href="classes.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul></div>
<div class="tabs">
<ul>
<li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
<li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
<li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
</ul></div>
<div class="nav">
<a class="el" href="namespacelog4cxx.html">log4cxx</a>::<a class="el" href="classlog4cxx_1_1_appender.html">Appender</a></div>
<h1>Appender Class Reference</h1><!-- doxytag: class="log4cxx::Appender" --><!-- doxytag: inherits="log4cxx::spi::OptionHandler" -->Inherits <a class="el" href="classlog4cxx_1_1spi_1_1_option_handler.html">OptionHandler</a>.
<p>
Inherited by <a class="el" href="classlog4cxx_1_1_appender_skeleton.html">AppenderSkeleton</a><code> [virtual]</code>.
<p>
<a href="classlog4cxx_1_1_appender-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
Implement this interface for your own strategies for outputting log statements.
<p>
<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">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlog4cxx_1_1_appender.html#15a14100e46e406766b1c92c670948e1">~Appender</a> ()</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_1_appender.html#06931700a645a1cf08353968672d5dfe">addFilter</a> (const <a class="el" href="classlog4cxx_1_1helpers_1_1_object_ptr_t.html">spi::FilterPtr</a> &amp;newFilter)=0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add a filter to the end of the filter list. <a href="#06931700a645a1cf08353968672d5dfe"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classlog4cxx_1_1helpers_1_1_object_ptr_t.html">spi::FilterPtr</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlog4cxx_1_1_appender.html#31134324f99ee92e17f359e3daa05ca7">getFilter</a> () const =0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the head Filter. <a href="#31134324f99ee92e17f359e3daa05ca7"></a><br></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_1_appender.html#5219689d2c359a4bf6ddc48ea1e8dd42">clearFilters</a> ()=0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Clear the list of filters by removing all the filters in it. <a href="#5219689d2c359a4bf6ddc48ea1e8dd42"></a><br></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_1_appender.html#f6ee7eacbde6b379b68d954e44f6e549">close</a> ()=0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Release any resources allocated within the appender such as file handles, network connections, etc. <a href="#f6ee7eacbde6b379b68d954e44f6e549"></a><br></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_1_appender.html#e78c4f3ccf2a3b33eb83d76e49e79dc6">doAppend</a> (const <a class="el" href="classlog4cxx_1_1helpers_1_1_object_ptr_t.html">spi::LoggingEventPtr</a> &amp;event, <a class="el" href="classlog4cxx_1_1helpers_1_1_pool.html">log4cxx::helpers::Pool</a> &amp;pool)=0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Log in <code><a class="el" href="classlog4cxx_1_1_appender.html">Appender</a></code> specific way. <a href="#e78c4f3ccf2a3b33eb83d76e49e79dc6"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="namespacelog4cxx.html#d7ec98d27bca7666e23f27dd1fb181c8">LogString</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlog4cxx_1_1_appender.html#e7a22efd00c94d9d06b832fe6953baa3">getName</a> () const =0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the name of this appender. <a href="#e7a22efd00c94d9d06b832fe6953baa3"></a><br></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_1_appender.html#88cfba44fa745f658fab9b8c6a8d959f">setLayout</a> (const <a class="el" href="classlog4cxx_1_1helpers_1_1_object_ptr_t.html">LayoutPtr</a> &amp;layout)=0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the <a class="el" href="classlog4cxx_1_1_layout.html">Layout</a> for this appender. <a href="#88cfba44fa745f658fab9b8c6a8d959f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classlog4cxx_1_1helpers_1_1_object_ptr_t.html">LayoutPtr</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlog4cxx_1_1_appender.html#1ec13ad0f8e6a13f91dc7a7ce7a4a564">getLayout</a> () const =0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns this appenders layout. <a href="#1ec13ad0f8e6a13f91dc7a7ce7a4a564"></a><br></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_1_appender.html#46473dcf1999f98a4c97168a3d2c7c84">setName</a> (const <a class="el" href="namespacelog4cxx.html#d7ec98d27bca7666e23f27dd1fb181c8">LogString</a> &amp;name)=0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the name of this appender. <a href="#46473dcf1999f98a4c97168a3d2c7c84"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlog4cxx_1_1_appender.html#1fa0a21a0f0a6ec3a9e92a98db9ffa85">requiresLayout</a> () const =0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Configurators call this method to determine if the appender requires a layout. <a href="#1fa0a21a0f0a6ec3a9e92a98db9ffa85"></a><br></td></tr>
</table>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="15a14100e46e406766b1c92c670948e1"></a><!-- doxytag: member="log4cxx::Appender::~Appender" ref="15a14100e46e406766b1c92c670948e1" args="()" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">virtual ~<a class="el" href="classlog4cxx_1_1_appender.html">Appender</a> </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, virtual]</code></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
</td>
</tr>
</table>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="06931700a645a1cf08353968672d5dfe"></a><!-- doxytag: member="log4cxx::Appender::addFilter" ref="06931700a645a1cf08353968672d5dfe" args="(const spi::FilterPtr &amp;newFilter)=0" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">virtual void addFilter </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const <a class="el" href="classlog4cxx_1_1helpers_1_1_object_ptr_t.html">spi::FilterPtr</a> &amp;&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>newFilter</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [pure virtual]</code></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Add a filter to the end of the filter list.
<p>
<p>
Implemented in <a class="el" href="classlog4cxx_1_1_appender_skeleton.html#8a4525ba6d2efe017934bbd867186ec3">AppenderSkeleton</a>. </td>
</tr>
</table>
<a class="anchor" name="5219689d2c359a4bf6ddc48ea1e8dd42"></a><!-- doxytag: member="log4cxx::Appender::clearFilters" ref="5219689d2c359a4bf6ddc48ea1e8dd42" args="()=0" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">virtual void clearFilters </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> [pure virtual]</code></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Clear the list of filters by removing all the filters in it.
<p>
<p>
Implemented in <a class="el" href="classlog4cxx_1_1_appender_skeleton.html#f13013b8fd73be124730ec9f299c234d">AppenderSkeleton</a>. </td>
</tr>
</table>
<a class="anchor" name="f6ee7eacbde6b379b68d954e44f6e549"></a><!-- doxytag: member="log4cxx::Appender::close" ref="f6ee7eacbde6b379b68d954e44f6e549" args="()=0" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">virtual void close </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> [pure virtual]</code></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Release any resources allocated within the appender such as file handles, network connections, etc.
<p>
It is a programming error to append to a closed appender.
<p>
Implemented in <a class="el" href="classlog4cxx_1_1_async_appender.html#5ae591df94fc66ccb85cbb6565368bca">AsyncAppender</a>, <a class="el" href="classlog4cxx_1_1db_1_1_o_d_b_c_appender.html#47feccb1873356363e4d0e302bc3822c">ODBCAppender</a>, <a class="el" href="classlog4cxx_1_1net_1_1_s_m_t_p_appender.html#47feccb1873356363e4d0e302bc3822c">SMTPAppender</a>, <a class="el" href="classlog4cxx_1_1net_1_1_socket_appender_skeleton.html#5ae591df94fc66ccb85cbb6565368bca">SocketAppenderSkeleton</a>, <a class="el" href="classlog4cxx_1_1net_1_1_socket_hub_appender.html#47feccb1873356363e4d0e302bc3822c">SocketHubAppender</a>, <a class="el" href="classlog4cxx_1_1net_1_1_syslog_appender.html#5ae591df94fc66ccb85cbb6565368bca">SyslogAppender</a>, <a class="el" href="classlog4cxx_1_1net_1_1_telnet_appender.html#5ae591df94fc66ccb85cbb6565368bca">TelnetAppender</a>, <a class="el" href="classlog4cxx_1_1nt_1_1_n_t_event_log_appender.html#47feccb1873356363e4d0e302bc3822c">NTEventLogAppender</a>, <a class="el" href="classlog4cxx_1_1nt_1_1_output_debug_string_appender.html#47feccb1873356363e4d0e302bc3822c">OutputDebugStringAppender</a>, <a class="el" href="classlog4cxx_1_1rolling_1_1_rolling_file_appender_skeleton.html#5ae591df94fc66ccb85cbb6565368bca">RollingFileAppenderSkeleton</a>, and <a class="el" href="classlog4cxx_1_1_writer_appender.html#47feccb1873356363e4d0e302bc3822c">WriterAppender</a>. </td>
</tr>
</table>
<a class="anchor" name="e78c4f3ccf2a3b33eb83d76e49e79dc6"></a><!-- doxytag: member="log4cxx::Appender::doAppend" ref="e78c4f3ccf2a3b33eb83d76e49e79dc6" args="(const spi::LoggingEventPtr &amp;event, log4cxx::helpers::Pool &amp;pool)=0" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">virtual void doAppend </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const <a class="el" href="classlog4cxx_1_1helpers_1_1_object_ptr_t.html">spi::LoggingEventPtr</a> &amp;&nbsp;</td>
<td class="mdname" nowrap> <em>event</em>, </td>
</tr>
<tr>
<td class="md" nowrap align="right"></td>
<td class="md"></td>
<td class="md" nowrap><a class="el" href="classlog4cxx_1_1helpers_1_1_pool.html">log4cxx::helpers::Pool</a> &amp;&nbsp;</td>
<td class="mdname" nowrap> <em>pool</em></td>
</tr>
<tr>
<td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"><code> [pure virtual]</code></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Log in <code><a class="el" href="classlog4cxx_1_1_appender.html">Appender</a></code> specific way.
<p>
When appropriate, Loggers will call the <code>doAppend</code> method of appender implementations in order to log.
<p>
Implemented in <a class="el" href="classlog4cxx_1_1_appender_skeleton.html#2df87e9db87ebe5396ea94fb9c25c488">AppenderSkeleton</a>. </td>
</tr>
</table>
<a class="anchor" name="31134324f99ee92e17f359e3daa05ca7"></a><!-- doxytag: member="log4cxx::Appender::getFilter" ref="31134324f99ee92e17f359e3daa05ca7" args="() const =0" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">virtual <a class="el" href="classlog4cxx_1_1helpers_1_1_object_ptr_t.html">spi::FilterPtr</a> getFilter </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<code> [pure virtual]</code></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Returns the head Filter.
<p>
The Filters are organized in a linked list and so all Filters on this <a class="el" href="classlog4cxx_1_1_appender.html">Appender</a> are available through the result.<p>
<dl compact><dt><b>Returns:</b></dt><dd>the head Filter or null, if no Filters are present </dd></dl>
<p>
Implemented in <a class="el" href="classlog4cxx_1_1_appender_skeleton.html#459cdb3654725c5dbc68ac4e4a8b980e">AppenderSkeleton</a>. </td>
</tr>
</table>
<a class="anchor" name="1ec13ad0f8e6a13f91dc7a7ce7a4a564"></a><!-- doxytag: member="log4cxx::Appender::getLayout" ref="1ec13ad0f8e6a13f91dc7a7ce7a4a564" args="() const =0" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">virtual <a class="el" href="classlog4cxx_1_1helpers_1_1_object_ptr_t.html">LayoutPtr</a> getLayout </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<code> [pure virtual]</code></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Returns this appenders layout.
<p>
<p>
Implemented in <a class="el" href="classlog4cxx_1_1_appender_skeleton.html#f54e877f133079a04e7c210c0d3ad5dc">AppenderSkeleton</a>. </td>
</tr>
</table>
<a class="anchor" name="e7a22efd00c94d9d06b832fe6953baa3"></a><!-- doxytag: member="log4cxx::Appender::getName" ref="e7a22efd00c94d9d06b832fe6953baa3" args="() const =0" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">virtual <a class="el" href="namespacelog4cxx.html#d7ec98d27bca7666e23f27dd1fb181c8">LogString</a> getName </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<code> [pure virtual]</code></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Get the name of this appender.
<p>
The name uniquely identifies the appender.
<p>
Implemented in <a class="el" href="classlog4cxx_1_1_appender_skeleton.html#c22a8d65fdc07f5b0e52c935b0ee055f">AppenderSkeleton</a>. </td>
</tr>
</table>
<a class="anchor" name="1fa0a21a0f0a6ec3a9e92a98db9ffa85"></a><!-- doxytag: member="log4cxx::Appender::requiresLayout" ref="1fa0a21a0f0a6ec3a9e92a98db9ffa85" args="() const =0" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">virtual bool requiresLayout </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<code> [pure virtual]</code></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Configurators call this method to determine if the appender requires a layout.
<p>
If this method returns <code>true</code>, meaning that layout is required, then the configurator will configure an layout using the configuration information at its disposal. If this method returns <code>false</code>, meaning that a layout is not required, then layout configuration will be skipped even if there is available layout configuration information at the disposal of the configurator..<p>
In the rather exceptional case, where the appender implementation admits a layout but can also work without it, then the appender should return <code>true</code>.
<p>
Implemented in <a class="el" href="classlog4cxx_1_1_async_appender.html#4312e727a9ea814779d2c9950dc3c73e">AsyncAppender</a>, <a class="el" href="classlog4cxx_1_1db_1_1_o_d_b_c_appender.html#4312e727a9ea814779d2c9950dc3c73e">ODBCAppender</a>, <a class="el" href="classlog4cxx_1_1net_1_1_s_m_t_p_appender.html#4312e727a9ea814779d2c9950dc3c73e">SMTPAppender</a>, <a class="el" href="classlog4cxx_1_1net_1_1_socket_appender_skeleton.html#a401613183830542f9c6b1c425198cdc">SocketAppenderSkeleton</a>, <a class="el" href="classlog4cxx_1_1net_1_1_socket_hub_appender.html#4312e727a9ea814779d2c9950dc3c73e">SocketHubAppender</a>, <a class="el" href="classlog4cxx_1_1net_1_1_syslog_appender.html#4312e727a9ea814779d2c9950dc3c73e">SyslogAppender</a>, <a class="el" href="classlog4cxx_1_1net_1_1_telnet_appender.html#4312e727a9ea814779d2c9950dc3c73e">TelnetAppender</a>, <a class="el" href="classlog4cxx_1_1nt_1_1_n_t_event_log_appender.html#a401613183830542f9c6b1c425198cdc">NTEventLogAppender</a>, <a class="el" href="classlog4cxx_1_1nt_1_1_output_debug_string_appender.html#a401613183830542f9c6b1c425198cdc">OutputDebugStringAppender</a>, and <a class="el" href="classlog4cxx_1_1_writer_appender.html#4312e727a9ea814779d2c9950dc3c73e">WriterAppender</a>. </td>
</tr>
</table>
<a class="anchor" name="88cfba44fa745f658fab9b8c6a8d959f"></a><!-- doxytag: member="log4cxx::Appender::setLayout" ref="88cfba44fa745f658fab9b8c6a8d959f" args="(const LayoutPtr &amp;layout)=0" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">virtual void setLayout </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const <a class="el" href="classlog4cxx_1_1helpers_1_1_object_ptr_t.html">LayoutPtr</a> &amp;&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>layout</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [pure virtual]</code></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Set the <a class="el" href="classlog4cxx_1_1_layout.html">Layout</a> for this appender.
<p>
<p>
Implemented in <a class="el" href="classlog4cxx_1_1_appender_skeleton.html#115922e0a4ce63e2145c8861aac07c7f">AppenderSkeleton</a>. </td>
</tr>
</table>
<a class="anchor" name="46473dcf1999f98a4c97168a3d2c7c84"></a><!-- doxytag: member="log4cxx::Appender::setName" ref="46473dcf1999f98a4c97168a3d2c7c84" args="(const LogString &amp;name)=0" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">virtual void setName </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const <a class="el" href="namespacelog4cxx.html#d7ec98d27bca7666e23f27dd1fb181c8">LogString</a> &amp;&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>name</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap><code> [pure virtual]</code></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Set the name of this appender.
<p>
The name is used by other components to identify this appender.
<p>
Implemented in <a class="el" href="classlog4cxx_1_1_appender_skeleton.html#87e335b8d195a30dbdfe18d5da24b047">AppenderSkeleton</a>. </td>
</tr>
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="appender_8h.html">appender.h</a></ul>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
</BODY>
</HTML>