#ComplexLogger

CA
Format
p
s

Enabled
p
b

Handlers
r
LogHandler[]

_new
m

[(sFormat)s(sDefaultOutput)LogHandler;]
Begin
m
b

Log
m

(sMessage)s[(iLevel)i]
Close
m


_call
m

(sMessage)s[(iLevel)i]
addHandler
m

(hLogHandler)LogHandler;
#ConsoleHandler
LogHandler
C
STDOUT
C
i
0
STDERR
C
i
1
_new
m

(iOutput)i[(iMinLevel)i]
Write
m

(sMessage)s[(iLevel)i]
GetOutput
m
s

#FileHandler
LogHandler
C
_new
m

(sPath)s[(iMinLevel)i]
Open
m


Write
m

(sMessage)s[(iLevel)i]
Close
m


GetOutput
m
s

#Formatter

C
'This class formats a line to automatically replace required Logger data
_call
M
s
(sMessage)s(sFormat)s(iLevel)i
#LogHandler

C
Level
p
i

Step
p
i

Open
m


'Opens the log handler and prepares it for writing
Write
m

(sMessage)s[(iLevel)i]
'Write the sMessage with optional level iLevel to the log handler
Close
m


'Closes the log handler. No further writing is allowed
isEnabledFor
m
b
(iLevel)i
GetOutput
m
s

#LogLevel

C
Critical
C
i
0
Error
C
i
1
Warning
C
i
2
Info
C
i
3
Debug
C
i
4
isEnabledFor
M
b
(iHandlerLevel)i(iLevel)i
#Logger

CA
Level
p
i

Format
p
s

Enabled
p
b

Output
r
s

DefaultFormat
C
s
"[$(now)] [$(levelname)] [$(callLocation)] $(message)"
Critical
C
i
0
'This is only here for compatibility and is now deprecated, please use LogLevel instead.
Error
C
i
1
'This is only here for compatibility and is now deprecated, please use LogLevel instead.
Warning
C
i
2
'This is only here for compatibility and is now deprecated, please use LogLevel instead.
Info
C
i
3
'This is only here for compatibility and is now deprecated, please use LogLevel instead.
Debug
C
i
4
'This is only here for compatibility and is now deprecated, please use LogLevel instead.
Stdout
C
s
":stdout"
Stderr
C
s
":stderr"
_new
m

[(iMinLevel)i(sFormat)s(sOutput)s]
Begin
m


isEnabledFor
m
b
(iLevel)i
Log
m

(sMessage)s[(iLevel)i]
_call
m

(sMessage)s[(iLevel)i]
_free
m


