DefaultAppContainer.kt 885 B

123456789101112131415161718192021222324252627282930
  1. package im.angry.openeuicc.di
  2. import android.content.Context
  3. import android.telephony.SubscriptionManager
  4. import android.telephony.TelephonyManager
  5. import im.angry.openeuicc.core.EuiccChannelManager
  6. import im.angry.openeuicc.core.IEuiccChannelManager
  7. import im.angry.openeuicc.util.*
  8. open class DefaultAppContainer(context: Context) : AppContainer {
  9. override val telephonyManager by lazy {
  10. context.getSystemService(TelephonyManager::class.java)!!
  11. }
  12. override val euiccChannelManager: IEuiccChannelManager by lazy {
  13. EuiccChannelManager(context)
  14. }
  15. override val subscriptionManager by lazy {
  16. context.getSystemService(SubscriptionManager::class.java)!!
  17. }
  18. override val preferenceRepository by lazy {
  19. PreferenceRepository(context)
  20. }
  21. override val uiComponentFactory by lazy {
  22. DefaultUiComponentFactory()
  23. }
  24. }