rendsite.tools
Class RendsiteLogger_Normal

java.lang.Object
  extended by rendsite.tools.RendsiteLogger
      extended by rendsite.tools.RendsiteLogger_Normal
All Implemented Interfaces:
things.common.Debuggable, things.common.StringPoster, things.thinger.io.conduits.PushDrain, things.thinger.io.Logger

public class RendsiteLogger_Normal
extends RendsiteLogger

Implement a logger. Version History

 10NOV09 - EPG - First package release.
 


Nested Class Summary
 
Nested classes/interfaces inherited from interface things.thinger.io.Logger
things.thinger.io.Logger.LEVEL, things.thinger.io.Logger.TYPE
 
Field Summary
 
Fields inherited from class rendsite.tools.RendsiteLogger
conduitId, currentLevel, prefixId
 
Constructor Summary
RendsiteLogger_Normal(things.common.WhoAmI ownerId, things.thinger.io.Logger.LEVEL level, java.io.PrintWriter pw, Resources resources)
          Construct a logger.
 
Method Summary
 RendsiteLogger childLogger(things.common.WhoAmI ownerId)
          Create a child logger.
 void debuggingOff()
          Turn debugging off.
 void debuggingOn()
          Turn debugging on.
 void exception(java.lang.Throwable tr)
          Log an exception.
 void flush()
          Flush.
 void post(long timestamp, things.thinger.io.Logger.LEVEL level, things.data.Data.Priority priority, int numeric, java.lang.String text, java.util.Collection<things.data.NVImmutable> attributes)
          Post it.
 void setLevel(things.thinger.io.Logger.LEVEL newLevel)
          This will set the level of entries that will pass.
 void setPostLevel(things.thinger.io.Logger.LEVEL newLevel)
          This will set the default level of StringPoster posted entries.
 
Methods inherited from class rendsite.tools.RendsiteLogger
debug, debug, debug, debug, debug, debuggingState, error, error, error, error, error, getLevel, info, info, info, info, info, init, init, post, post, postit, postListener, shout, shout, shout, shout, shout, warning, warning, warning, warning, warning
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RendsiteLogger_Normal

public RendsiteLogger_Normal(things.common.WhoAmI ownerId,
                             things.thinger.io.Logger.LEVEL level,
                             java.io.PrintWriter pw,
                             Resources resources)
                      throws things.thinger.SystemException
Construct a logger.

Parameters:
ownerId - the owner id. The tag will be available as a prefix to the specific log posters.
level - the starting log level.
pw - the output destination. it'll be best if it isn't auto-flush.
Throws:
things.thinger.SystemException
Method Detail

post

public void post(long timestamp,
                 things.thinger.io.Logger.LEVEL level,
                 things.data.Data.Priority priority,
                 int numeric,
                 java.lang.String text,
                 java.util.Collection<things.data.NVImmutable> attributes)
Post it. It should never give an exception.

Specified by:
post in class RendsiteLogger
Parameters:
timestamp -
level -
priority -
numeric -
text -
attributes - it may be null.

childLogger

public RendsiteLogger childLogger(things.common.WhoAmI ownerId)
                           throws things.thinger.SystemException
Create a child logger. It will differ in ID only.

Specified by:
childLogger in class RendsiteLogger
Parameters:
ownerId -
Returns:
the child logger.
Throws:
things.thinger.SystemException

flush

public void flush()
Flush.


setLevel

public void setLevel(things.thinger.io.Logger.LEVEL newLevel)
This will set the level of entries that will pass. It starts at whatever the implementation sets during construction.

Specified by:
setLevel in interface things.thinger.io.Logger
Overrides:
setLevel in class RendsiteLogger
Parameters:
newLevel - the new level.

setPostLevel

public void setPostLevel(things.thinger.io.Logger.LEVEL newLevel)
This will set the default level of StringPoster posted entries. The default starts as DATA. That means, all posted strings will be treated as DATA level.

Specified by:
setPostLevel in interface things.thinger.io.Logger
Overrides:
setPostLevel in class RendsiteLogger
Parameters:
newLevel - the new default level.

debuggingOn

public void debuggingOn()
Turn debugging on. Logs with debug level priority will be passed.

Specified by:
debuggingOn in interface things.common.Debuggable
Overrides:
debuggingOn in class RendsiteLogger

debuggingOff

public void debuggingOff()
Turn debugging off. Logs with debug level priority will not be passed.

Specified by:
debuggingOff in interface things.common.Debuggable
Overrides:
debuggingOff in class RendsiteLogger

exception

public void exception(java.lang.Throwable tr)
               throws things.thinger.SystemException
Log an exception. The implementation should try to deal with the ThingsException features. This overrides the simple implementation in RendsiteLogger.

Specified by:
exception in interface things.thinger.io.Logger
Overrides:
exception in class RendsiteLogger
Parameters:
tr - The Exception.
Throws:
things.thinger.SystemException


rendsite.