package Ġtech . pr ong h orn . logging Ċ Ċ import Ġtech . pr ong h orn . plugins . logging . Logging Plugin Ċ import Ġjava . time . Zone Id Ċ import Ġjava . time . Z onedDateTime Ċ import Ġjava . time . format . DateTime Formatter Ċ Ċ class ĠTest Logger ( override Ġval Ġname : ĠString ): ĠLogger () Ġ{ ĊĠĠĠ Ġoverride Ġval Ġis Trace Enabled : ĠBoolean Ġ= Ġtrue ĊĠĠĠ Ġoverride Ġval Ġis Debug Enabled : ĠBoolean Ġ= Ġtrue ĊĠĠĠ Ġoverride Ġval Ġis Info Enabled : ĠBoolean Ġ= Ġtrue ĊĠĠĠ Ġoverride Ġval Ġis Warn Enabled : ĠBoolean Ġ= Ġtrue ĊĠĠĠ Ġoverride Ġval Ġis Error Enabled : ĠBoolean Ġ= Ġtrue ĊĊĠĠĠ Ġprivate Ġval Ġg mt Ġ= ĠZone Id . of (" GMT ") ĊĊĠĠĠ Ġprivate Ġfun Ġget Formatted Date (): ĠString Ġ= ĠDateTime Formatter . RFC _ 1 1 2 3 _ DATE _ TIME . format ( Z onedDateTime . now ( gmt )) ĊĠĠĠ Ġprivate Ġfun Ġget Formatted Message ( level : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmessage : ĠString ): ĠString Ġ= Ġ"${ get Formatted Date ()} Ġ$ level Ġ$ name Ġ- Ġ$ message " ĊĊĠĠĠ Ġoverride Ġfun Ġtrace Impl ( message : ĠString ) Ġ= Ġprintln ( get Formatted Message (" TRACE Ġ", Ġmessage )) ĊĠĠĠ Ġoverride Ġfun Ġdebug Impl ( message : ĠString ) Ġ= Ġprintln ( get Formatted Message (" DEBUG Ġ", Ġmessage )) ĊĠĠĠ Ġoverride Ġfun Ġinfo Impl ( message : ĠString ) Ġ= Ġprintln ( get Formatted Message (" INFO Ġ", Ġmessage )) ĊĠĠĠ Ġoverride Ġfun Ġwarn Impl ( message : ĠString ) Ġ= Ġprintln ( get Formatted Message (" WARN Ġ", Ġmessage )) ĊĠĠĠ Ġoverride Ġfun Ġerror Impl ( message : ĠString ) Ġ= Ġprintln ( get Formatted Message (" ERROR Ġ", Ġmessage )) Ċ } Ċ Ċ class ĠTest Logging Plugin : ĠLogging Plugin Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġget ( name : ĠString ): ĠLogger Ġ= ĠTest Logger ( name ) Ċ } Ċ