package Ġcom . smart settings . ai . di Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . media . Audio Manager Ċ import Ġcom . google . android . gms . location . F used Location Provider Client Ċ import Ġcom . smart settings . ai . core . Smart Setting Repository Ċ import Ġcom . smart settings . ai . core . smart Setting Creator . Smart Setting Creator Ċ import Ġcom . smart settings . ai . core . smart Setting Schema Provider . Smart Setting Schema Provider Ċ import Ġcom . smart settings . ai . core . smart Setting Schema Provider . Smart Setting Schema Repo Ċ import Ġcom . smart settings . ai . resources . cloud . ApiService Ċ import Ġcom . smart settings . ai . resources . cloud . Api ServiceProvider Ċ import Ġcom . smart settings . ai . resources . db . Smart Setting Dao Ċ import Ġcom . smart settings . ai . resources . db . Smart Setting Database Ċ import Ġcom . smart settings . ai . resources . db . Smart Setting Schema Dao Ċ Ċ object ĠDependency Provider Ġ{ ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġabstract Dependency Injector : ĠAbstract Dependency Injector ĊĊĠĠĠ Ġfun Ġset Injector ( abstract Dependency Injector : ĠAbstract Dependency Injector ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . abstract Dependency Injector Ġ= Ġabstract Dependency Injector ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġval ĠgetContext Ġ: ĠContext Ġget () Ġ= Ġabstract Dependency Injector . provide Context () ĊĊĠĠĠ Ġval Ġaudio Manager Ġ: ĠAudio Manager Ġget () Ġ= Ġabstract Dependency Injector . provide Audio Manager () ĊĊĠĠĠ Ġval Ġsmart Setting Repository Ġ: ĠSmart Setting Repository Ġget () Ġ= Ġabstract Dependency Injector . provide Smart Setting Repository () ĊĊĠĠĠ Ġval Ġf used Location Provider Client Ġ: ĠF used Location Provider Client Ġget () Ġ= Ġabstract Dependency Injector . provide F used Location Provider Client () ĊĊĠĠĠ Ġval Ġapi Service Ġ: ĠApi Service Ġget () Ġ= Ġabstract Dependency Injector . provide ApiService () ĊĊĠĠĠ Ġval Ġsmart Setting Schema Repo Ġ: ĠSmart Setting Schema Repo Ġget () Ġ= Ġabstract Dependency Injector . provide Smart Setting Schema Repo () ĊĊĠĠĠ Ġval Ġsmart setting Schema Provider Ġ: ĠSmart Setting Schema Provider Ġget () Ġ= Ġabstract Dependency Injector . provide Smart Setting Schema Provider () ĊĊĠĠĠ Ġval Ġsmart Setting Creator Ġ: ĠSmart Setting Creator Ġget () Ġ= Ġabstract Dependency Injector . provide Smart Setting Creator () ĊĊĠĠĠ Ġval Ġsmart Setting Dao Ġ: ĠSmart Setting Dao Ġget () Ġ= Ġabstract Dependency Injector . provide Smart Setting Dao () ĊĊĠĠĠ Ġval Ġsmart Setting Schema Dao Ġ: ĠSmart Setting Schema Dao Ġget () Ġ= Ġabstract Dependency Injector . provide Smart Setting Schema Dao () Ċ } Ċ Ċ abstract Ġclass ĠAbstract Dependency Injector Ġ{ ĊĊĠĠĠ Ġabstract Ġfun Ġprovide Context () Ġ: ĠContext ĊĊĠĠĠ Ġabstract Ġfun Ġprovide Audio Manager () Ġ: ĠAudio Manager ĊĊĠĠĠ Ġabstract Ġfun Ġprovide Smart Setting Repository () Ġ: ĠSmart Setting Repository ĊĊĠĠĠ Ġabstract Ġfun Ġprovide F used Location Provider Client () Ġ: ĠF used Location Provider Client ĊĊĠĠĠ Ġabstract Ġfun Ġprovide ApiService () Ġ: ĠApi Service ĊĊĠĠĠ Ġabstract Ġfun Ġprovide Smart Setting Schema Repo () Ġ: ĠSmart Setting Schema Repo ĊĊĠĠĠ Ġabstract Ġfun Ġprovide Smart Setting Creator () Ġ: ĠSmart Setting Creator ĊĊĠĠĠ Ġabstract Ġfun Ġprovide Smart Setting Dao () Ġ: ĠSmart Setting Dao ĊĊĠĠĠ Ġabstract Ġfun Ġprovide Smart Setting Schema Dao () Ġ: ĠSmart Setting Schema Dao ĊĊĠĠĠ Ġabstract Ġfun Ġprovide Smart Setting Schema Provider () Ġ: ĠSmart Setting Schema Provider Ċ } Ċ Ċ class ĠDependency Injector ( val Ġapp Context : ĠContext ) Ġ: ĠAbstract Dependency Injector () Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġcontext Ġ: ĠContext Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ Ġapp Context ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġaudio Manager Ġ: ĠAudio Manager Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ Ġapp Context . getSystem Service ( Context . AUDIO _ SERVICE ) Ġas ĠAudio Manager ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġsmart Setting Dao Ġ: ĠSmart Setting Dao Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ ĠSmart Setting Database . get Db ( app Context ). get Smart Setting Dao () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġsmart Setting Schema Dao Ġ: ĠSmart Setting Schema Dao Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ ĠSmart Setting Database . get Db ( app Context ). get Smart Setting Schema Dao () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġsmart Setting Repository Ġ: ĠSmart Setting Repository Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ ĠSmart Setting Repository () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġf used Location Provider Client Ġ: ĠF used Location Provider Client Ġget () Ġ= ĠF used Location Provider Client ( app Context ) ĊĊĠĠĠ Ġprivate Ġval Ġapi Service Ġ: ĠApi Service Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ ĠApi ServiceProvider . api Service ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġsmart Setting Schema Repo Ġ: ĠSmart Setting Schema Repo Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ ĠSmart Setting Schema Repo () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġsmart Setting Creator Ġ: ĠSmart Setting Creator Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ ĠSmart Setting Creator () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġprovide Context (): ĠContext Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġcontext ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġprovide Audio Manager (): ĠAudio Manager Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġaudio Manager ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġprovide Smart Setting Repository (): ĠSmart Setting Repository Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġsmart Setting Repository ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġprovide F used Location Provider Client (): ĠF used Location Provider Client Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġf used Location Provider Client ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġprovide ApiService (): ĠApi Service Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġapi Service ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġprovide Smart Setting Schema Repo (): ĠSmart Setting Schema Repo Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġsmart Setting Schema Repo ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġprovide Smart Setting Creator (): ĠSmart Setting Creator Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġsmart Setting Creator ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġprovide Smart Setting Dao (): ĠSmart Setting Dao Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġsmart Setting Dao ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġprovide Smart Setting Schema Dao (): ĠSmart Setting Schema Dao Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġsmart Setting Schema Dao ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġprovide Smart Setting Schema Provider (): ĠSmart Setting Schema Provider Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠSmart Setting Schema Provider ĊĠĠĠ Ġ} Ċ } Ċ