/* Ċ Ġ* ĠCopyright Ġ 2 0 1 5 - 2 0 2 0 Ġthe Ġoriginal Ġauthor Ġor Ġauthors . Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġio . r socket . kotlin . logging Ċ Ċ import Ġio . r socket . kotlin .* Ċ import Ġjava . util . logging .* Ċ import Ġjava . util . logging . Level Ġas ĠJ Level Ċ import Ġjava . util . logging . Logger Ġas ĠJ Logger Ċ Ċ @ R Socket Logging Api Ċ internal Ġactual Ġval ĠDefault LoggerFactory : ĠLoggerFactory ĊĠĠĠ Ġget () Ġ= ĠJava Logger Ċ Ċ @ R Socket Logging Api Ċ public Ġclass ĠJava Logger ( override Ġval Ġtag : ĠString ) Ġ: ĠLogger Ġ{ ĊĠĠĠ Ġprivate Ġval Ġj Logger Ġ= ĠJ Logger . getLogger ( tag ) ĊĊĠĠĠ Ġprivate Ġval ĠLogging Level . j Level : ĠJ Level ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġwhen Ġ( this ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLogging Level . TRACE Ġ-> ĠJ Level . F INE ST ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLogging Level . DEBUG Ġ-> ĠJ Level . F INE ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLogging Level . INFO Ġ Ġ-> ĠJ Level . INFO ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLogging Level . WARN Ġ Ġ-> ĠJ Level . WARNING ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLogging Level . ERROR Ġ-> ĠJ Level . SEVERE ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġis Log gable ( level : ĠLogging Level ): ĠBoolean Ġ= Ġj Logger . is Log gable ( level . j Level ) ĊĊĠĠĠ Ġoverride Ġfun Ġraw Log ( level : ĠLogging Level , Ġthrowable : ĠThrowable ?, Ġmessage : ĠAny ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġrecord Ġ= ĠLog Record ( level . j Level , Ġmessage . toString ()). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlogger Name Ġ= Ġtag ĠĠĠĠĠĠĠ Ġ// set Ġlogger Ġname ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsource ClassName Ġ= Ġnull Ġ Ġ// cleanup ĠJava Logger Ġname ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsource MethodName Ġ= Ġnull Ġ// cleanup Ġraw Log Ġname ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthrown Ġ= Ġthrowable ĠĠĠĠĠ Ġ// set Ġthrown Ġerror ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġj Logger . log ( record ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġpublic Ġcompanion Ġobject Ġ: ĠLoggerFactory Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġlogger ( tag : ĠString ): ĠLogger Ġ= ĠJava Logger ( tag ) ĊĠĠĠ Ġ} Ċ } Ċ