package Ġsk . ux tweak . ux mobile . study . net Ċ Ċ import Ġorg . json . JSONArray Ċ import Ġorg . json . JSONObject Ċ Ċ /** Ċ Ġ* ĠCreated Ġby ĠK amil ĠM ace k Ġon Ġ 1 8 . 4 . 2 0 2 0 . Ċ Ġ*/ Ċ class ĠJson Builder () Ġ{ ĊĠĠĠ Ġprivate Ġvar Ġjson Ġ= ĠJSONObject () ĊĊĠĠĠ Ġconstructor ( var arg Ġpairs : ĠPair < String , Ġ* >) Ġ: Ġthis () Ġ{ ĊĠĠĠĠĠĠĠ Ġadd (* pairs ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġadd ( var arg Ġpairs : ĠPair < String , Ġ* >) Ġ{ ĊĠĠĠĠĠĠĠ Ġfor Ġ(( key , Ġvalue ) Ġin Ġpairs ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( value ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠBoolean Ġ-> Ġjson . put ( key , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠNumber Ġ-> Ġadd ( key , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠString Ġ-> Ġjson . put ( key , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠJson Builder Ġ-> Ġjson . put ( key , Ġvalue . json ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠArray < *> Ġ-> Ġadd ( key , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠJSONObject Ġ-> Ġjson . put ( key , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠJSONArray Ġ-> Ġjson . put ( key , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġadd ( key : ĠString , Ġvalue : ĠNumber ): ĠJson Builder Ġ{ ĊĠĠĠĠĠĠĠ Ġwhen Ġ( value ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠInt Ġ-> Ġjson . put ( key , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠLong Ġ-> Ġjson . put ( key , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠFloat Ġ-> Ġjson . put ( key , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠDouble Ġ-> Ġjson . put ( key , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġ{} Ġ// ĠDo Ġwhat Ġyou Ġdo Ġon Ġerror ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ< T > Ġadd ( key : ĠString , Ġitems : ĠArray < T >): ĠJson Builder Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġjson Array Ġ= ĠJSONArray () ĊĠĠĠĠĠĠĠ Ġitems . forEach Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( it ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠString , is ĠLong , is ĠInt , Ġis ĠBoolean Ġ-> Ġjson Array . put ( it ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠJson Builder Ġ-> Ġjson Array . put ( it . json ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġtry Ġ{ json Array . put ( it )} Ġcatch Ġ( ignored : Exception ) Ġ{/* handle Ġthe Ġerror */ } ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġjson . put ( key , Ġjson Array ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġto JsonObject () Ġ= Ġjson ĊĊĠĠĠ Ġoverride Ġfun ĠtoString () Ġ= Ġjson . toString (). replace ("\\ "," ") Ċ } Ċ