blob: ede3232f5d668183708218528421a259efabc90b [file] [log] [blame]
<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>Rule (Apache Chainsaw 2.2.0-SNAPSHOT API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../jquery/jquery-ui.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../../jquery/jquery-3.5.1.js"></script>
<script type="text/javascript" src="../../../../jquery/jquery-ui.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Rule (Apache Chainsaw 2.2.0-SNAPSHOT API)";
}
}
catch(err) {
}
//-->
var data = {"i0":6,"i1":6,"i2":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
var pathtoroot = "../../../../";
var useModuleDirectories = true;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/Rule.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.apache.log4j.rule</a></div>
<h2 title="Interface Rule" class="title">Interface Rule</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Known Implementing Classes:</dt>
<dd><code><a href="AbstractRule.html" title="class in org.apache.log4j.rule">AbstractRule</a></code>, <code><a href="AndRule.html" title="class in org.apache.log4j.rule">AndRule</a></code>, <code><a href="ColorRule.html" title="class in org.apache.log4j.rule">ColorRule</a></code>, <code><a href="EqualsRule.html" title="class in org.apache.log4j.rule">EqualsRule</a></code>, <code><a href="ExistsRule.html" title="class in org.apache.log4j.rule">ExistsRule</a></code>, <code><a href="ExpressionRule.html" title="class in org.apache.log4j.rule">ExpressionRule</a></code>, <code><a href="InequalityRule.html" title="class in org.apache.log4j.rule">InequalityRule</a></code>, <code><a href="LevelEqualsRule.html" title="class in org.apache.log4j.rule">LevelEqualsRule</a></code>, <code><a href="LikeRule.html" title="class in org.apache.log4j.rule">LikeRule</a></code>, <code><a href="NotEqualsRule.html" title="class in org.apache.log4j.rule">NotEqualsRule</a></code>, <code><a href="NotLevelEqualsRule.html" title="class in org.apache.log4j.rule">NotLevelEqualsRule</a></code>, <code><a href="NotRule.html" title="class in org.apache.log4j.rule">NotRule</a></code>, <code><a href="OrRule.html" title="class in org.apache.log4j.rule">OrRule</a></code>, <code><a href="PartialTextMatchRule.html" title="class in org.apache.log4j.rule">PartialTextMatchRule</a></code>, <code><a href="../chainsaw/RuleMediator.html" title="class in org.apache.log4j.chainsaw">RuleMediator</a></code>, <code><a href="TimestampEqualsRule.html" title="class in org.apache.log4j.rule">TimestampEqualsRule</a></code>, <code><a href="TimestampInequalityRule.html" title="class in org.apache.log4j.rule">TimestampInequalityRule</a></code></dd>
</dl>
<hr>
<pre>public interface <span class="typeNameLabel">Rule</span></pre>
<div class="block">A Rule evaluates to true of false given a LoggingEvent object, and can notify
listeners when the underlying implementation of this Rule has it's
criteria changed by using the standard PropertyChangeListener infrastructure.</div>
<dl>
<dt><span class="simpleTagLabel">Author:</span></dt>
<dd>Paul Smith (psmith@apache.org), Scott Deboy (sdeboy@apache.org)</dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== METHOD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addPropertyChangeListener(java.beans.PropertyChangeListener)">addPropertyChangeListener</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.desktop/java/beans/PropertyChangeListener.html?is-external=true" title="class or interface in java.beans" class="externalLink">PropertyChangeListener</a>&nbsp;listener)</code></th>
<td class="colLast">
<div class="block">Adds a PropertyChangeListener to this instance, which is notified when
underlying Rule information has changed.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#evaluate(org.apache.log4j.chainsaw.logevents.ChainsawLoggingEvent,java.util.Map)">evaluate</a></span>&#8203;(<a href="../chainsaw/logevents/ChainsawLoggingEvent.html" title="class in org.apache.log4j.chainsaw.logevents">ChainsawLoggingEvent</a>&nbsp;e,
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a>&nbsp;matches)</code></th>
<td class="colLast">
<div class="block">Returns true if this implementation of the rule accepts the LoggingEvent,
or false if not.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#removePropertyChangeListener(java.beans.PropertyChangeListener)">removePropertyChangeListener</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.desktop/java/beans/PropertyChangeListener.html?is-external=true" title="class or interface in java.beans" class="externalLink">PropertyChangeListener</a>&nbsp;listener)</code></th>
<td class="colLast">
<div class="block">Removes a known PropertyChangeListener from this Rule.</div>
</td>
</tr>
</table>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a id="evaluate(org.apache.log4j.chainsaw.logevents.ChainsawLoggingEvent,java.util.Map)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>evaluate</h4>
<pre class="methodSignature">boolean&nbsp;evaluate&#8203;(<a href="../chainsaw/logevents/ChainsawLoggingEvent.html" title="class in org.apache.log4j.chainsaw.logevents">ChainsawLoggingEvent</a>&nbsp;e,
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Map.html?is-external=true" title="class or interface in java.util" class="externalLink">Map</a>&nbsp;matches)</pre>
<div class="block">Returns true if this implementation of the rule accepts the LoggingEvent,
or false if not.
<p>What True/False means can be client-specific.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>e</code> - LoggingEvent this instance will evaluate</dd>
<dd><code>matches</code> - a Map of event field keys to Sets of matching strings (may be null) which will be
updated during execution of this method to include field and string matches based on the rule
evaluation results</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if this Rule instance accepts the event, otherwise false.</dd>
</dl>
</li>
</ul>
<a id="addPropertyChangeListener(java.beans.PropertyChangeListener)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addPropertyChangeListener</h4>
<pre class="methodSignature">void&nbsp;addPropertyChangeListener&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.desktop/java/beans/PropertyChangeListener.html?is-external=true" title="class or interface in java.beans" class="externalLink">PropertyChangeListener</a>&nbsp;listener)</pre>
<div class="block">Adds a PropertyChangeListener to this instance, which is notified when
underlying Rule information has changed.
(there are no specific property name events).</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - listener</dd>
</dl>
</li>
</ul>
<a id="removePropertyChangeListener(java.beans.PropertyChangeListener)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>removePropertyChangeListener</h4>
<pre class="methodSignature">void&nbsp;removePropertyChangeListener&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.desktop/java/beans/PropertyChangeListener.html?is-external=true" title="class or interface in java.beans" class="externalLink">PropertyChangeListener</a>&nbsp;listener)</pre>
<div class="block">Removes a known PropertyChangeListener from this Rule.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - listener</dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
</div>
</main>
<!-- ========= END OF CLASS DATA ========= -->
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/Rule.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small><p align="center">Copyright &#169; 2002-2021 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All Rights Reserved.<br /> Apache Logging, Apache Log4j, Log4j, Apache Chainsaw, Chainsaw, Apache, the Apache feather logo, the Apache Logging project logo, and the Apache Log4j logo are trademarks of The Apache Software Foundation.</p></small></p>
</footer>
</body>
</html>