package Ġcom . m und ocr ativo . jav ier . solo son ido . com Ċ Ċ import Ġandroid . util . Log Ċ import Ġcom . m und ocr ativo . jav ier . solo son ido . model . Cache Str Ċ import Ġcom . m und ocr ativo . jav ier . solo son ido . util . Ok Get File Url Ċ import Ġcom . m und ocr ativo . jav ier . solo son ido . util . Util Ċ import Ġcom . so y wiz . k lock . DateTime Ċ import Ġjava . io . IOException Ċ Ċ class ĠDirect Cache ( val Ġcache Str Dao : ĠCache Str Dao ) Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġcache Info Url Ġ= Ġmutable Map Of < Long , String >() ĊĊĠĠĠ Ġfun Ġtr ae ( url : String ): String ? { ĊĠĠĠĠĠĠĠ Ġvar Ġhash Url Ġ= ĠUtil . gen Hash FromString ( url ) ĊĠĠĠĠĠĠĠ Ġif ( cache Info Url . containsKey ( hash Url )){ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// --- ĠEst Ã¡ Ġen Ġel Ġcache Ġde Ġla ĠRAM ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġcache Info Url [ hash Url ] !! ĊĠĠĠĠĠĠĠ Ġ} else { ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// --- ĠNo ĠestÃ¡ Ġen Ġel Ġcache Ġde Ġla ĠRAM Ġ- ĠDe be Ġbus ac ar lo Ġen ĠRO OM ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdat o Ġ= cache Str Dao . tra e Cache ( hash Url ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif ( dat o != null ){ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// -- Ġesta Ġen ĠRO OM , Ġhay Ġque Ġc argar lo Ġa Ġram Ġy Ġret orn ar Ġel Ġvalor ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcache Info Url . put ( hash Url , dat o . cache Data !! ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġdat o . cache Data !! ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} else { ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// -- Ġno ĠestÃ¡ Ġen Ġroom , Ġhay Ġque Ġtra er lo Ġde Ġla Ġn ube ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Log . v (" msg "," Bus c ando Ġokhttp :$ url ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġresultado Ġ= ĠOk Get File Url . tra e Web String ( url ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Log . v (" msg "," Result ado :$ resultado ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif ( resultado != null ){ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcache Info Url . put ( hash Url , resultado ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcache Str Dao . insert ( Cache Str ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġhash Url , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġresultado , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠDateTime . now Unix Long () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ)) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġresultado ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse { ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠIOException (" T row ĠIOException / to Ġretry ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġs aca Del Cache ( url Info : String ){ ĊĠĠĠĠĠĠĠ Ġvar Ġhash Url Ġ= ĠUtil . gen Hash FromString ( url Info ) ĊĠĠĠĠĠĠĠ Ġcache Str Dao . delete Cache Id ( hash Url ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġcon exion Server ( url : String ): String ? { ĊĠĠĠĠĠĠĠ Ġreturn ĠOk Get File Url . tra e Web String ( url ) ĊĠĠĠ Ġ} Ċ Ċ }