org.apache.log4j.chainsaw
Interface EventContainer

All Superinterfaces:
LoggerNameModel, SortTableModel, javax.swing.table.TableModel

public interface EventContainer
extends SortTableModel, LoggerNameModel

To allow pluggable TableModel implementations for Chainsaw, this interface has been factored out. This interface is still subject to change.

Author:
Paul Smith , Scott Deboy , Stephen Pain

Method Summary
 void addEventCountListener(EventCountListener listener)
          Adds an EventCountListener, to be notified when the # of events changes
 void addNewKeyListener(NewKeyListener l)
          Adds a NewKeyListener to be notified when unique Key (Property keys) arrive into this EventContainer
 void addPropertyChangeListener(java.beans.PropertyChangeListener l)
           
 void addPropertyChangeListener(java.lang.String propertyName, java.beans.PropertyChangeListener l)
           
 void clearModel()
          Clears the model completely
 int find(org.apache.log4j.rule.Rule rule, int startRow, boolean searchForward)
          Locates a row number, starting from startRow, matching the rule provided
 void fireTableEvent(int begin, int end, int count)
          Fire appropriate table update events for the range.
 java.util.List getAllEvents()
          Returns a copied list of all the event in the model.
 java.util.List getFilteredEvents()
          Returns a copied list containing the events in the model with filter applied
 int getLastAdded()
          Return the last added row.
 java.util.List getMatchingEvents(org.apache.log4j.rule.Rule rule)
           
 int getMaxSize()
          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.
 org.apache.log4j.spi.LoggingEvent getRow(int row)
          Returns the vector representing the row.
 int getRowIndex(org.apache.log4j.spi.LoggingEvent e)
          Returns the index of the LoggingEvent
 boolean isAddRow(org.apache.log4j.spi.LoggingEvent e, boolean valueIsAdjusting)
          Adds a row to the model.
 boolean isCyclic()
          Returns true if this model is Cyclic (bounded) or not.
 void notifyCountListeners()
          Allow a forced notification of the EventCountListeners
 void removeNewKeyListener(NewKeyListener l)
          Removes a listener from being notified of NewKey events.
 void setCyclic(boolean cyclic)
          Configures this model to use Cyclic or non-cyclic models.
 void setDisplayRule(org.apache.log4j.rule.Rule displayRule)
          Sets the DisplayFilter in operation
 int size()
          Returns the total number of events currently in the model (all, not just filtered)
 
Methods inherited from interface org.apache.log4j.chainsaw.SortTableModel
isSortable, isSortEnabled, sort, sortColumn
 
Methods inherited from interface javax.swing.table.TableModel
addTableModelListener, getColumnClass, getColumnCount, getColumnName, getRowCount, getValueAt, isCellEditable, removeTableModelListener, setValueAt
 
Methods inherited from interface org.apache.log4j.chainsaw.LoggerNameModel
addLoggerName, addLoggerNameListener, getLoggerNames, removeLoggerNameListener
 

Method Detail

addEventCountListener

void addEventCountListener(EventCountListener listener)
Adds an EventCountListener, to be notified when the # of events changes

Parameters:
listener -

addPropertyChangeListener

void addPropertyChangeListener(java.beans.PropertyChangeListener l)

addPropertyChangeListener

void addPropertyChangeListener(java.lang.String propertyName,
                               java.beans.PropertyChangeListener l)

addNewKeyListener

void addNewKeyListener(NewKeyListener l)
Adds a NewKeyListener to be notified when unique Key (Property keys) arrive into this EventContainer

Parameters:
l -

removeNewKeyListener

void removeNewKeyListener(NewKeyListener l)
Removes a listener from being notified of NewKey events.

Parameters:
l -

clearModel

void clearModel()
Clears the model completely


getMatchingEvents

java.util.List getMatchingEvents(org.apache.log4j.rule.Rule rule)

isCyclic

boolean isCyclic()
Returns true if this model is Cyclic (bounded) or not.

Returns:
true/false

setCyclic

void setCyclic(boolean cyclic)
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.

Parameters:
cyclic -

getMaxSize

int getMaxSize()
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.

Returns:
int size of the cyclic buffer
Throws:
java.lang.IllegalStateException - if this containers isCyclic() method returns false.

find

int find(org.apache.log4j.rule.Rule rule,
         int startRow,
         boolean searchForward)
Locates a row number, starting from startRow, matching the rule provided

Parameters:
rule -
startRow -
searchForward -

getAllEvents

java.util.List getAllEvents()
Returns a copied list of all the event in the model.


getFilteredEvents

java.util.List getFilteredEvents()
Returns a copied list containing the events in the model with filter applied


size

int size()
Returns the total number of events currently in the model (all, not just filtered)

Returns:
size

getRow

org.apache.log4j.spi.LoggingEvent getRow(int row)
Returns the vector representing the row.


getLastAdded

int getLastAdded()
Return the last added row.


isAddRow

boolean isAddRow(org.apache.log4j.spi.LoggingEvent e,
                 boolean valueIsAdjusting)
Adds a row to the model.

Parameters:
e - event
valueIsAdjusting -
Returns:
flag representing whether or not the row is being displayed (not filtered)

fireTableEvent

void fireTableEvent(int begin,
                    int end,
                    int count)
Fire appropriate table update events for the range.


notifyCountListeners

void notifyCountListeners()
Allow a forced notification of the EventCountListeners


setDisplayRule

void setDisplayRule(org.apache.log4j.rule.Rule displayRule)
Sets the DisplayFilter in operation

Parameters:
displayRule -

getRowIndex

int getRowIndex(org.apache.log4j.spi.LoggingEvent e)
Returns the index of the LoggingEvent

Parameters:
e -


Copyright © 2007 Apache Software Foundation. All Rights Reserved.