/* Ċ Ġ* ĠĠĠ ĠCopyright Ġ 2 0 2 1 ĠJ orge ĠÃ ģ v ila ĠEst Ã© vez Ċ Ġ* Ċ Ġ* ĠĠĠ ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* ĠĠĠ Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠĠĠ ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠĠĠ ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* ĠĠĠ Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠĠĠ ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠĠĠ ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* ĠĠĠ Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġcom . ats ist em as . data . remote . models Ċ Ċ import Ġcom . ats ist em as . data . commons . Constants Ċ import Ġcom . squareup . mos hi .* ĊĊ Ċ /* Ċ * ĠLas Ġest ad ÃŃst icas Ġin icia les Ġse Ġguard a Ġb ajo Ġ" stats ", Ġen Ġuna Ġlista , Ġcon Ġun Ġ" stat " Ġque Ġindic a Ċ * Ġel Ġnombre Ġy Ġla Ġurl Ġexp lic ativa Ġde Ġla Ġest ad ÃŃst ica : Ġpunto s Ġde Ġv ida , Ġata que , Ġdef ens a , Ċ * Ġata que Ġespec ial , Ġdef ens a Ġespec ial Ġy Ġve loc idad . Ċ * ĊĠ Ġ" stats ":[ ĊĠĠĠ Ġ{ ĊĠĠĠĠĠ Ġ" base _ stat ": 4 5 , ĊĠĠĠĠĠ Ġ" eff ort ": 0 , ĊĠĠĠĠĠ Ġ" stat ":{ ĊĠĠĠĠĠĠĠ Ġ" name ":" hp ", ĊĠĠĠĠĠĠĠ Ġ" url ":" https :// poke api . co / api / v 2 / stat / 1 /" ĊĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ}, ĊĠĠĠ Ġ{ ĊĠĠĠĠĠ Ġ" base _ stat ": 4 9 , ĊĠĠĠĠĠ Ġ" eff ort ": 0 , ĊĠĠĠĠĠ Ġ" stat ":{ ĊĠĠĠĠĠĠĠ Ġ" name ":" attack ", ĊĠĠĠĠĠĠĠ Ġ" url ":" https :// poke api . co / api / v 2 / stat / 2 /" ĊĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ}, ĊĠĠĠ Ġ.... Ċ Ġ* Ġ*/ Ċ Ċ data Ġclass ĠFull Stats ( ĊĠĠĠ Ġval Ġhp : ĠInt , ĊĠĠĠ Ġval Ġattack : ĠInt , ĊĠĠĠ Ġval Ġdef ense : ĠInt , ĊĠĠĠ Ġval Ġspecial Attack : ĠInt , ĊĠĠĠ Ġval Ġspecial Def ense : ĠInt , ĊĠĠĠ Ġval Ġspeed : ĠInt Ċ ) Ċ Ċ @ Json Class ( generate Adapter Ġ= Ġtrue ) Ċ data Ġclass ĠStat ( ĊĠĠĠ Ġ@ Json ( name Ġ= Ġ" base _ stat ") Ġval Ġvalue : ĠInt , ĊĠĠĠ Ġ@ Json ( name Ġ= Ġ" stat ") Ġval Ġstat Name : ĠStat Name Ċ ) Ċ Ċ @ Json Class ( generate Adapter Ġ= Ġtrue ) Ċ data Ġclass ĠStat Name ( ĊĠĠĠ Ġval Ġname : ĠString Ċ ) Ċ Ċ // ĠAdapter Ġpara Ġconvert ir Ġdata Ġclasses Ġdel Ġes que ma ĠJSON Ġ( Stat Ġy ĠStat Name ) Ċ // Ġen Ġuna Ġclase Ġcon Ġlas Ġ 5 Ġstats Ġ( Full Stats ), Ġy Ġvice ver sa Ċ class ĠStats Adapter Ġ{ ĊĊĠĠĠ Ġ// ĠConv ierte ĠFull Stats Ġen Ġuna Ġlista Ġde Ġstats Ġtal Ġy Ġcomo Ġse Ġespec ifica Ġen Ġel Ġes que ma ĠJSON Ġdel Ġservidor . ĊĠĠĠ Ġ@ ToJson ĊĠĠĠ Ġfun ĠtoJson ( full Stats : ĠFull Stats ): ĠList < Stat > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠStat ( full Stats . hp , ĠStat Name ( Constants . REMOTE _ JSON _ STAT _ HP )), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠStat ( full Stats . attack , ĠStat Name ( Constants . REMOTE _ JSON _ STAT _ ATT ACK )), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠStat ( full Stats . defense , ĠStat Name ( Constants . REMOTE _ JSON _ STAT _ DEF ENSE )), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠStat ( full Stats . special Attack , ĠStat Name ( Constants . REMOTE _ JSON _ STAT _ SPECIAL _ ATT ACK )), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠStat ( full Stats . special Def ense , ĠStat Name ( Constants . REMOTE _ JSON _ STAT _ SPECIAL _ DEF ENSE )), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠStat ( full Stats . speed , ĠStat Name ( Constants . REMOTE _ JSON _ STAT _ SPEED )), ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ// ĠConv ierte Ġuna Ġlista Ġde Ġstats Ġcon Ġel Ġes que ma Ġdel Ġservidor Ġen Ġun ĠFull Stats Ġcon Ġlas Ġ 5 Ġstats Ġprincip ales ĊĠĠĠ Ġ@ FromJson ĊĠĠĠ Ġfun Ġfrom Json ( stats : ĠList < Stat >): ĠFull Stats Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġhp Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġvar Ġattack Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġvar Ġdef ense Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġvar Ġspecial Attack Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġvar Ġspecial Def ense Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġvar Ġspeed Ġ= Ġ 0 ĊĊĠĠĠĠĠĠĠ Ġstats . forEach Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( it . stat Name . name ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠConstants . REMOTE _ JSON _ STAT _ HP Ġ-> Ġhp Ġ= Ġit . value ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠConstants . REMOTE _ JSON _ STAT _ ATT ACK Ġ-> Ġattack Ġ= Ġit . value ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠConstants . REMOTE _ JSON _ STAT _ DEF ENSE Ġ-> Ġdef ense Ġ= Ġit . value ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠConstants . REMOTE _ JSON _ STAT _ SPECIAL _ ATT ACK Ġ-> Ġspecial Attack Ġ= Ġit . value ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠConstants . REMOTE _ JSON _ STAT _ SPECIAL _ DEF ENSE Ġ-> Ġspecial Def ense Ġ= Ġit . value ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠConstants . REMOTE _ JSON _ STAT _ SPEED Ġ-> Ġspeed Ġ= Ġit . value ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġthrow ĠJson DataException (" unknown Ġstat : Ġ${ it . stat Name . name }") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġreturn ĠFull Stats ( hp , Ġattack , Ġdef ense , Ġspecial Attack , Ġspecial Def ense , Ġspeed ) ĊĠĠĠ Ġ} Ċ }