package Ġcom . dt b . core . common . cache Ċ Ċ import Ġandroid . content . Context Ċ import Ġcom . dt b . core . common . cache . contract . I Serialize Ċ import Ġjava . io . ByteArray InputStream Ċ import Ġjava . io . ByteArray OutputStream Ċ import Ġjava . io . Object InputStream Ċ import Ġjava . io . Object OutputStream Ċ Ċ class ĠDef Serialize Impl Ġ: ĠI Serialize Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġinit ( context : ĠContext ) Ġ{ ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġ< T > Ġserialize 2 Object ( input : ĠString , Ġclazz : ĠClass < T >): ĠT Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġred Str Ġ= Ġjava . net . URL Decoder . decode ( input , Ġ" UTF - 8 ") ĊĠĠĠĠĠĠĠ ĠByteArrayInputStream ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġred Str . toByteArray ( charset (" ISO - 8 8 5 9 - 1 ")) ĊĠĠĠĠĠĠĠ Ġ). use Ġ{ Ġb ais Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ ĠObject InputStream ( ba is ). use Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġit . read Object () Ġas ĠT ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġobject 2 serialize ( instance : ĠAny ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ ĠByteArrayOutputStream () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. use Ġ{ ĠbyteArray OutputStream Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠObject OutputStream ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠbyteArray OutputStream ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ). use Ġ{ Ġobject OutputStream Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġobject OutputStream . write Object ( instance ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġser Str Ġ= ĠbyteArray OutputStream . toString (" ISO - 8 8 5 9 - 1 ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġser Str Ġ= Ġjava . net . URL Encoder . encode ( ser Str , Ġ" UTF - 8 ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġser Str ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ }