<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_111) on Sat Jan 20 11:27:14 CST 2018 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>EventContainer (Apache Chainsaw 2.0.0 API)</title>
<meta name="date" content="2018-01-20">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="EventContainer (Apache Chainsaw 2.0.0 API)";
        }
    }
    catch(err) {
    }
//-->
var methods = {"i0":6,"i1":6,"i2":6,"i3":6,"i4":6,"i5":6,"i6":6,"i7":6,"i8":6,"i9":6,"i10":6,"i11":6,"i12":6,"i13":6,"i14":6,"i15":6,"i16":6,"i17":6,"i18":6,"i19":6,"i20":6,"i21":6,"i22":6,"i23":6,"i24":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";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/EventContainer.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">
<li><a href="../../../../org/apache/log4j/chainsaw/EventBatchListener.html" title="interface in org.apache.log4j.chainsaw"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../org/apache/log4j/chainsaw/EventCountListener.html" title="interface in org.apache.log4j.chainsaw"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/log4j/chainsaw/EventContainer.html" target="_top">Frames</a></li>
<li><a href="EventContainer.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></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>
</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 name="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.log4j.chainsaw</div>
<h2 title="Interface EventContainer" class="title">Interface EventContainer</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Superinterfaces:</dt>
<dd><a href="../../../../org/apache/log4j/chainsaw/LoggerNameModel.html" title="interface in org.apache.log4j.chainsaw">LoggerNameModel</a>, <a href="../../../../org/apache/log4j/chainsaw/SortTableModel.html" title="interface in org.apache.log4j.chainsaw">SortTableModel</a>, <a href="http://docs.oracle.com/javase/6/docs/api/javax/swing/table/TableModel.html?is-external=true" title="class or interface in javax.swing.table">TableModel</a></dd>
</dl>
<hr>
<br>
<pre>public interface <span class="typeNameLabel">EventContainer</span>
extends <a href="../../../../org/apache/log4j/chainsaw/SortTableModel.html" title="interface in org.apache.log4j.chainsaw">SortTableModel</a>, <a href="../../../../org/apache/log4j/chainsaw/LoggerNameModel.html" title="interface in org.apache.log4j.chainsaw">LoggerNameModel</a></pre>
<div class="block">To allow pluggable TableModel implementations for Chainsaw, this interface has been factored out.

 This interface is still subject to change.</div>
<dl>
<dt><span class="simpleTagLabel">Author:</span></dt>
<dd>Paul Smith &lt;psmith@apache.org&gt;, Scott Deboy &lt;sdeboy@apache.org&gt;, Stephen Pain</dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<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="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/log4j/chainsaw/EventContainer.html#addEventCountListener-org.apache.log4j.chainsaw.EventCountListener-">addEventCountListener</a></span>(<a href="../../../../org/apache/log4j/chainsaw/EventCountListener.html" title="interface in org.apache.log4j.chainsaw">EventCountListener</a>&nbsp;listener)</code>
<div class="block">Adds an EventCountListener, to be notified when the # of events changes</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/log4j/chainsaw/EventContainer.html#addNewKeyListener-org.apache.log4j.chainsaw.NewKeyListener-">addNewKeyListener</a></span>(<a href="../../../../org/apache/log4j/chainsaw/NewKeyListener.html" title="interface in org.apache.log4j.chainsaw">NewKeyListener</a>&nbsp;l)</code>
<div class="block">Adds a NewKeyListener to be notified when unique Key (Property keys)
 arrive into this EventContainer</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/log4j/chainsaw/EventContainer.html#addPropertyChangeListener-java.beans.PropertyChangeListener-">addPropertyChangeListener</a></span>(<a href="http://docs.oracle.com/javase/6/docs/api/java/beans/PropertyChangeListener.html?is-external=true" title="class or interface in java.beans">PropertyChangeListener</a>&nbsp;l)</code>&nbsp;</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/log4j/chainsaw/EventContainer.html#addPropertyChangeListener-java.lang.String-java.beans.PropertyChangeListener-">addPropertyChangeListener</a></span>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;propertyName,
                         <a href="http://docs.oracle.com/javase/6/docs/api/java/beans/PropertyChangeListener.html?is-external=true" title="class or interface in java.beans">PropertyChangeListener</a>&nbsp;l)</code>&nbsp;</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/log4j/chainsaw/EventContainer.html#clearModel--">clearModel</a></span>()</code>
