package Ġcom . st il ll yn nt he clo set . kot lr . json . wrapper Ċ Ċ import Ġcom . squareup . mos hi . FromJson Ċ import Ġcom . squareup . mos hi . Json Adapter Ċ import Ġcom . squareup . mos hi . Json DataException Ċ import Ġcom . squareup . mos hi . Json Reader Ċ import Ġcom . squareup . mos hi . Json Reader . Token . BEGIN _ ARRAY Ċ import Ġcom . squareup . mos hi . Json Reader . Token . NULL Ċ import Ġcom . squareup . mos hi . Json Reader . Token . STRING Ċ import Ġcom . squareup . mos hi . Json Writer Ċ import Ġcom . squareup . mos hi . M oshi Ċ import Ġcom . squareup . mos hi . ToJson Ċ import Ġcom . squareup . mos hi . Types Ċ import Ġcom . st il ll yn nt he clo set . kot lr . types . content . Post Content Ċ Ċ /** Ċ Ġ* ĠContent Wrapper Json Adapter Ġ- ĠA Ġcustom Ġadapter Ġto Ġhelp ĠM oshi Ġparse Ġ[ Post Content ] Ġeither Ġas Ġa Ġstring Ġof ĠHTML Ġor Ġas Ġa Ġlist Ġof Ġcontent Ġobjects . Ċ Ġ* Ċ Ġ* Ġ@ author Ġhigh th under Ċ Ġ* Ġ@ since Ġ 2 0 1 8 - 1 1 - 0 4 Ċ Ġ*/ Ċ internal Ġclass ĠContent Wrapper Json Adapter ( mos hi : ĠM oshi ) Ġ: ĠJson Adapter < Content Wrapper >() Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġstring Adapter : ĠJson Adapter < String ?> Ġ= ĊĠĠĠĠĠĠĠ Ġm oshi . adapter ( String :: class . java , Ġempty Set ()) ĊĊĠĠĠ Ġprivate Ġval ĠlistOf Content Adapter : ĠJson Adapter < List < Post Content >> Ġ= ĊĠĠĠĠĠĠĠ Ġm oshi . adapter ( Types . new Parameterized Type ( List :: class . java , ĠPost Content :: class . java ), Ġempty Set ()) ĊĊĠĠĠ Ġ@ FromJson ĊĠĠĠ Ġoverride Ġfun Ġfrom Json ( reader : ĠJson Reader ): ĠContent Wrapper Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwhen Ġ( reader . peek ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠBEGIN _ ARRAY Ġ-> ĠContent Wrapper ( content List Ġ= ĠlistOf Content Adapter . fromJson ( reader )) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSTRING Ġ-> ĠContent Wrapper ( content String Ġ= Ġstring Adapter . fromJson ( reader )) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠNULL Ġ-> ĠContent Wrapper () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġthrow ĠJson DataException (" Expected Ġa Ġfield Ġof Ġtype ĠList Ġor ĠString Ġbut Ġgot Ġ${ reader . peek () }") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ ToJson ĊĠĠĠ Ġoverride Ġfun ĠtoJson ( writer : ĠJson Writer , Ġvalue : ĠContent Wrapper ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( value ?. content String Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstring Adapter . toJson ( writer , Ġvalue . content String ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf Content Adapter . toJson ( writer , Ġvalue ?. content List . or Empty ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