package Ġapp . story tel . candidate . com . modules Ċ Ċ import Ġapp . story tel . candidate . com . Build Config Ċ import Ġapp . story tel . candidate . com . repository . I Repository Ċ import Ġapp . story tel . candidate . com . repository . Mock Repository Ċ import Ġapp . story tel . candidate . com . repository . Repository Ċ import Ġapp . story tel . candidate . com . web service . Web service Ċ import Ġdagger . Module Ċ import Ġdagger . Provides Ċ import Ġdagger . h ilt . Install In Ċ import Ġdagger . h ilt . android . components . Application Component Ċ import Ġjavax . inject . Singleton Ċ Ċ @ Module Ċ @ Install In ( Application Component :: class ) Ċ object ĠRepository Module Ġ{ ĊĊĠĠĠ Ġ@ Singleton ĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġfun Ġprovide Repository ( ĊĠĠĠĠĠĠĠ Ġ@ ApiService Ġweb service : ĠWeb service ĊĠĠĠ Ġ): ĠI Repository Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( Build Config . BUILD _ TYPE Ġ== Ġ" mock ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠMock Repository () ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠRepository ( web service ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }