package Ġcom . open conference . model . database . dao Ċ Ċ import Ġandroid . database . Cursor Ċ import Ġandroid . support . annotation . NonNull Ċ import Ġandroid . support . annotation . Nullable Ċ import Ġcom . gab riel itt ner . auto . value . cursor . ColumnName Ċ import Ġcom . gab riel itt ner . auto . value . cursor . Cursor Adapter Ċ import Ġcom . google . auto . value . Auto Value Ċ import Ġcom . open conference . model . Session Ċ import Ġcom . open conference . model . database .* Ċ import Ġcom . ry an har ter . auto . value . parcel . Parcel Adapter Ċ import Ġorg . th reet en . bp . Instant Ċ import Ġrx . functions . Func 1 Ċ Ċ /** Ċ Ġ* ĠA Ġlittle Ġhelper Ġclass Ġused Ġto Ġretrieve Ġthe Ġjoin Ġresult Ġ( session , Ġlocation , Ġspeaker ) Ċ Ġ* Ċ Ġ* Ġ@ author ĠH ann es ĠD or fm ann Ċ Ġ*/ Ċ @ Auto Value Ċ abstract Ġclass ĠSession Join Result Ġ{ ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠThe Ġsession Ġid ĊĠĠ Ġ*/ ĊĠ Ġ@ NonNull ĊĠ Ġ@ ColumnName ( Session Dao Sqlite . COL _ ID ) ĊĠ Ġabstract Ġfun Ġid (): ĠString ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠThe Ġtitle Ġof Ġthe Ġsessions ĊĠĠ Ġ*/ ĊĠ Ġ@ Nullable ĊĠ Ġ@ ColumnName ( Session Dao Sqlite . COL _ TITLE ) ĊĠ Ġabstract Ġfun Ġtitle (): ĠString ? ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠThe Ġdescription Ġof Ġthe Ġspeaker ĊĠĠ Ġ*/ ĊĠ Ġ@ Nullable ĊĠ Ġ@ ColumnName ( Session Dao Sqlite . COL _ DESCRIPTION ) ĊĠ Ġabstract Ġfun Ġdescription (): ĠString ? ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠOptional Ġtags Ġfor Ġthis Ġsession ĊĠĠ Ġ*/ ĊĠ Ġ@ Nullable ĊĠ Ġ@ ColumnName ( Session Dao Sqlite . COL _ TAGS ) ĊĠ Ġabstract Ġfun Ġtags (): ĠString ? ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠStart Ġdate Ġ/ Ġtime ĊĠĠ Ġ*/ ĊĠ Ġ@ Nullable ĊĠ Ġ@ Parcel Adapter ( Instant Parcelable Type Adapter :: class ) ĊĠ Ġ@ Cursor Adapter ( StartTime Instant Cursor Adapter :: class ) ĊĠ Ġabstract Ġfun ĠstartTime (): ĠInstant ? ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠEnd Ġdate Ġ/ Ġtime ĊĠĠ Ġ*/ ĊĠ Ġ@ Nullable ĊĠ Ġ@ Parcel Adapter ( Instant Parcelable Type Adapter :: class ) ĊĠ Ġ@ Cursor Adapter ( EndTime Instant Cursor Adapter :: class ) ĊĠ Ġabstract Ġfun ĠendTime (): ĠInstant ? ĊĊĠ Ġ@ Nullable ĊĠ Ġ@ ColumnName ( Session Dao Sqlite . COL _ LOCATION _ ID ) ĊĠ Ġabstract Ġfun Ġlocation Id (): ĠString ? ĊĊĠ Ġ@ Nullable ĊĠ Ġ@ ColumnName ( Session Dao Sqlite . COL _ LOCATION _ NAME ) ĊĠ Ġabstract Ġfun Ġlocation Name (): ĠString ? ĊĊĠ Ġ@ Nullable ĊĠ Ġ@ ColumnName ( Session Dao Sqlite . COL _ SPE AK ER _ ID ) ĊĠ Ġabstract Ġfun Ġspeaker Id (): ĠString ? ĊĊĠ Ġ@ Nullable ĊĠ Ġ@ ColumnName ( Session Dao Sqlite . COL _ SPE AK ER _ NAME ) ĊĠ Ġabstract Ġfun Ġspeaker Name (): ĠString ? ĊĊĠ Ġ@ Nullable ĊĠ Ġ@ ColumnName ( Session Dao Sqlite . COL _ SPE AK ER _ PIC ) ĊĠ Ġabstract Ġfun Ġspeaker Picture (): ĠString ? ĊĊĠ Ġ@ Nullable ĊĠ Ġ@ ColumnName ( Session Dao Sqlite . COL _ SPE AK ER _ COMP ANY ) ĊĠ Ġabstract Ġfun Ġspeaker Company (): ĠString ? ĊĊĠ Ġ@ Nullable ĊĠ Ġ@ ColumnName ( Session Dao Sqlite . COL _ SPE AK ER _ JOB TITLE ) ĊĠ Ġabstract Ġfun Ġspeaker Job Title (): ĠString ? ĊĊĠ Ġ@ NonNull ĊĠ Ġ@ ColumnName ( Session Dao Sqlite . COL _ FA V OR ITE ) ĊĠ Ġabstract Ġfun Ġfavorite (): ĠBoolean ĊĊĊĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠ Ġ@ Jvm Static ĊĠĠĠ Ġfun Ġmapper (): ĠFunc 1 < Cursor , ĠSession Join Result > Ġ= ĠAuto Value _ Session Join Result . MAP PER ĊĠ Ġ} Ċ Ċ } ĊĊ Ċ fun Ġmap Join Result ToS essions ( join Results : ĠList < Session Join Result >): ĠList < Session > ĊĠĠĠ Ġ= ĊĠĠĠ Ġjoin Results ĊĠĠĠĠĠĠĠ Ġ. groupBy Ġ{ Ġit . id () Ġ} ĊĠĠĠĠĠĠĠ Ġ. map Ġ{ Ġit . value Ġ} ĊĠĠĠĠĠĠĠ Ġ. map Ġ{ ĊĠĠĠĠĠĠĠĠĠ Ġval Ġfirst Ġ= Ġit [ 0 ] ĊĊĠĠĠĠĠĠĠĠĠ Ġval Ġspeak ers : ĠList < Speaker Auto Value > Ġ= Ġit . filter Ġ{ Ġit . speaker Id () Ġ!= Ġnull Ġ&& Ġit . speaker Name () Ġ!= Ġnull Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. map Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠS peaker Auto Value . create ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . speaker Id () !! , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . speaker Name () !! , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . speaker Picture (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . speaker Company (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . speaker Job Title (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnull ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠ ĠSession Auto Value . create ( first . id (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfirst . title (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfirst . description (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfirst . tags (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfirst . startTime (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfirst . endTime (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfirst . location Id (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfirst . location Name (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfirst . favorite (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġspeak ers ) ĊĠĠĠĠĠĠĠ Ġ} Ċ