package Ġcom . lav ans . kot mi Ċ Ċ import Ġcom . fasterxml . jackson . core . Json Parser Ċ import Ġcom . fasterxml . jackson . databind . ObjectMapper Ċ import Ġcom . fasterxml . jackson . module . kotlin . register Kotlin Module Ċ import Ġorg . joda . time . DateTime Ċ import Ġorg . slf 4 j . Logger Ċ import Ġorg . slf 4 j . LoggerFactory Ċ import Ġjava . io . InputStream Ċ Ċ type alias ĠModule ID Ġ= ĠString Ċ type alias ĠVersion ID Ġ= ĠString Ċ Ċ object ĠLogger Ġ{ ĊĠĠĠ Ġfun Ġget Logger ( v : ĠString ): ĠLogger Ġ= ĠLoggerFactory . getLogger ( v ) ĊĠĠĠ Ġfun Ġget Logger ( o : ĠAny ): ĠLogger Ġ= Ġget Logger ( o . java Class . canonical Name ) Ċ } Ċ Ċ class ĠJsonObject Mapper Ġ{ ĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġom Ġ= ĠObjectMapper (). register Kotlin Module (). enable ( Json Parser . Feature . ALLOW _ COMMENTS ) ĊĠĠĠĠĠĠĠ Ġfun Ġmapper (): ĠObjectMapper Ġ= Ġom ĊĠĠĠĠĠĠĠ Ġfun Ġ< T > read ( src : ĠInputStream , Ġclazz : ĠClass < T >): ĠT Ġ= Ġom . readValue ( src , Ġclazz ) ĊĠĠĠĠĠĠĠ Ġfun Ġas String ( v : ĠAny ): String Ġ= Ġom . writeValue AsString ( v ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ object ĠFile Ġ{ ĊĠĠĠ Ġfun Ġresource AsStream ( filename : ĠString ): Ġjava . io . InputStream Ġ= ĊĠĠĠĠĠĠĠ Ġjava Class . class Loader . getResource AsStream ( filename ) ĊĊĠĠĠ Ġfun Ġresource AsString ( filename : ĠString ): ĠString Ġ= ĊĠĠĠĠĠĠĠ Ġresource AsStream ( filename ). use Ġ{ Ġit . buffered Reader (). read Text () Ġ} Ċ } Ċ Ċ object ĠDateTime Ġ{ ĊĠĠĠ Ġfun Ġnow (): ĠDateTime Ġ= ĠDateTime . now () Ċ } Ċ