/* Ċ Ġ* ĠCopyright Ġ( c ) Ġ 2 0 2 0 , ĠE gen iq Ċ Ġ* Ċ Ġ* Ġ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 . e gen iq . android tv program guide . entity Ċ Ċ import Ġcom . e gen iq . android tv program guide . util . Program Guide Util Ċ import Ġorg . th reet en . bp . Instant Ċ Ċ /** Ċ Ġ* ĠThis Ġclass Ġrepresents Ġa Ġprogram me Ġin Ġthe ĠE PG . Ċ Ġ* ĠThe Ġprogram Ġyou Ġassociate Ġwith Ġit Ġcan Ġbe Ġyour Ġown Ġclass Ġwhere Ġyou Ġput Ġthe Ġrelevant Ġvalues . Ċ Ġ* ĠThe ĠID Ġshould Ġbe Ġunique Ġacross Ġall Ġs chedules Ġused Ġin Ġthis Ġapp . Ċ Ġ* ĠThe Ġstart Ġand Ġend Ġtime Ġare Ġdefined Ġin ĠUTC Ġmilliseconds . ĠOver lapping Ġtimes Ġ( within Ġone Ġchannel ) Ġare Ġnot Ġallowed Ċ Ġ* Ġand Ġwill Ġbe Ġcorrected Ġby Ġthe Ġmanager . Ċ Ġ* ĠIs Ġclick able Ġdefines Ġif Ġthe Ġuser Ġcan Ġclick Ġon Ġthis Ġschedule , Ġand Ġso Ġwill Ġtrigger Ġon Schedule Clicked ( schedule ). Ċ Ġ* ĠThe Ġdisplay Title Ġproperty Ġis Ġthe Ġstring Ġwhich Ġis Ġvisible Ġto Ġthe Ġuser Ġin Ġthe ĠE PG . Ċ Ġ*/ Ċ data Ġclass ĠProgram Guide Schedule < T >( ĊĠĠĠĠĠĠĠ Ġval Ġid : ĠLong , ĊĠĠĠĠĠĠĠ Ġval Ġstarts At Millis : ĠLong , ĊĠĠĠĠĠĠĠ Ġval Ġends At Millis : ĠLong , ĊĠĠĠĠĠĠĠ Ġval Ġoriginal Times : ĠOriginal Times , ĊĠĠĠĠĠĠĠ Ġval Ġis Clickable : ĠBoolean , ĊĠĠĠĠĠĠĠ Ġval Ġdisplay Title : ĠString ?, ĊĠĠĠĠĠĠĠ Ġval Ġprogram : ĠT ?) Ġ{ ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠUsed Ġinternally . ĠWe Ġmake Ġsome Ġfixes Ġand Ġadjust ments Ġto Ġthe Ġtimes Ġin Ġthe Ġprogram Ġmanager , ĊĠĠĠĠ Ġ* Ġbut Ġfor Ġconsistency Ġwe Ġkeep Ġthe Ġoriginal Ġtimes Ġhere Ġas Ġwell . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġdata Ġclass ĠOriginal Times ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġstarts At Millis : ĠLong , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġends At Millis : ĠLong ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠG AP _ ID Ġ= Ġ- 1 L ĊĊĠĠĠĠĠĠĠ Ġfun Ġ< T > Ġcreate Gap ( from : ĠLong , Ġto : ĠLong ): ĠProgram Guide Schedule < T > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠProgram Guide Schedule ( GAP _ ID , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfrom , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġto , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠOriginal Times ( from , Ġto ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfalse , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnull ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġfun Ġ< T > Ġcreate Schedule With Program ( id : ĠLong , Ġstarts At : ĠInstant , Ġends At : ĠInstant , Ġis Clickable : ĠBoolean , Ġdisplay Title : ĠString ?, Ġprogram : ĠT ): ĠProgram Guide Schedule < T > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠProgram Guide Schedule ( id , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstarts At . to Epoch Milli (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġends At . to Epoch Milli (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠOriginal Times ( starts At . to Epoch Milli (), Ġends At . to Epoch Milli ()), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Clickable , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdisplay Title , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprogram ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġval Ġwidth Ġ= ĠProgram Guide Util . convert Millis To Pixel ( starts At Millis , Ġends At Millis ) ĊĠĠĠ Ġval Ġis Gap Ġ= Ġprogram Ġ== Ġnull ĊĠĠĠ Ġval Ġis Current Program : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġnow Ġ= ĠSystem . currentTimeMillis () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġnow Ġin Ġstarts At Millis .. ends At Millis ĊĠĠĠĠĠĠĠ Ġ} Ċ }