forked from jhannes/logevents
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Full class reorganization for better documentation and understandability
- Loading branch information
Showing
541 changed files
with
13,296 additions
and
8,191 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,35 +1,59 @@ | ||
@startuml | ||
|
||
package "slf4j" { | ||
interface Logger | ||
interface ILoggerFactory | ||
} | ||
|
||
package "org.logevents" { | ||
|
||
class LoggerDelegator implements Logger | ||
|
||
class LogEventFactory implements ILoggerFactory | ||
|
||
interface LogEventObserver { | ||
logEvent(e) | ||
} | ||
LoggerDelegator ..> LogEventObserver | ||
|
||
class CompositeLogEventObserver implements LogEventObserver | ||
class ConditionalLogEventObserver implements LogEventObserver | ||
class FileLogEventObserver implements LogEventObserver | ||
CompositeLogEventObserver ..> "*" LogEventObserver | ||
ConditionalLogEventObserver ..> "1" LogEventObserver | ||
|
||
|
||
package "formatting" { | ||
interface LogEventFormatter | ||
FileLogEventObserver ..> LogEventFormatter | ||
class PatternFormatter implements LogEventFormatter | ||
class TTLLFormatter implements LogEventFormatter | ||
} | ||
|
||
} | ||
|
||
@enduml | ||
@startuml | ||
|
||
package "slf4j" { | ||
interface ILoggerFactory { | ||
getLogger() | ||
} | ||
interface Logger { | ||
error(...) | ||
warn(...) | ||
info(...) | ||
debug(...) | ||
trace(...) | ||
} | ||
ILoggerFactory .right.> Logger: getLogger | ||
} | ||
|
||
package "org.logevents" { | ||
|
||
interface LoggerDelegator extends Logger | ||
class LogEventFilter | ||
LoggerDelegator -right-> LogEventFilter: ownFilter | ||
|
||
class LogEventFactory implements ILoggerFactory | ||
|
||
LogEventFactory -right- "*" LoggerDelegator | ||
|
||
interface LogEventGenerator { | ||
log(msg:String) | ||
log(:Marker, msg:String) | ||
log(msg:String, args:Object[]) | ||
} | ||
LoggerDelegator --> LogEventGenerator: error | ||
LoggerDelegator --> LogEventGenerator: warn | ||
LoggerDelegator --> LogEventGenerator: info | ||
LoggerDelegator --> LogEventGenerator: debug | ||
LoggerDelegator --> LogEventGenerator: trace | ||
|
||
interface LogEventObserver { | ||
logEvent(e) | ||
} | ||
LogEventGenerator ..> LogEventObserver | ||
|
||
class CompositeLogEventObserver implements LogEventObserver | ||
class ConditionalLogEventObserver implements LogEventObserver | ||
class FileLogEventObserver implements LogEventObserver | ||
CompositeLogEventObserver ..> "*" LogEventObserver | ||
ConditionalLogEventObserver ..> "1" LogEventObserver | ||
|
||
|
||
package "formatting" { | ||
interface LogEventFormatter | ||
FileLogEventObserver ..> LogEventFormatter | ||
class PatternFormatter implements LogEventFormatter | ||
class TTLLFormatter implements LogEventFormatter | ||
} | ||
|
||
} | ||
|
||
@enduml |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,62 +1,111 @@ | ||
@startuml | ||
|
||
package "slf4j" { | ||
interface Logger | ||
interface ILoggerFactory | ||
} | ||
|
||
package "org.logevents" { | ||
|
||
class LoggerDelegator implements Logger { | ||
levelThreshold : Level|"Inherit" | ||
ownObserver : LogEventObserver | ||
inheritParentObserver : boolean | ||
} | ||
|
||
class LogEventFactory implements ILoggerFactory { | ||
setLogLevel(logger, level) | ||
setLogEventObserver(logger, observer, inheritParent) | ||
addObserver(logger, observer) | ||
} | ||
|
||
interface LogEventGenerator | ||
LoggerDelegator ..> LogEventGenerator | ||
|
||
class NullLogEventGenerator implements LogEventGenerator | ||
class LevelLoggingEventGenerator implements LogEventGenerator | ||
|
||
interface LogEventObserver { | ||
name | ||
configure(Properties) | ||
logEvent(e) | ||
} | ||
LevelLoggingEventGenerator ..> LogEventObserver | ||
|
||
class CompositeLogEventObserver implements LogEventObserver | ||
class ConditionalLogEventObserver implements LogEventObserver | ||
class BatchingLogEventObserver implements LogEventObserver { | ||
idleTime | ||
cooldownTime | ||
maximumWaitTime | ||
} | ||
class CircularBufferLogEventDestination implements LogEventObserver | ||
class FileLogEventObserver implements LogEventObserver | ||
class ConsoleLogEventObserver implements LogEventObserver | ||
CompositeLogEventObserver ..> "*" LogEventObserver | ||
ConditionalLogEventObserver ..> "1" LogEventObserver | ||
|
||
|
||
package "formatting" { | ||
interface LogEventFormatter | ||
FileLogEventObserver ..> LogEventFormatter | ||
ConsoleLogEventObserver ..> LogEventFormatter | ||
class PatternFormatter implements LogEventFormatter | ||
class TTLLFormatter implements LogEventFormatter | ||
} | ||
|
||
class LogEventBatchProcessor | ||
BatchingLogEventObserver ..> LogEventBatchProcessor | ||
|
||
} | ||
|
||
@enduml | ||
@startuml | ||
|
||
package "slf4j" { | ||
interface ILoggerFactory { | ||
getLogger() | ||
} | ||
interface Logger { | ||
error(...) | ||
warn(...) | ||
info(...) | ||
debug(...) | ||
trace(...) | ||
} | ||
ILoggerFactory .right.> Logger: getLogger | ||
} | ||
|
||
package "org.logevents" { | ||
|
||
interface LogEventLogger extends Logger { | ||
/effectiveFilter | ||
ownObserver : LogEventObserver | ||
inheritParentObserver : boolean | ||
} | ||
|
||
class LogEventFilter { | ||
addLoggingCondition() | ||
createLogEventGenerator() | ||
} | ||
LogEventLogger -right-> LogEventFilter: ownFilter | ||
|
||
interface LogEventPredicate { | ||
test(:LogEvent): boolean | ||
} | ||
LogEventFilter "[level]" --> LogEventPredicate | ||
class AlwaysPredicate implements LogEventPredicate | ||
class NeverPredicate implements LogEventPredicate | ||
class MarkerCondition implements LogEventPredicate { | ||
markers | ||
} | ||
class MdcCondition implements LogEventPredicate { | ||
mdcName | ||
requiredValues | ||
} | ||
|
||
class LoggerDelegator implements LogEventLogger { | ||
error(...) | ||
warn(...) | ||
info(...) | ||
debug(...) | ||
trace(...) | ||
} | ||
|
||
class LogEventFactory implements ILoggerFactory { | ||
setLogLevel(logger, level) | ||
setObserver(logger, observer, inheritParent) | ||
addObserver(logger, observer) | ||
} | ||
LogEventFactory -right- "*" LogEventLogger: loggers | ||
|
||
interface LogEventGenerator { | ||
log(msg:String) | ||
log(:Marker, msg:String) | ||
log(msg:String, args:Object[]) | ||
} | ||
LoggerDelegator --> LogEventGenerator: error | ||
LoggerDelegator --> LogEventGenerator: warn | ||
LoggerDelegator --> LogEventGenerator: info | ||
LoggerDelegator --> LogEventGenerator: debug | ||
LoggerDelegator --> LogEventGenerator: trace | ||
|
||
class NullLogEventGenerator implements LogEventGenerator | ||
class LevelLoggingEventGenerator implements LogEventGenerator { | ||
: Level | ||
} | ||
class ConditionalLogEventGenerator implements LogEventGenerator { | ||
: LogEventPredicate | ||
} | ||
|
||
interface LogEventObserver { | ||
logEvent(e: LogEvent) | ||
} | ||
LevelLoggingEventGenerator ..> LogEventObserver | ||
ConditionalLogEventGenerator ..> LogEventObserver | ||
|
||
class CompositeLogEventObserver implements LogEventObserver | ||
class ConditionalLogEventObserver implements LogEventObserver | ||
abstract class BatchingLogEventObserver implements LogEventObserver { | ||
idleTime | ||
cooldownTime | ||
maximumWaitTime | ||
-- | ||
# {abstract} processBatch() | ||
} | ||
class FileLogEventObserver implements LogEventObserver | ||
class ConsoleLogEventObserver implements LogEventObserver | ||
CompositeLogEventObserver --> "*" LogEventObserver | ||
ConditionalLogEventObserver --> "1" LogEventObserver | ||
|
||
|
||
package "formatting" { | ||
interface LogEventFormatter | ||
FileLogEventObserver --> LogEventFormatter | ||
ConsoleLogEventObserver --> LogEventFormatter | ||
class PatternFormatter implements LogEventFormatter | ||
class TTLLFormatter implements LogEventFormatter | ||
class JsonFormatter implements LogEventFormatter | ||
} | ||
|
||
} | ||
|
||
@enduml |
Oops, something went wrong.