/* Ċ Ġ* ĠCopyright ĠAmazon . com , ĠInc . Ġor Ġits Ġaffiliates . ĠAll ĠRights ĠReserved . Ċ Ġ* ĠSPDX - License - Identifier : ĠApache - 2 . 0 . Ċ Ġ*/ Ċ Ċ package Ġaws . smithy . kotlin . runtime . logging Ċ Ċ import Ġaws . smithy . kotlin . runtime . util . Internal Api Ċ Ċ /** Ċ Ġ* ĠInternal Ġlogging Ġfac ade Ċ Ġ*/ Ċ @ Internal Api Ċ public Ġinterface ĠLogger Ġ{ ĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* ĠGet Ġthe Ġlogger Ġfor Ġthe Ġclass Ġ[ T ] ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġinline Ġfun Ġ< re ified ĠT > Ġget Logger (): ĠLogger Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ Ġget Logger ( require NotNull ( T :: class . qualified Name ) Ġ{ Ġ" getLogger < T > Ġcannot Ġbe Ġused Ġon Ġan Ġanonymous Ġobject " Ġ}) ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* ĠGet Ġthe Ġlogger Ġfor Ġthe Ġgiven Ġ[ name ] ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġget Logger ( name : ĠString ): ĠLogger Ġ= ĠKotlin Logging Adapter ( name ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠLazy Ġadd Ġa Ġlog Ġmessage Ġif Ġtrace Ġlogging Ġis Ġenabled ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġpublic Ġfun Ġtrace ( msg : Ġ() Ġ-> ĠAny ?) ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠLazy Ġadd Ġa Ġlog Ġmessage Ġif Ġdebug Ġlogging Ġis Ġenabled ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġpublic Ġfun Ġdebug ( msg : Ġ() Ġ-> ĠAny ?) ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠLazy Ġadd Ġa Ġlog Ġmessage Ġif Ġinfo Ġlogging Ġis Ġenabled ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġpublic Ġfun Ġinfo ( msg : Ġ() Ġ-> ĠAny ?) ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠLazy Ġadd Ġa Ġlog Ġmessage Ġif Ġwarn Ġlogging Ġis Ġenabled ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġpublic Ġfun Ġwarn ( msg : Ġ() Ġ-> ĠAny ?) ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠLazy Ġadd Ġa Ġlog Ġmessage Ġif Ġerror Ġlogging Ġis Ġenabled ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġpublic Ġfun Ġerror ( msg : Ġ() Ġ-> ĠAny ?) ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠLazy Ġadd Ġa Ġlog Ġmessage Ġwith Ġthrowable Ġpayload Ġif Ġtrace Ġlogging Ġis Ġenabled ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġpublic Ġfun Ġtrace ( t : ĠThrowable ?, Ġmsg : Ġ() Ġ-> ĠAny ?) ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠLazy Ġadd Ġa Ġlog Ġmessage Ġwith Ġthrowable Ġpayload Ġif Ġdebug Ġlogging Ġis Ġenabled ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġpublic Ġfun Ġdebug ( t : ĠThrowable ?, Ġmsg : Ġ() Ġ-> ĠAny ?) ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠLazy Ġadd Ġa Ġlog Ġmessage Ġwith Ġthrowable Ġpayload Ġif Ġinfo Ġlogging Ġis Ġenabled ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġpublic Ġfun Ġinfo ( t : ĠThrowable ?, Ġmsg : Ġ() Ġ-> ĠAny ?) ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠLazy Ġadd Ġa Ġlog Ġmessage Ġwith Ġthrowable Ġpayload Ġif Ġwarn Ġlogging Ġis Ġenabled ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġpublic Ġfun Ġwarn ( t : ĠThrowable ?, Ġmsg : Ġ() Ġ-> ĠAny ?) ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠLazy Ġadd Ġa Ġlog Ġmessage Ġwith Ġthrowable Ġpayload Ġif Ġerror Ġlogging Ġis Ġenabled ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġpublic Ġfun Ġerror ( t : ĠThrowable ?, Ġmsg : Ġ() Ġ-> ĠAny ?) ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠAdd Ġa Ġlog Ġmessage Ġindicating Ġan Ġexception Ġwill Ġbe Ġthrown Ġalong Ġwith Ġthe Ġstack Ġtrace . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġpublic Ġfun Ġ< T Ġ: ĠThrowable > Ġthrowing ( throwable : ĠT ): ĠT ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠAdd Ġa Ġlog Ġmessage Ġindicating Ġan Ġexception Ġis Ġcaught Ġalong Ġwith Ġthe Ġstack Ġtrace . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġpublic Ġfun Ġ< T Ġ: ĠThrowable > Ġcatch ing ( throwable : ĠT ) Ċ } Ċ Ċ /** Ċ Ġ* ĠAdd Ġa Ġlog Ġmessage Ġif Ġtrace Ġlogging Ġis Ġenabled Ċ Ġ*/ Ċ public Ġfun ĠLogger . trace ( msg : ĠString ) Ġ= Ġtrace Ġ{ Ġmsg Ġ} Ċ Ċ /** Ċ Ġ* ĠAdd Ġa Ġlog Ġmessage Ġif Ġdebug Ġlogging Ġis Ġenabled Ċ Ġ*/ Ċ public Ġfun ĠLogger . debug ( msg : ĠString ) Ġ= Ġdebug Ġ{ Ġmsg Ġ} Ċ Ċ /** Ċ Ġ* ĠAdd Ġa Ġlog Ġmessage Ġif Ġinfo Ġlogging Ġis Ġenabled Ċ Ġ*/ Ċ public Ġfun ĠLogger . info ( msg : ĠString ) Ġ= Ġinfo Ġ{ Ġmsg Ġ} Ċ Ċ /** Ċ Ġ* ĠAdd Ġa Ġlog Ġmessage Ġif Ġwarn Ġlogging Ġis Ġenabled Ċ Ġ*/ Ċ public Ġfun ĠLogger . warn ( msg : ĠString ) Ġ= Ġwarn Ġ{ Ġmsg Ġ} Ċ Ċ /** Ċ Ġ* ĠAdd Ġa Ġlog Ġmessage Ġif Ġerror Ġlogging Ġis Ġenabled Ċ Ġ*/ Ċ public Ġfun ĠLogger . error ( msg : ĠString ) Ġ= Ġerror Ġ{ Ġmsg Ġ} Ċ