Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > 453d9f45d0ad8c373a90f413059ffa29 > files > 275

log4cxx-devel-0.10.0-10.fc15.i686.rpm

<!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"/>
<title>Apache log4cxx: AndFilter Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.7.3 -->
<div id="top">
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">Apache log4cxx&#160;<span id="projectnumber">Version 0.10.0</span></div>
  </td>
 </tr>
 </tbody>
</table>
</div>
  <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>
    </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>
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
  initNavTree('classlog4cxx_1_1filter_1_1_and_filter.html','');
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a>  </div>
  <div class="headertitle">
<h1>AndFilter Class Reference</h1>  </div>
</div>
<div class="contents">
<!-- doxytag: class="log4cxx::filter::AndFilter" --><!-- doxytag: inherits="log4cxx::spi::Filter" -->
<p>A filter that 'and's the results of any number of contained filters together.  
<a href="#_details">More...</a></p>

<p>Inherits <a class="el" href="classlog4cxx_1_1spi_1_1_filter.html">log4cxx::spi::Filter</a>.</p>

<p><a href="classlog4cxx_1_1filter_1_1_and_filter-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlog4cxx_1_1filter_1_1_and_filter.html#a9942d9350f6c3a0fb2a906bc66f7319b">AndFilter</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlog4cxx_1_1filter_1_1_and_filter.html#ad7354489d5958202a3fd55f90427d1f5">addFilter</a> (const <a class="el" href="classlog4cxx_1_1helpers_1_1_object_ptr_t.html">log4cxx::spi::FilterPtr</a> &amp;filter)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlog4cxx_1_1filter_1_1_and_filter.html#aca9512eb8af976ace7ab4d1ac3513aa3">setAcceptOnMatch</a> (bool acceptOnMatch)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classlog4cxx_1_1spi_1_1_filter.html#a8c8b0cee5b13b164894f9eedd8d78bcd">FilterDecision</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classlog4cxx_1_1filter_1_1_and_filter.html#af0945cde84b8648b7497a6140e91ac5c">decide</a> (const <a class="el" href="classlog4cxx_1_1helpers_1_1_object_ptr_t.html">spi::LoggingEventPtr</a> &amp;event) const </td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>A filter that 'and's the results of any number of contained filters together. </p>
<p>For the filter to process events, all contained filters must return Filter::ACCEPT.</p>
<p>If the contained filters do not return Filter::ACCEPT, Filter::NEUTRAL is returned.</p>
<p>If acceptOnMatch is set to true, Filter::ACCEPT is returned. If acceptOnMatch is set to false, Filter::DENY is returned.</p>
<p>Here is an example config that will accept only events that contain BOTH a DEBUG level AND 'test' in the message:</p>
<p>&lt;appender name="STDOUT" class="org.apache.log4j.ConsoleAppender"&gt; &lt;filter class="org.apache.log4j.filter.AndFilter"&gt; &lt;filter class="org.apache.log4j.filter.LevelMatchFilter"&gt; &lt;param name="levelToMatch" value="DEBUG" /&gt; &lt;param name="acceptOnMatch" value="true" /&gt; &lt;/filter&gt; &lt;filter class="org.apache.log4j.filter.StringMatchFilter"&gt; &lt;param name="stringToMatch" value="test" /&gt; &lt;param name="acceptOnMatch" value="true" /&gt; &lt;/filter&gt; &lt;param name="acceptOnMatch" value="false"/&gt; &lt;/filter&gt; &lt;filter class="org.apache.log4j.filter.DenyAllFilter"/&gt; &lt;layout class="org.apache.log4j.SimpleLayout"/&gt; &lt;/appender&gt;</p>
<p>To accept all events EXCEPT those events that contain a DEBUG level and 'test' in the message: change the AndFilter's acceptOnMatch param to false and remove the <a class="el" href="classlog4cxx_1_1filter_1_1_deny_all_filter.html" title="This filter drops all logging events.">DenyAllFilter</a></p>
<p>NOTE: If you are defining a filter that is only relying on logging event content (no external or filter-managed state), you could opt instead to use an <a class="el" href="classlog4cxx_1_1filter_1_1_expression_filter.html" title="A filter supporting complex expressions - supports both infix and postfix expressions (infix expressi...">ExpressionFilter</a> with one of the following expressions:</p>
<p>LEVEL == DEBUG &amp;&amp; MSG ~= 'test' or ! ( LEVEL == DEBUG &amp;&amp; MSG ~= 'test' ) </p>
</div><hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a9942d9350f6c3a0fb2a906bc66f7319b"></a><!-- doxytag: member="log4cxx::filter::AndFilter::AndFilter" ref="a9942d9350f6c3a0fb2a906bc66f7319b" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classlog4cxx_1_1filter_1_1_and_filter.html">AndFilter</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="ad7354489d5958202a3fd55f90427d1f5"></a><!-- doxytag: member="log4cxx::filter::AndFilter::addFilter" ref="ad7354489d5958202a3fd55f90427d1f5" args="(const log4cxx::spi::FilterPtr &amp;filter)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void addFilter </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classlog4cxx_1_1helpers_1_1_object_ptr_t.html">log4cxx::spi::FilterPtr</a> &amp;&#160;</td>
          <td class="paramname"><em>filter</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="af0945cde84b8648b7497a6140e91ac5c"></a><!-- doxytag: member="log4cxx::filter::AndFilter::decide" ref="af0945cde84b8648b7497a6140e91ac5c" args="(const spi::LoggingEventPtr &amp;event) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classlog4cxx_1_1spi_1_1_filter.html#a8c8b0cee5b13b164894f9eedd8d78bcd">FilterDecision</a> decide </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classlog4cxx_1_1helpers_1_1_object_ptr_t.html">spi::LoggingEventPtr</a> &amp;&#160;</td>
          <td class="paramname"><em>event</em></td><td>)</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>If the decision is <code>DENY</code>, then the event will be dropped. If the decision is <code>NEUTRAL</code>, then the next filter, if any, will be invoked. If the decision is ACCEPT then the event will be logged without consulting with other filters in the chain.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">event</td><td>The LoggingEvent to decide upon. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>The decision of the filter. </dd></dl>

<p>Implements <a class="el" href="classlog4cxx_1_1spi_1_1_filter.html#a88283dec47599dde698374489126f01c">Filter</a>.</p>

</div>
</div>
<a class="anchor" id="aca9512eb8af976ace7ab4d1ac3513aa3"></a><!-- doxytag: member="log4cxx::filter::AndFilter::setAcceptOnMatch" ref="aca9512eb8af976ace7ab4d1ac3513aa3" args="(bool acceptOnMatch)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void setAcceptOnMatch </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>acceptOnMatch</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="andfilter_8h.html">andfilter.h</a></li>
</ul>
</div>
</div>
  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><a class="el" href="namespacelog4cxx.html">log4cxx</a>      </li>
      <li class="navelem"><a class="el" href="namespacelog4cxx_1_1filter.html">filter</a>      </li>
      <li class="navelem"><a class="el" href="classlog4cxx_1_1filter_1_1_and_filter.html">AndFilter</a>      </li>
<!--
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>