/* Ċ Ġ* ĠSPDX - File Copyright Text : Ġ 2 0 2 2 ĠA rs en iy ĠGra ur Ġ< me @ arg ra ur . dev > Ċ Ġ* ĠSPDX - License - Identifier : ĠMIT Ċ Ġ*/ Ċ Ċ package Ġdev . arg ra ur . ao sp . builder . config Ċ Ċ import Ġdev . arg ra ur . ao sp . builder . Application Ċ import Ġdev . arg ra ur . ao sp . builder . utils . Logger Ċ import Ġkotlinx . cli . Arg Parser Ċ import Ġkotlinx . cli . Arg Type Ċ import Ġkotlinx . cli . default Ċ Ċ class ĠApplication Config ( args : ĠArray < String >) Ġ{ ĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠTAG Ġ= ĠApplication Config :: class . simple Name !! ĊĠĠĠ Ġ} ĊĠĠĠ Ġprivate Ġval Ġlogger Ġ= ĠLogger . getInstance () ĊĠĠĠ Ġprivate Ġval Ġparser Ġ= ĠArg Parser ( Application . APPLICATION _ NAME ) ĊĠĠĠ Ġval Ġtele gram Ġby Ġparser . option ( Arg Type . Boolean , Ġshort Name Ġ= Ġ" t ", Ġdescription Ġ= Ġ" Run Ġin ĠTelegram Ġbot Ġmode "). default ( false ) ĊĠĠĠ Ġval Ġdebug Ġby Ġparser . option ( Arg Type . Boolean , Ġshort Name Ġ= Ġ" d ", Ġdescription Ġ= Ġ" Debug Ġmode "). default ( false ) ĊĠĠĠ Ġval Ġnet Debug Ġby Ġparser . option ( Arg Type . Boolean , Ġshort Name Ġ= Ġ" nd ", Ġdescription Ġ= Ġ" Network Ġdebug Ġfor ĠTelegram Ġbot "). default ( false ) ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġlogger . I ( TAG , Ġ" Parsing Ġinput Ġarguments ...") ĊĠĠĠĠĠĠĠ Ġparser . parse ( args ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠtoString (): ĠString Ġ= ĊĠĠĠĠĠĠĠ ĠStringBuilder (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġappend (" Application Ġconfig :\ n ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġappend (" telegram Ġ-> Ġ$ telegram \ n ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġappend (" debug Ġ-> Ġ$ debug ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġappend (" net Debug Ġ-> Ġ$ net Debug ") ĊĠĠĠĠĠĠĠ Ġ}. toString () Ċ }