<div class="block">Clears the model completely</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/log4j/chainsaw/EventContainer.html#findColoredRow-int-boolean-">findColoredRow</a></span>(int&nbsp;currentRow,
              boolean&nbsp;forward)</code>
<div class="block">Determine next row with a non-default color</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/log4j/chainsaw/EventContainer.html#fireRowUpdated-int-boolean-">fireRowUpdated</a></span>(int&nbsp;row,
              boolean&nbsp;checkForNewColumns)</code>
<div class="block">A row was updated</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/log4j/chainsaw/EventContainer.html#fireTableEvent-int-int-int-">fireTableEvent</a></span>(int&nbsp;begin,
              int&nbsp;end,
              int&nbsp;count)</code>
<div class="block">Fire appropriate table update events for the range.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/log4j/chainsaw/EventContainer.html#getAllEvents--">getAllEvents</a></span>()</code>
<div class="block">Returns a copied list of all the event in the model.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/log4j/chainsaw/EventContainer.html#getFilteredEvents--">getFilteredEvents</a></span>()</code>
<div class="block">Returns a copied list containing the events in the model with filter applied</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/log4j/chainsaw/EventContainer.html#getMatchingEvents-org.apache.log4j.rule.Rule-">getMatchingEvents</a></span>(org.apache.log4j.rule.Rule&nbsp;rule)</code>&nbsp;</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/log4j/chainsaw/EventContainer.html#getMaxSize--">getMaxSize</a></span>()</code>
<div class="block">If this container is in Cyclic mode, returns the Size of the cyclic buffer,
 otherwise this method throws an IllegalStateException, when in unlimited
 mode, this method has no meaning.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/log4j/chainsaw/LoggingEventWrapper.html" title="class in org.apache.log4j.chainsaw">LoggingEventWrapper</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/log4j/chainsaw/EventContainer.html#getRow-int-">getRow</a></span>(int&nbsp;row)</code>
<div class="block">Returns the vector representing the row.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/log4j/chainsaw/EventContainer.html#getRowIndex-org.apache.log4j.chainsaw.LoggingEventWrapper-">getRowIndex</a></span>(<a href="../../../../org/apache/log4j/chainsaw/LoggingEventWrapper.html" title="class in org.apache.log4j.chainsaw">LoggingEventWrapper</a>&nbsp;loggingEventWrapper)</code>
<div class="block">Returns the index of the LoggingEventWrapper</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/log4j/chainsaw/EventContainer.html#getSearchMatchCount--">getSearchMatchCount</a></span>()</code>
<div class="block">Return the visible search match count</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/log4j/chainsaw/EventContainer.html#isAddRow-org.apache.log4j.chainsaw.LoggingEventWrapper-">isAddRow</a></span>(<a href="../../../../org/apache/log4j/chainsaw/LoggingEventWrapper.html" title="class in org.apache.log4j.chainsaw">LoggingEventWrapper</a>&nbsp;e)</code>
<div class="block">Adds a row to the model.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/log4j/chainsaw/EventContainer.html#locate-org.apache.log4j.rule.Rule-int-boolean-">locate</a></span>(org.apache.log4j.rule.Rule&nbsp;rule,
      int&nbsp;startRow,
      boolean&nbsp;searchForward)</code>
