package Ġcom . query . utils Ċ Ċ import Ġcom . be ust . kl ax on . Json Base Ċ import Ġcom . be ust . kl ax on . Kl ax on Ċ import Ġcom . be ust . kl ax on . Parser Ċ import Ġcom . dis ple e . cache . Cache Library Ċ import Ġcom . query . Application Ċ import Ġme . t ong fe i . progressbar . ProgressBar Ċ import Ġme . t ong fe i . progressbar . ProgressBar Style Ċ import Ġjava . io .* Ċ import Ġjava . time . Duration Ċ import Ġjava . time . LocalDateTime Ċ import Ġjava . time . Zone Offset Ċ import Ġjava . time . format . DateTime Formatter Ċ import Ġjava . time . temporal . Ch rono Unit Ċ import Ġjava . util . zip . GZIP OutputStream Ċ Ċ fun ĠK l ax on . to Pretty Json String ( value : ĠAny ): ĠString Ġ{ ĊĠĠĠ Ġval Ġbuilder Ġ= ĠStringBuilder ( Kl ax on (). toJson String ( value )) ĊĠĠĠ Ġreturn Ġ( Parser (). parse ( builder ) Ġas ĠJson Base ). toJson String ( true ) Ċ } Ċ Ċ fun ĠCache Library . index ( type Ġ: ĠIndex Type ) Ġ= Ġindex ( type . number ) Ċ Ċ fun ĠCache Library . data ( type Ġ: ĠIndex Type , archive : ĠString , Ġx tea : ĠInt Array ? Ġ= Ġnull ) Ġ= Ġthis . data ( type . number , Ġarchive , Ġ 0 , Ġx tea ) Ċ Ċ fun ĠCache Library . data ( index : ĠIndex Type , Ġarchive : ĠInt , Ġfile : ĠInt Ġ= Ġ 0 , Ġx tea : ĠInt Array ? Ġ= Ġnull ) Ġ= Ġthis . index ( index ). archive ( archive , Ġx tea )?. file ( file )?. data Ċ Ċ fun ĠString . capitalize Words (): ĠString Ġ= Ġsplit (" Ġ"). join ToString (" Ġ") Ġ{ Ġit . replace First Char Ġ{ Ġchar Ġ-> Ġchar . uppercase () Ġ} Ġ} Ċ Ċ fun ĠString . string To Timestamp () Ġ: ĠLocalDateTime Ġ{ ĊĠĠĠ Ġval Ġformatter Ġ= ĠDateTime Formatter . of Pattern (" uu uu - MM - dd ĠHH : mm : ss ") ĊĠĠĠ Ġval Ġtime Ġ= Ġthis . replace (" T "," Ġ"). replace After Last (". "," ") ĊĠĠĠ Ġval ĠdateTime Ġ= ĠLocalDateTime . parse ( time . replace Last Letter (""), Ġformatter ) ĊĠĠĠ Ġreturn ĠdateTime Ċ } ĊĊ Ċ fun Ġgzip ( output Ġ: ĠFile , un compressed Data : ĠByteArray ) Ġ{ ĊĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠ ĠByteArrayOutputStream ( un compressed Data . size ). use Ġ{ Ġb os Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ ĠG ZIP OutputStream ( output . output Stream ()). use Ġ{ Ġgzip OS Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgzip OS . write ( un compressed Data ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgzip OS . close () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ġcatch Ġ( e : ĠIOException ) Ġ{ ĊĠĠĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun Ġgzip ( content : ĠString ): ĠByteArray Ġ{ ĊĠĠĠ Ġval Ġb os Ġ= ĠByteArrayOutputStream () ĊĠĠĠ ĠG ZIP OutputStream ( bos ). buffered Writer (). use Ġ{ Ġit . write ( content ) Ġ} ĊĠĠĠ Ġreturn Ġb os . toByteArray () Ċ } Ċ Ċ fun ĠLocalDateTime . to Echo ch UTC () Ġ: ĠLong Ġ{ ĊĠĠĠ Ġreturn Ġthis . to Epoch Second ( Zone Offset . UTC ) Ċ } Ċ Ċ fun Ġrevision ID () Ġ= ĠApplication . cache Info . builds [ 0 ]. major Ċ Ċ fun Ġrevision After ( rev Ġ: ĠInt ) Ġ= Ġrev Ġ<= Ġrevision ID () Ċ fun Ġrevision Before ( rev Ġ: ĠInt ) Ġ= Ġrev Ġ>= Ġrevision ID () Ċ Ċ fun ĠString . replace Last Letter ( new Letter : ĠString ): ĠString Ġ{ ĊĠĠĠ Ġval Ġsubstring Ġ= Ġthis . substring ( 0 , Ġthis . length Ġ- Ġ 1 ) ĊĠĠĠ Ġreturn Ġsubstring Ġ+ Ġnew Letter Ċ } ĊĊ Ċ fun Ġprogress ( task Ġ: ĠString , Ġamt Ġ: ĠLong ) Ġ: ĠProgress Bar Ġ{ ĊĠĠĠ Ġreturn ĠProgress Bar ( ĊĠĠĠĠĠĠĠ Ġtask , ĊĠĠĠĠĠĠĠ Ġamt , ĊĠĠĠĠĠĠĠĠ 1 , ĊĠĠĠĠĠĠĠ ĠSystem . err , ĊĠĠĠĠĠĠĠ ĠProgress Bar Style . ASCII , ĊĠĠĠĠĠĠĠ Ġ"", ĊĠĠĠĠĠĠĠĠ 1 , ĊĠĠĠĠĠĠĠ Ġfalse , ĊĠĠĠĠĠĠĠ Ġnull , ĊĠĠĠĠĠĠĠ ĠCh rono Unit . SECONDS , ĊĠĠĠĠĠĠĠĠ 0 L , ĊĠĠĠĠĠĠĠ ĠDuration . ZERO ĊĠĠĠ Ġ) Ċ } Ċ Ċ fun Ġwrite Json ( file Ġ: ĠFile , Ġdata Ġ: ĠAny , Ġpretty Print Ġ: ĠBoolean Ġ= Ġtrue ) Ġ{ ĊĠĠĠ Ġvar Ġoutput Ġ= ĠBuffered Writer ( FileWriter ( file )) ĊĠĠĠ Ġoutput . write ( data . json ToString ( pretty Print )) ĊĠĠĠ Ġoutput . close () Ċ } Ċ