Public Member Functions | |
this (char[] name) | |
char[] | getName () |
char[] | getAddress () |
void | setName (char[] name) |
void | setAddress (char[] address) |
LoggerInstance | getRootLogger () |
synchronized LoggerInstance | getLogger (char[] name) |
int | opApply (int(*dg)(inout Logger)) |
Private Member Functions | |
void | insertLogger (LoggerInstance l) |
void | updateLoggers (LoggerInstance changed, bool force) |
void | propogate (LoggerInstance logger, LoggerInstance changed, bool force) |
Private Attributes | |
char[] | name |
char[] | address |
LoggerInstance | root |
LoggerInstance[char[]] | loggers |
Definition at line 376 of file Hierarchy.d.
|
Construct a hierarchy with the given name. Definition at line 390 of file Hierarchy.d. References LoggerInstance::name, name, and root. |
|
Return the name of this Hierarchy Definition at line 405 of file Hierarchy.d. References name. Referenced by XmlLayout::footer(). |
|
Return the address of this Hierarchy. This is typically attached when sending events to remote monitors. Definition at line 417 of file Hierarchy.d. References address. Referenced by XmlLayout::footer(). |
|
Set the name of this Hierarchy Definition at line 428 of file Hierarchy.d. References LoggerInstance::name. |
|
Set the address of this Hierarchy. The address is attached used when sending events to remote monitors. Definition at line 440 of file Hierarchy.d. |
|
Return the root node. Definition at line 451 of file Hierarchy.d. References root. Referenced by Manager::getRootLogger(). |
|
Return the instance of a Logger with the provided name. If the instance does not exist, it is created at this time. Definition at line 463 of file Hierarchy.d. References insertLogger(), loggers, and updateLoggers(). Referenced by Manager::getLogger(). |
|
Iterate over all Loggers in list Definition at line 494 of file Hierarchy.d. References Logger, LoggerInstance::next, and root. |
|
Loggers are maintained in a sorted linked-list. The order is maintained such that the shortest name is at the root, and the longest at the tail. This is done so that updateLoggers() will always have a known environment to manipulate, making it much faster. Definition at line 521 of file Hierarchy.d. References Exception, LoggerInstance::name, LoggerInstance::next, propogate(), and root. Referenced by getLogger(). |
|
Propogate hierarchical changes across known loggers. This includes changes in the hierarchy itself, and to the various settings of child loggers with respect to their parent(s). Definition at line 560 of file Hierarchy.d. References logger, propogate(), and root. Referenced by getLogger(), LoggerInstance::setBreakpoint(), and LoggerInstance::setLevel(). |
|
Propogate changes in the hierarchy downward to child Loggers. Note that while 'parent' and 'breakpoint' are always forced to update, the update of 'level' is selectable. Definition at line 582 of file Hierarchy.d. References LoggerInstance::breakpoint, LoggerInstance::level, logger, and ILevel::None. Referenced by insertLogger(), and updateLoggers(). |
|
Definition at line 378 of file Hierarchy.d. Referenced by getName(), Event::set(), this(), and LoggerInstance::this(). |
|
Definition at line 378 of file Hierarchy.d. Referenced by getAddress(). |
|
Definition at line 381 of file Hierarchy.d. Referenced by getRootLogger(), insertLogger(), opApply(), this(), and updateLoggers(). |
|
Definition at line 382 of file Hierarchy.d. Referenced by getLogger(). |