<div class="block">Locates a row number, starting from startRow, matching the rule provided</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/log4j/chainsaw/EventContainer.html#notifyCountListeners--">notifyCountListeners</a></span>()</code>
<div class="block">Allow a forced notification of the EventCountListeners</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/log4j/chainsaw/EventContainer.html#reFilter--">reFilter</a></span>()</code>
<div class="block">Force a re-processing of the table layout</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/log4j/chainsaw/EventContainer.html#removeNewKeyListener-org.apache.log4j.chainsaw.NewKeyListener-">removeNewKeyListener</a></span>(<a href="../../../../org/apache/log4j/chainsaw/NewKeyListener.html" title="interface in org.apache.log4j.chainsaw">NewKeyListener</a>&nbsp;l)</code>
<div class="block">Removes a listener from being notified of NewKey events.</div>
</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/log4j/chainsaw/EventContainer.html#removePropertyFromEvents-java.lang.String-">removePropertyFromEvents</a></span>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;propName)</code>
<div class="block">Remove property from all events in container</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/log4j/chainsaw/EventContainer.html#setCyclic-boolean-">setCyclic</a></span>(boolean&nbsp;cyclic)</code>
<div class="block">Configures this model to use Cyclic or non-cyclic models.</div>
</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/log4j/chainsaw/EventContainer.html#setRuleMediator-org.apache.log4j.chainsaw.RuleMediator-">setRuleMediator</a></span>(<a href="../../../../org/apache/log4j/chainsaw/RuleMediator.html" title="class in org.apache.log4j.chainsaw">RuleMediator</a>&nbsp;ruleMediator)</code>
<div class="block">Sets the RuleMediator in operation</div>
</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/log4j/chainsaw/EventContainer.html#size--">size</a></span>()</code>
<div class="block">Returns the total number of events currently in the model (all, not just filtered)</div>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/log4j/chainsaw/EventContainer.html#updateEventsWithFindRule-org.apache.log4j.rule.Rule-">updateEventsWithFindRule</a></span>(org.apache.log4j.rule.Rule&nbsp;findRule)</code>
<div class="block">Evaluate all events against the find rule</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.log4j.chainsaw.SortTableModel">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.log4j.chainsaw.<a href="../../../../org/apache/log4j/chainsaw/SortTableModel.html" title="interface in org.apache.log4j.chainsaw">SortTableModel</a></h3>
<code><a href="../../../../org/apache/log4j/chainsaw/SortTableModel.html#isSortable-int-">isSortable</a>, <a href="../../../../org/apache/log4j/chainsaw/SortTableModel.html#isSortEnabled--">isSortEnabled</a>, <a href="../../../../org/apache/log4j/chainsaw/SortTableModel.html#sort--">sort</a>, <a href="../../../../org/apache/log4j/chainsaw/SortTableModel.html#sortColumn-int-boolean-">sortColumn</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.javax.swing.table.TableModel">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;javax.swing.table.<a href="http://docs.oracle.com/javase/6/docs/api/javax/swing/table/TableModel.html?is-external=true" title="class or interface in javax.swing.table">TableModel</a></h3>
<code><a href="http://docs.oracle.com/javase/6/docs/api/javax/swing/table/TableModel.html?is-external=true#addTableModelListener-javax.swing.event.TableModelListener-" title="class or interface in javax.swing.table">addTableModelListener</a>, <a href="http://docs.oracle.com/javase/6/docs/api/javax/swing/table/TableModel.html?is-external=true#getColumnClass-int-" title="class or interface in javax.swing.table">getColumnClass</a>, <a href="http://docs.oracle.com/javase/6/docs/api/javax/swing/table/TableModel.html?is-external=true#getColumnCount--" title="class or interface in javax.swing.table">getColumnCount</a>, <a href="http://docs.oracle.com/javase/6/docs/api/javax/swing/table/TableModel.html?is-external=true#getColumnName-int-" title="class or interface in javax.swing.table">getColumnName</a>, <a href="http://docs.oracle.com/javase/6/docs/api/javax/swing/table/TableModel.html?is-external=true#getRowCount--" title="class or interface in javax.swing.table">getRowCount</a>, <a href="http://docs.oracle.com/javase/6/docs/api/javax/swing/table/TableModel.html?is-external=true#getValueAt-int-int-" title="class or interface in javax.swing.table">getValueAt</a>, <a href="http://docs.oracle.com/javase/6/docs/api/javax/swing/table/TableModel.html?is-external=true#isCellEditable-int-int-" title="class or interface in javax.swing.table">isCellEditable</a>, <a href="http://docs.oracle.com/javase/6/docs/api/javax/swing/table/TableModel.html?is-external=true#removeTableModelListener-javax.swing.event.TableModelListener-" title="class or interface in javax.swing.table">removeTableModelListener</a>, <a href="http://docs.oracle.com/javase/6/docs/api/javax/swing/table/TableModel.html?is-external=true#setValueAt-java.lang.Object-int-int-" title="class or interface in javax.swing.table">setValueAt</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.log4j.chainsaw.LoggerNameModel">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.log4j.chainsaw.<a href="../../../../org/apache/log4j/chainsaw/LoggerNameModel.html" title="interface in org.apache.log4j.chainsaw">LoggerNameModel</a></h3>
<code><a href="../../../../org/apache/log4j/chainsaw/LoggerNameModel.html#addLoggerName-java.lang.String-">addLoggerName</a>, <a href="../../../../org/apache/log4j/chainsaw/LoggerNameModel.html#addLoggerNameListener-org.apache.log4j.chainsaw.LoggerNameListener-">addLoggerNameListener</a>, <a href="../../../../org/apache/log4j/chainsaw/LoggerNameModel.html#getLoggerNames--">getLoggerNames</a>, <a href="../../../../org/apache/log4j/chainsaw/LoggerNameModel.html#removeLoggerNameListener-org.apache.log4j.chainsaw.LoggerNameListener-">removeLoggerNameListener</a>, <a href="../../../../org/apache/log4j/chainsaw/LoggerNameModel.html#reset--">reset</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="addEventCountListener-org.apache.log4j.chainsaw.EventCountListener-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addEventCountListener</h4>
<pre>void&nbsp;addEventCountListener(<a href="../../../../org/apache/log4j/chainsaw/EventCountListener.html" title="interface in org.apache.log4j.chainsaw">EventCountListener</a>&nbsp;listener)</pre>
<div class="block">Adds an EventCountListener, to be notified when the # of events changes</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - </dd>
</dl>
</li>
</ul>
<a name="addPropertyChangeListener-java.beans.PropertyChangeListener-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addPropertyChangeListener</h4>
<pre>void&nbsp;addPropertyChangeListener(<a href="http://docs.oracle.com/javase/6/docs/api/java/beans/PropertyChangeListener.html?is-external=true" title="class or interface in java.beans">PropertyChangeListener</a>&nbsp;l)</pre>
</li>
</ul>
<a name="addPropertyChangeListener-java.lang.String-java.beans.PropertyChangeListener-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addPropertyChangeListener</h4>
<pre>void&nbsp;addPropertyChangeListener(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;propertyName,
                               <a href="http://docs.oracle.com/javase/6/docs/api/java/beans/PropertyChangeListener.html?is-external=true" title="class or interface in java.beans">PropertyChangeListener</a>&nbsp;l)</pre>
