package Ġbr . com . instagram . home . data Ċ Ċ import Ġbr . com . instagram . common . base . Cache Ċ import Ġbr . com . instagram . common . model . Post Ċ Ċ class ĠHome DataSource Factory ( ĊĠĠĠ Ġprivate Ġval Ġfeed Cache : ĠCache < List < Post >>, Ċ ) Ġ{ ĊĊĠĠĠ Ġfun Ġcreate Local DataSource (): ĠHome DataSource Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠHome Local DataSource ( feed Cache ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġcreate Remote DataSource (): ĠHome DataSource Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠFire Home DataSource () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġcreate From Feed (): ĠHome DataSource Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( feed Cache . is Cached ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠHome Local DataSource ( feed Cache ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn ĠFire Home DataSource () ĊĠĠĠ Ġ} Ċ Ċ }