blob: cb2f53c7784f8a815e612baaf880c9ad663af0bd [file] [log] [blame]
<!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">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.11"/>
<title>Apache log4cxx: ErrorHandler Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
$(window).load(resizeHeight);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { init_search(); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname"><a href="http://logging.apache.org/log4cxx">Apache log4cxx</a>
&#160;<span id="projectnumber">Version 0.11.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;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 class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('classlog4cxx_1_1spi_1_1_error_handler.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classlog4cxx_1_1spi_1_1_error_handler-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">ErrorHandler Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
</div><!--header-->
<div class="contents">
<p>Appenders may delegate their error handling to <code>ErrorHandlers</code>.
<a href="classlog4cxx_1_1spi_1_1_error_handler.html#details">More...</a></p>
<div class="dynheader">
Inheritance diagram for ErrorHandler:</div>
<div class="dyncontent">
<div class="center">
<img src="classlog4cxx_1_1spi_1_1_error_handler.png" usemap="#ErrorHandler_map" alt=""/>
<map id="ErrorHandler_map" name="ErrorHandler_map">
<area href="classlog4cxx_1_1spi_1_1_option_handler.html" title="A string based interface to configure package components. " alt="OptionHandler" shape="rect" coords="77,56,222,80"/>
<area href="classlog4cxx_1_1helpers_1_1_object.html" title="base class for java-like objects. " alt="Object" shape="rect" coords="77,0,222,24"/>
<area href="classlog4cxx_1_1helpers_1_1_only_once_error_handler.html" title="The OnlyOnceErrorHandler implements log4cxx&#39;s default error handling policy which consists of emittin..." alt="OnlyOnceErrorHandler" shape="rect" coords="0,168,145,192"/>
<area href="classlog4cxx_1_1varia_1_1_fallback_error_handler.html" title="The FallbackErrorHandler implements the ErrorHandler interface such that a secondary appender may be ..." alt="FallbackErrorHandler" shape="rect" coords="155,168,300,192"/>
</map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a70e018e3f27ead8d955acd70e0e11737"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlog4cxx_1_1spi_1_1_error_handler.html#a70e018e3f27ead8d955acd70e0e11737">~ErrorHandler</a> ()</td></tr>
<tr class="separator:a70e018e3f27ead8d955acd70e0e11737"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a657c680e0246d95168aecbe4d299822b"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlog4cxx_1_1spi_1_1_error_handler.html#a657c680e0246d95168aecbe4d299822b">setLogger</a> (const <a class="el" href="namespacelog4cxx.html#a59eb1cd441fdcbcc0f5479ec03f962ea">LoggerPtr</a> &amp;logger)=0</td></tr>
<tr class="memdesc:a657c680e0246d95168aecbe4d299822b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add a reference to a logger to which the failing appender might be attached to. <a href="#a657c680e0246d95168aecbe4d299822b">More...</a><br /></td></tr>
<tr class="separator:a657c680e0246d95168aecbe4d299822b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a20b213d025014be558dfab7e11652825"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlog4cxx_1_1spi_1_1_error_handler.html#a20b213d025014be558dfab7e11652825">error</a> (const <a class="el" href="namespacelog4cxx.html#ad7ec98d27bca7666e23f27dd1fb181c8">LogString</a> &amp;message, const std::exception &amp;e, int errorCode) const =0</td></tr>
<tr class="memdesc:a20b213d025014be558dfab7e11652825"><td class="mdescLeft">&#160;</td><td class="mdescRight">Equivalent to the error(const String&amp;, <a class="el" href="classlog4cxx_1_1helpers_1_1_exception.html" title="The class Exception and its subclasses indicate conditions that a reasonable application might want t...">helpers::Exception</a>&amp;, int, <a class="el" href="classlog4cxx_1_1spi_1_1_logging_event.html" title="The internal representation of logging events. ">spi::LoggingEvent</a>&amp;) with the the event parameteter set to null. <a href="#a20b213d025014be558dfab7e11652825">More...</a><br /></td></tr>
<tr class="separator:a20b213d025014be558dfab7e11652825"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a390324c11808d0cd4fee6c3967932f27"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlog4cxx_1_1spi_1_1_error_handler.html#a390324c11808d0cd4fee6c3967932f27">error</a> (const <a class="el" href="namespacelog4cxx.html#ad7ec98d27bca7666e23f27dd1fb181c8">LogString</a> &amp;message) const =0</td></tr>
<tr class="memdesc:a390324c11808d0cd4fee6c3967932f27"><td class="mdescLeft">&#160;</td><td class="mdescRight">This method is normally used to just print the error message passed as a parameter. <a href="#a390324c11808d0cd4fee6c3967932f27">More...</a><br /></td></tr>
<tr class="separator:a390324c11808d0cd4fee6c3967932f27"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab087032b921fcef1735256049d38f0c1"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlog4cxx_1_1spi_1_1_error_handler.html#ab087032b921fcef1735256049d38f0c1">error</a> (const <a class="el" href="namespacelog4cxx.html#ad7ec98d27bca7666e23f27dd1fb181c8">LogString</a> &amp;message, const std::exception &amp;e, int errorCode, const <a class="el" href="namespacelog4cxx_1_1spi.html#ab5abd68f0fb303c6d5f5f7d1ff49b3a6">LoggingEventPtr</a> &amp;event) const =0</td></tr>
<tr class="memdesc:ab087032b921fcef1735256049d38f0c1"><td class="mdescLeft">&#160;</td><td class="mdescRight">This method is invoked to handle the error. <a href="#ab087032b921fcef1735256049d38f0c1">More...</a><br /></td></tr>
<tr class="separator:ab087032b921fcef1735256049d38f0c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abf38035eedf752b85b9ffdcf414edd64"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlog4cxx_1_1spi_1_1_error_handler.html#abf38035eedf752b85b9ffdcf414edd64">setAppender</a> (const <a class="el" href="namespacelog4cxx.html#a825abdb8af807ab3153132d863803029">AppenderPtr</a> &amp;appender)=0</td></tr>
<tr class="memdesc:abf38035eedf752b85b9ffdcf414edd64"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the appender for which errors are handled. <a href="#abf38035eedf752b85b9ffdcf414edd64">More...</a><br /></td></tr>
<tr class="separator:abf38035eedf752b85b9ffdcf414edd64"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abc2bb91894f25f42d8e1a429c8bec2bc"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlog4cxx_1_1spi_1_1_error_handler.html#abc2bb91894f25f42d8e1a429c8bec2bc">setBackupAppender</a> (const <a class="el" href="namespacelog4cxx.html#a825abdb8af807ab3153132d863803029">AppenderPtr</a> &amp;appender)=0</td></tr>
<tr class="memdesc:abc2bb91894f25f42d8e1a429c8bec2bc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the appender to fallback upon in case of failure. <a href="#abc2bb91894f25f42d8e1a429c8bec2bc">More...</a><br /></td></tr>
<tr class="separator:abc2bb91894f25f42d8e1a429c8bec2bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classlog4cxx_1_1spi_1_1_option_handler"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classlog4cxx_1_1spi_1_1_option_handler')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classlog4cxx_1_1spi_1_1_option_handler.html">OptionHandler</a></td></tr>
<tr class="memitem:ad773ac49843844af53fe553912ed63e5 inherit pub_methods_classlog4cxx_1_1spi_1_1_option_handler"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlog4cxx_1_1spi_1_1_option_handler.html#ad773ac49843844af53fe553912ed63e5">~OptionHandler</a> ()</td></tr>
<tr class="separator:ad773ac49843844af53fe553912ed63e5 inherit pub_methods_classlog4cxx_1_1spi_1_1_option_handler"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af04d4bfbd66b46083b1aa042fdafbb06 inherit pub_methods_classlog4cxx_1_1spi_1_1_option_handler"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlog4cxx_1_1spi_1_1_option_handler.html#af04d4bfbd66b46083b1aa042fdafbb06">activateOptions</a> (<a class="el" href="classlog4cxx_1_1helpers_1_1_pool.html">log4cxx::helpers::Pool</a> &amp;p)=0</td></tr>
<tr class="memdesc:af04d4bfbd66b46083b1aa042fdafbb06 inherit pub_methods_classlog4cxx_1_1spi_1_1_option_handler"><td class="mdescLeft">&#160;</td><td class="mdescRight">Activate the options that were previously set with calls to option setters. <a href="#af04d4bfbd66b46083b1aa042fdafbb06">More...</a><br /></td></tr>
<tr class="separator:af04d4bfbd66b46083b1aa042fdafbb06 inherit pub_methods_classlog4cxx_1_1spi_1_1_option_handler"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8f2ae2ded63f80c627269c99b20c19ee inherit pub_methods_classlog4cxx_1_1spi_1_1_option_handler"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlog4cxx_1_1spi_1_1_option_handler.html#a8f2ae2ded63f80c627269c99b20c19ee">setOption</a> (const <a class="el" href="namespacelog4cxx.html#ad7ec98d27bca7666e23f27dd1fb181c8">LogString</a> &amp;option, const <a class="el" href="namespacelog4cxx.html#ad7ec98d27bca7666e23f27dd1fb181c8">LogString</a> &amp;value)=0</td></tr>
<tr class="memdesc:a8f2ae2ded63f80c627269c99b20c19ee inherit pub_methods_classlog4cxx_1_1spi_1_1_option_handler"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set <code>option</code> to <code>value</code>. <a href="#a8f2ae2ded63f80c627269c99b20c19ee">More...</a><br /></td></tr>
<tr class="separator:a8f2ae2ded63f80c627269c99b20c19ee inherit pub_methods_classlog4cxx_1_1spi_1_1_option_handler"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classlog4cxx_1_1helpers_1_1_object"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classlog4cxx_1_1helpers_1_1_object')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classlog4cxx_1_1helpers_1_1_object.html">Object</a></td></tr>
<tr class="memitem:ae7b62e37794f297c0cede40ed0e84fcd inherit pub_methods_classlog4cxx_1_1helpers_1_1_object"><td class="memItemLeft" align="right" valign="top">virtual const <a class="el" href="classlog4cxx_1_1helpers_1_1_class.html">helpers::Class</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlog4cxx_1_1helpers_1_1_object.html#ae7b62e37794f297c0cede40ed0e84fcd">getClass</a> () const </td></tr>
<tr class="separator:ae7b62e37794f297c0cede40ed0e84fcd inherit pub_methods_classlog4cxx_1_1helpers_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab5cc4f9ba1ea5c2f25bc4b1f0dac5dc5 inherit pub_methods_classlog4cxx_1_1helpers_1_1_object"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlog4cxx_1_1helpers_1_1_object.html#ab5cc4f9ba1ea5c2f25bc4b1f0dac5dc5">~Object</a> ()</td></tr>
<tr class="separator:ab5cc4f9ba1ea5c2f25bc4b1f0dac5dc5 inherit pub_methods_classlog4cxx_1_1helpers_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad46110ab1ec2f0c6f3d1e0803df6cdc4 inherit pub_methods_classlog4cxx_1_1helpers_1_1_object"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlog4cxx_1_1helpers_1_1_object.html#ad46110ab1ec2f0c6f3d1e0803df6cdc4">addRef</a> () const =0</td></tr>
<tr class="separator:ad46110ab1ec2f0c6f3d1e0803df6cdc4 inherit pub_methods_classlog4cxx_1_1helpers_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f5e8d8350f515ab75e47c61f2e31c21 inherit pub_methods_classlog4cxx_1_1helpers_1_1_object"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlog4cxx_1_1helpers_1_1_object.html#a1f5e8d8350f515ab75e47c61f2e31c21">releaseRef</a> () const =0</td></tr>
<tr class="separator:a1f5e8d8350f515ab75e47c61f2e31c21 inherit pub_methods_classlog4cxx_1_1helpers_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3604a5fb08f7048d41b51a3943740b96 inherit pub_methods_classlog4cxx_1_1helpers_1_1_object"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlog4cxx_1_1helpers_1_1_object.html#a3604a5fb08f7048d41b51a3943740b96">instanceof</a> (const <a class="el" href="classlog4cxx_1_1helpers_1_1_class.html">Class</a> &amp;clazz) const =0</td></tr>
<tr class="separator:a3604a5fb08f7048d41b51a3943740b96 inherit pub_methods_classlog4cxx_1_1helpers_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5a7744a4efdb699356cef215613903c3 inherit pub_methods_classlog4cxx_1_1helpers_1_1_object"><td class="memItemLeft" align="right" valign="top">virtual const void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlog4cxx_1_1helpers_1_1_object.html#a5a7744a4efdb699356cef215613903c3">cast</a> (const <a class="el" href="classlog4cxx_1_1helpers_1_1_class.html">Class</a> &amp;clazz) const =0</td></tr>
<tr class="separator:a5a7744a4efdb699356cef215613903c3 inherit pub_methods_classlog4cxx_1_1helpers_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_static_methods_classlog4cxx_1_1helpers_1_1_object"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classlog4cxx_1_1helpers_1_1_object')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classlog4cxx_1_1helpers_1_1_object.html">Object</a></td></tr>
<tr class="memitem:a0bdbda4effe8938c1aca6d4397e5a39d inherit pub_static_methods_classlog4cxx_1_1helpers_1_1_object"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="classlog4cxx_1_1helpers_1_1_class.html">helpers::Class</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlog4cxx_1_1helpers_1_1_object.html#a0bdbda4effe8938c1aca6d4397e5a39d">getStaticClass</a> ()</td></tr>
<tr class="separator:a0bdbda4effe8938c1aca6d4397e5a39d inherit pub_static_methods_classlog4cxx_1_1helpers_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a50ec9288d0b7e3140dee8e24ee74a212 inherit pub_static_methods_classlog4cxx_1_1helpers_1_1_object"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="classlog4cxx_1_1helpers_1_1_class_registration.html">log4cxx::helpers::ClassRegistration</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlog4cxx_1_1helpers_1_1_object.html#a50ec9288d0b7e3140dee8e24ee74a212">registerClass</a> ()</td></tr>
<tr class="separator:a50ec9288d0b7e3140dee8e24ee74a212 inherit pub_static_methods_classlog4cxx_1_1helpers_1_1_object"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Appenders may delegate their error handling to <code>ErrorHandlers</code>. </p>
<p>Error handling is a particularly tedious to get right because by definition errors are hard to predict and to reproduce.</p>
<p>Please take the time to contact the author in case you discover that errors are not properly handled. You are most welcome to suggest new error handling policies or criticize existing policies. </p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a70e018e3f27ead8d955acd70e0e11737"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual ~<a class="el" href="classlog4cxx_1_1spi_1_1_error_handler.html">ErrorHandler</a> </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a20b213d025014be558dfab7e11652825"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void error </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="namespacelog4cxx.html#ad7ec98d27bca7666e23f27dd1fb181c8">LogString</a> &amp;&#160;</td>
<td class="paramname"><em>message</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const std::exception &amp;&#160;</td>
<td class="paramname"><em>e</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>errorCode</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Equivalent to the error(const String&amp;, <a class="el" href="classlog4cxx_1_1helpers_1_1_exception.html" title="The class Exception and its subclasses indicate conditions that a reasonable application might want t...">helpers::Exception</a>&amp;, int, <a class="el" href="classlog4cxx_1_1spi_1_1_logging_event.html" title="The internal representation of logging events. ">spi::LoggingEvent</a>&amp;) with the the event parameteter set to null. </p>
<p>Implemented in <a class="el" href="classlog4cxx_1_1helpers_1_1_only_once_error_handler.html#a9084c6c8c225845ed09867b730590514">OnlyOnceErrorHandler</a>, and <a class="el" href="classlog4cxx_1_1varia_1_1_fallback_error_handler.html#a9084c6c8c225845ed09867b730590514">FallbackErrorHandler</a>.</p>
</div>
</div>
<a class="anchor" id="a390324c11808d0cd4fee6c3967932f27"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void error </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="namespacelog4cxx.html#ad7ec98d27bca7666e23f27dd1fb181c8">LogString</a> &amp;&#160;</td>
<td class="paramname"><em>message</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>This method is normally used to just print the error message passed as a parameter. </p>
<p>Implemented in <a class="el" href="classlog4cxx_1_1varia_1_1_fallback_error_handler.html#a40069b80e5ee8953b25177cc3574aa4b">FallbackErrorHandler</a>, and <a class="el" href="classlog4cxx_1_1helpers_1_1_only_once_error_handler.html#ad92a3ce84facc670863be59563d0603d">OnlyOnceErrorHandler</a>.</p>
</div>
</div>
<a class="anchor" id="ab087032b921fcef1735256049d38f0c1"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void error </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="namespacelog4cxx.html#ad7ec98d27bca7666e23f27dd1fb181c8">LogString</a> &amp;&#160;</td>
<td class="paramname"><em>message</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const std::exception &amp;&#160;</td>
<td class="paramname"><em>e</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>errorCode</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="namespacelog4cxx_1_1spi.html#ab5abd68f0fb303c6d5f5f7d1ff49b3a6">LoggingEventPtr</a> &amp;&#160;</td>
<td class="paramname"><em>event</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>This method is invoked to handle the error. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">message</td><td>The message assoicated with the error. </td></tr>
<tr><td class="paramname">e</td><td>The Exption that was thrown when the error occured. </td></tr>
<tr><td class="paramname">errorCode</td><td>The error code associated with the error. </td></tr>
<tr><td class="paramname">event</td><td>The logging event that the failing appender is asked to log. </td></tr>
</table>
</dd>
</dl>
<p>Implemented in <a class="el" href="classlog4cxx_1_1varia_1_1_fallback_error_handler.html#a24071234bd8fa94ccab51c6ac5e246c5">FallbackErrorHandler</a>, and <a class="el" href="classlog4cxx_1_1helpers_1_1_only_once_error_handler.html#a24071234bd8fa94ccab51c6ac5e246c5">OnlyOnceErrorHandler</a>.</p>
</div>
</div>
<a class="anchor" id="abf38035eedf752b85b9ffdcf414edd64"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void setAppender </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="namespacelog4cxx.html#a825abdb8af807ab3153132d863803029">AppenderPtr</a> &amp;&#160;</td>
<td class="paramname"><em>appender</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the appender for which errors are handled. </p>
<p>This method is usually called when the error handler is configured. </p>
<p>Implemented in <a class="el" href="classlog4cxx_1_1varia_1_1_fallback_error_handler.html#a5e3545411b1bb167ca7c30d554cb7252">FallbackErrorHandler</a>, and <a class="el" href="classlog4cxx_1_1helpers_1_1_only_once_error_handler.html#a5d46275bd2a01b2102f4b03b294ec50b">OnlyOnceErrorHandler</a>.</p>
</div>
</div>
<a class="anchor" id="abc2bb91894f25f42d8e1a429c8bec2bc"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void setBackupAppender </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="namespacelog4cxx.html#a825abdb8af807ab3153132d863803029">AppenderPtr</a> &amp;&#160;</td>
<td class="paramname"><em>appender</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the appender to fallback upon in case of failure. </p>
<p>Implemented in <a class="el" href="classlog4cxx_1_1varia_1_1_fallback_error_handler.html#a953bb1714ea396c901a07bbdf6a9e923">FallbackErrorHandler</a>, and <a class="el" href="classlog4cxx_1_1helpers_1_1_only_once_error_handler.html#af5ce3a0cde4a80c96cf5dee6389550b5">OnlyOnceErrorHandler</a>.</p>
</div>
</div>
<a class="anchor" id="a657c680e0246d95168aecbe4d299822b"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void setLogger </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="namespacelog4cxx.html#a59eb1cd441fdcbcc0f5479ec03f962ea">LoggerPtr</a> &amp;&#160;</td>
<td class="paramname"><em>logger</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Add a reference to a logger to which the failing appender might be attached to. </p>
<p>The failing appender will be searched and replaced only in the loggers you add through this method.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">logger</td><td>One of the loggers that will be searched for the failing appender in view of replacement. </td></tr>
</table>
</dd>
</dl>
<p>Implemented in <a class="el" href="classlog4cxx_1_1helpers_1_1_only_once_error_handler.html#ad71cb681f580c2dd0ac0b15c4c5cf979">OnlyOnceErrorHandler</a>, and <a class="el" href="classlog4cxx_1_1varia_1_1_fallback_error_handler.html#ad71cb681f580c2dd0ac0b15c4c5cf979">FallbackErrorHandler</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="errorhandler_8h.html">errorhandler.h</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!--
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>