</li>
</ul>
<a name="addNewKeyListener-org.apache.log4j.chainsaw.NewKeyListener-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addNewKeyListener</h4>
<pre>void&nbsp;addNewKeyListener(<a href="../../../../org/apache/log4j/chainsaw/NewKeyListener.html" title="interface in org.apache.log4j.chainsaw">NewKeyListener</a>&nbsp;l)</pre>
<div class="block">Adds a NewKeyListener to be notified when unique Key (Property keys)
 arrive into this EventContainer</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>l</code> - </dd>
</dl>
</li>
</ul>
<a name="removeNewKeyListener-org.apache.log4j.chainsaw.NewKeyListener-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeNewKeyListener</h4>
<pre>void&nbsp;removeNewKeyListener(<a href="../../../../org/apache/log4j/chainsaw/NewKeyListener.html" title="interface in org.apache.log4j.chainsaw">NewKeyListener</a>&nbsp;l)</pre>
<div class="block">Removes a listener from being notified of NewKey events.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>l</code> - </dd>
</dl>
</li>
</ul>
<a name="clearModel--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearModel</h4>
<pre>void&nbsp;clearModel()</pre>
<div class="block">Clears the model completely</div>
</li>
</ul>
<a name="getMatchingEvents-org.apache.log4j.rule.Rule-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMatchingEvents</h4>
<pre><a href="http://docs.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&nbsp;getMatchingEvents(org.apache.log4j.rule.Rule&nbsp;rule)</pre>
</li>
</ul>
<a name="setCyclic-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setCyclic</h4>
<pre>void&nbsp;setCyclic(boolean&nbsp;cyclic)</pre>
<div class="block">Configures this model to use Cyclic or non-cyclic models.
 This method should fire a property Change event if
 it involves an actual change in the underlying model.

 This method does nothing if there is no change in proprty.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>cyclic</code> - </dd>
