com.gargoylesoftware.base.trace
Class TraceChannel

java.lang.Object
  extended by com.gargoylesoftware.base.trace.TraceChannel

public class TraceChannel
extends java.lang.Object

This class represents a "channel" that diagnostic messages can be written to. The channel will contain zero or more TraceWriters which will be responsible for handling the messages.

Version:
$Revision: 1.5 $
Author:
Mike Bowler

Field Summary
private  boolean isEnabled_
           
private  java.lang.String name_
           
private  java.beans.PropertyChangeSupport propertyChangeSupport_
           
private  java.util.Set traceWriters_
           
 
Constructor Summary
TraceChannel(java.lang.String name)
          Create a trace channel with the specified name.
 
Method Summary
 void addPropertyChangeListener(java.beans.PropertyChangeListener listener)
          Add a property change listener.
 void addTraceWriter(TraceWriter writer)
          Add a trace writer.
protected  void assertNotNull(java.lang.String fieldName, java.lang.Object fieldValue)
          Verify that the specified value is not null.
 java.lang.String getName()
          Return the name of this trace channel.
(package private)  java.util.Set getTraceWriters()
          Return a collection of trace writers
 boolean isEnabled()
          Return true if this channel is enabled.
 void removePropertyChangeListener(java.beans.PropertyChangeListener listener)
          Remove a property change listener.
 void removeTraceWriter(TraceWriter writer)
          Remove a trace writer.
 void setEnabled(boolean isEnabled)
          Set whether or not this channel is enabled.
 java.lang.String toString()
          Return a string representation of this object.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

name_

private final java.lang.String name_

isEnabled_

private boolean isEnabled_

propertyChangeSupport_

private java.beans.PropertyChangeSupport propertyChangeSupport_

traceWriters_

private final java.util.Set traceWriters_
Constructor Detail

TraceChannel

public TraceChannel(java.lang.String name)
Create a trace channel with the specified name.

Parameters:
name - The name of the channel.
Method Detail

getName

public final java.lang.String getName()
Return the name of this trace channel.

Returns:
the name.

toString

public java.lang.String toString()
Return a string representation of this object.

Overrides:
toString in class java.lang.Object
Returns:
a string representation of this object.

setEnabled

public void setEnabled(boolean isEnabled)
Set whether or not this channel is enabled. If it is not enabled then any requests sent to this channel will be discarded.

Parameters:
isEnabled - true if this channel should be enabled.

isEnabled

public boolean isEnabled()
Return true if this channel is enabled.

Returns:
true if this channel is enabled.

addPropertyChangeListener

public void addPropertyChangeListener(java.beans.PropertyChangeListener listener)
Add a property change listener.

Parameters:
listener - The new listener

removePropertyChangeListener

public void removePropertyChangeListener(java.beans.PropertyChangeListener listener)
Remove a property change listener.

Parameters:
listener - The listener to remove

getTraceWriters

java.util.Set getTraceWriters()
Return a collection of trace writers

Returns:
The trace writers

addTraceWriter

public void addTraceWriter(TraceWriter writer)
Add a trace writer.

Parameters:
writer - A trace writer

removeTraceWriter

public void removeTraceWriter(TraceWriter writer)
Remove a trace writer.

Parameters:
writer - A trace writer

assertNotNull

protected final void assertNotNull(java.lang.String fieldName,
                                   java.lang.Object fieldValue)
                            throws DetailedNullPointerException
Verify that the specified value is not null. If it is then throw an exception

Parameters:
fieldName - The name of the field to check
fieldValue - The value of the field to check
Throws:
DetailedNullPointerException - If fieldValue is null