Compare commits
1 commit
accf9add44
...
7e4ec3bf1a
Author | SHA1 | Date | |
---|---|---|---|
7e4ec3bf1a |
3 changed files with 9 additions and 14 deletions
|
@ -54,6 +54,9 @@ interface OpenEuiccContextMarker {
|
||||||
val appContainer: AppContainer
|
val appContainer: AppContainer
|
||||||
get() = openEuiccApplication.appContainer
|
get() = openEuiccApplication.appContainer
|
||||||
|
|
||||||
|
val preferenceRepository: PreferenceRepository
|
||||||
|
get() = appContainer.preferenceRepository
|
||||||
|
|
||||||
val telephonyManager: TelephonyManager
|
val telephonyManager: TelephonyManager
|
||||||
get() = appContainer.telephonyManager
|
get() = appContainer.telephonyManager
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,9 +10,8 @@ import java.lang.IllegalArgumentException
|
||||||
|
|
||||||
class PrivilegedEuiccChannelFactory(context: Context) : DefaultEuiccChannelFactory(context),
|
class PrivilegedEuiccChannelFactory(context: Context) : DefaultEuiccChannelFactory(context),
|
||||||
PrivilegedEuiccContextMarker {
|
PrivilegedEuiccContextMarker {
|
||||||
private val tm by lazy {
|
override val openEuiccMarkerContext: Context
|
||||||
(context.applicationContext as OpenEuiccApplication).appContainer.telephonyManager
|
get() = context
|
||||||
}
|
|
||||||
|
|
||||||
@Suppress("NAME_SHADOWING")
|
@Suppress("NAME_SHADOWING")
|
||||||
override suspend fun tryOpenEuiccChannel(port: UiccPortInfoCompat): EuiccChannel? {
|
override suspend fun tryOpenEuiccChannel(port: UiccPortInfoCompat): EuiccChannel? {
|
||||||
|
@ -35,7 +34,7 @@ class PrivilegedEuiccChannelFactory(context: Context) : DefaultEuiccChannelFacto
|
||||||
intrinsicChannelName = null,
|
intrinsicChannelName = null,
|
||||||
TelephonyManagerApduInterface(
|
TelephonyManagerApduInterface(
|
||||||
port,
|
port,
|
||||||
tm,
|
telephonyManager,
|
||||||
context.preferenceRepository.verboseLoggingFlow
|
context.preferenceRepository.verboseLoggingFlow
|
||||||
),
|
),
|
||||||
context.preferenceRepository.verboseLoggingFlow,
|
context.preferenceRepository.verboseLoggingFlow,
|
||||||
|
|
|
@ -10,16 +10,9 @@ import java.util.concurrent.Executors
|
||||||
import kotlin.coroutines.resume
|
import kotlin.coroutines.resume
|
||||||
import kotlin.coroutines.suspendCoroutine
|
import kotlin.coroutines.suspendCoroutine
|
||||||
|
|
||||||
interface PrivilegedEuiccContextMarker {
|
interface PrivilegedEuiccContextMarker : OpenEuiccContextMarker {
|
||||||
val privilegedEuiccMarkerContext: Context
|
override val preferenceRepository: PrivilegedPreferenceRepository
|
||||||
get() = when (this) {
|
get() = appContainer.preferenceRepository as PrivilegedPreferenceRepository
|
||||||
is Context -> this
|
|
||||||
is Fragment -> requireContext()
|
|
||||||
else -> throw RuntimeException("PrivilegedEuiccContextMarker shall only be used on Fragments or UI types that derive from Context")
|
|
||||||
}
|
|
||||||
|
|
||||||
val preferenceRepository: PrivilegedPreferenceRepository
|
|
||||||
get() = privilegedEuiccMarkerContext.preferenceRepository as PrivilegedPreferenceRepository
|
|
||||||
}
|
}
|
||||||
|
|
||||||
suspend fun Context.bindServiceSuspended(intent: Intent, flags: Int): Pair<IBinder?, () -> Unit> =
|
suspend fun Context.bindServiceSuspended(intent: Intent, flags: Int): Pair<IBinder?, () -> Unit> =
|
||||||
|
|
Loading…
Add table
Reference in a new issue