</dl>
</li>
</ul>
<a name="getMaxSize--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMaxSize</h4>
<pre>int&nbsp;getMaxSize()</pre>
<div class="block">If this container is in Cyclic mode, returns the Size of the cyclic buffer,
 otherwise this method throws an IllegalStateException, when in unlimited
 mode, this method has no meaning.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>int size of the cyclic buffer</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if this containers isCyclic() method returns false.</dd>
</dl>
</li>
</ul>
<a name="locate-org.apache.log4j.rule.Rule-int-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>locate</h4>
<pre>int&nbsp;locate(org.apache.log4j.rule.Rule&nbsp;rule,
           int&nbsp;startRow,
           boolean&nbsp;searchForward)</pre>
<div class="block">Locates a row number, starting from startRow, matching the rule provided</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>rule</code> - </dd>
<dd><code>startRow</code> - </dd>
<dd><code>searchForward</code> - </dd>
</dl>
</li>
</ul>
<a name="getAllEvents--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAllEvents</h4>
<pre><a href="http://docs.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&nbsp;getAllEvents()</pre>
<div class="block">Returns a copied list of all the event in the model.</div>
</li>
</ul>
<a name="getFilteredEvents--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFilteredEvents</h4>
<pre><a href="http://docs.oracle.com/javase/6/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&nbsp;getFilteredEvents()</pre>
<div class="block">Returns a copied list containing the events in the model with filter applied</div>
</li>
</ul>
<a name="size--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>size</h4>
<pre>int&nbsp;size()</pre>
<div class="block">Returns the total number of events currently in the model (all, not just filtered)</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>size</dd>
</dl>
</li>
</ul>
<a name="getRow-int-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRow</h4>
<pre><a href="../../../../org/apache/log4j/chainsaw/LoggingEventWrapper.html" title="class in org.apache.log4j.chainsaw">LoggingEventWrapper</a>&nbsp;getRow(int&nbsp;row)</pre>
<div class="block">Returns the vector representing the row.</div>
</li>
</ul>
<a name="isAddRow-org.apache.log4j.chainsaw.LoggingEventWrapper-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isAddRow</h4>
<pre>boolean&nbsp;isAddRow(<a href="../../../../org/apache/log4j/chainsaw/LoggingEventWrapper.html" title="class in org.apache.log4j.chainsaw">LoggingEventWrapper</a>&nbsp;e)</pre>
<div class="block">Adds a row to the model.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>e</code> - event</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>flag representing whether or not the row is being displayed (not filtered)</dd>
</dl>
</li>
</ul>
<a name="fireTableEvent-int-int-int-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>fireTableEvent</h4>
<pre>void&nbsp;fireTableEvent(int&nbsp;begin,
                    int&nbsp;end,
                    int&nbsp;count)</pre>
