package Ġcom . gar pr . android . managers Ċ Ċ import Ġcom . gar pr . android . Build Config Ċ import Ġcom . gar pr . android . misc . Tim ber Ċ import Ġcom . gar pr . android . preferences . General Preference Store Ċ import Ġcom . gar pr . android . repositories . Favorite Players Repository Ċ import Ġcom . gar pr . android . sync . ro ster . Sm ash R oster Storage Ċ Ċ class ĠApp Upgrade ManagerImpl ( ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġfavorite Players Repository : ĠF avorite Players Repository , ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġgeneral Preference Store : ĠGeneral Preference Store , ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġsm ash R oster Storage : ĠSm ash R oster Storage , ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġtim ber : ĠTim ber Ċ ) Ġ: ĠApp Upgrade Manager Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġupgrade App () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġlast Version Ġ= Ġgeneral Preference Store . last Version . get () ĊĠĠĠĠĠĠĠ Ġgeneral Preference Store . last Version . set ( Build Config . VERSION _ CODE ) ĊĊĠĠĠĠĠĠĠ Ġif Ġ( last Version Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtim ber . d ( TAG , Ġ" App Ġdoesn 't Ġneed Ġto Ġupgrade Ġas Ġthere Ġis Ġno Ġprevious Ġversion Ġ( is Ġnow Ġ${ Build Config . VERSION _ CODE }) ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( last Version Ġ== ĠBuild Config . VERSION _ CODE ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtim ber . d ( TAG , Ġ" App Ġdoesn 't Ġneed Ġto Ġupgrade , Ġalready Ġon Ġlatest Ġversion Ġ(${ Build Config . VERSION _ CODE }) ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtim ber . d ( TAG , Ġ" App Ġmay Ġneed Ġto Ġupgrade , Ġprevious Ġversion Ġwas Ġ$ last Version Ġ( is Ġnow Ġ${ Build Config . VERSION _ CODE }) ") ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġif Ġ( last Version Ġ< Ġ 1 0 1 1 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġit Ġused Ġto Ġbe Ġa ĠString , Ġis Ġnow Ġa ĠRegion Ġobject ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgeneral Preference Store . current Region . delete () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġit Ġused Ġto Ġbe Ġan ĠAbs Player , Ġis Ġnow Ġa ĠF avorite Player ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgeneral Preference Store . identity . delete () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġused Ġto Ġbe Ġa Ġlist Ġof ĠAbs Player , Ġis Ġnow Ġa Ġlist Ġof ĠF avorite Player ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfavorite Players Repository . clear () ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( last Version Ġ< Ġ 2 2 0 0 3 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġmigrated Ġto ĠRoom Ġfor Ġstorage Ġof Ġfavorite Ġplayers ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfavorite Players Repository . migrate () ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( last Version Ġ< Ġ 2 2 0 0 4 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġmigrated Ġto ĠRoom Ġfor Ġstorage Ġof Ġsm ash Ġro ster Ġcompet itors ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsm ash R oster Storage . migrate () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġtim ber . d ( TAG , Ġ" App Ġupgrade Ġcomplete ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠTAG Ġ= Ġ" App Upgrade ManagerImpl " ĊĠĠĠ Ġ} Ċ Ċ } Ċ