<div class="block">Fire appropriate table update events for the range.</div>
</li>
</ul>
<a name="fireRowUpdated-int-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>fireRowUpdated</h4>
<pre>void&nbsp;fireRowUpdated(int&nbsp;row,
                    boolean&nbsp;checkForNewColumns)</pre>
<div class="block">A row was updated</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>row</code> - </dd>
<dd><code>checkForNewColumns</code> - </dd>
</dl>
</li>
</ul>
<a name="notifyCountListeners--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>notifyCountListeners</h4>
<pre>void&nbsp;notifyCountListeners()</pre>
<div class="block">Allow a forced notification of the EventCountListeners</div>
</li>
</ul>
<a name="reFilter--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>reFilter</h4>
<pre>void&nbsp;reFilter()</pre>
<div class="block">Force a re-processing of the table layout</div>
</li>
</ul>
<a name="setRuleMediator-org.apache.log4j.chainsaw.RuleMediator-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setRuleMediator</h4>
<pre>void&nbsp;setRuleMediator(<a href="../../../../org/apache/log4j/chainsaw/RuleMediator.html" title="class in org.apache.log4j.chainsaw">RuleMediator</a>&nbsp;ruleMediator)</pre>
<div class="block">Sets the RuleMediator in operation</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ruleMediator</code> - </dd>
</dl>
</li>
</ul>
<a name="getRowIndex-org.apache.log4j.chainsaw.LoggingEventWrapper-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRowIndex</h4>
<pre>int&nbsp;getRowIndex(<a href="../../../../org/apache/log4j/chainsaw/LoggingEventWrapper.html" title="class in org.apache.log4j.chainsaw">LoggingEventWrapper</a>&nbsp;loggingEventWrapper)</pre>
<div class="block">Returns the index of the LoggingEventWrapper</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>loggingEventWrapper</code> - </dd>
</dl>
</li>
</ul>
<a name="removePropertyFromEvents-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removePropertyFromEvents</h4>
<pre>void&nbsp;removePropertyFromEvents(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;propName)</pre>
<div class="block">Remove property from all events in container</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>propName</code> - the property name to remove</dd>
</dl>
</li>
</ul>
<a name="updateEventsWithFindRule-org.apache.log4j.rule.Rule-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>updateEventsWithFindRule</h4>
<pre>int&nbsp;updateEventsWithFindRule(org.apache.log4j.rule.Rule&nbsp;findRule)</pre>
<div class="block">Evaluate all events against the find rule</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>findRule</code> - </dd>
</dl>
</li>
</ul>
<a name="findColoredRow-int-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>findColoredRow</h4>
<pre>int&nbsp;findColoredRow(int&nbsp;currentRow,
                   boolean&nbsp;forward)</pre>
<div class="block">Determine next row with a non-default color</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>currentRow</code> - </dd>
<dd><code>forward</code> - </dd>
<dt><span class="returnLabel">Returns:</span></dt>
</dl>
</li>
</ul>
<a name="getSearchMatchCount--">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getSearchMatchCount</h4>
<pre>int&nbsp;getSearchMatchCount()</pre>
<div class="block">Return the visible search match count</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/EventContainer.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">
<li><a href="../../../../org/apache/log4j/chainsaw/EventBatchListener.html" title="interface in org.apache.log4j.chainsaw"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../org/apache/log4j/chainsaw/EventCountListener.html" title="interface in org.apache.log4j.chainsaw"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/log4j/chainsaw/EventContainer.html" target="_top">Frames</a></li>
<li><a href="EventContainer.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses-noframe.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>
</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 name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small><p align="center">Copyright &#169; 2002-2018 <a href="https://www.apache.org">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>
</body>
</html>
