Peter Cai
e48f9aa828
All checks were successful
/ build-debug (push) Successful in 4m51s
* ApduInterfaces also need a concept of validity based on the underlying APDU channel. For example, OMAPI depends on SEService being still connected. * We then rely on this validity to wait for reconnection; we do not need to manually remove all channels under a slot because the rest will be invalid anyway, and the next attempt at connection will lazily recreate the channel. * We had to manage channels manually before during reconnect because `valid` may result in SIGSEGV's when the underlying APDU channel has become invalid. This is avoided by the validity concept added to APDU channels.
28 lines
1,002 B
Kotlin
28 lines
1,002 B
Kotlin
package net.typeblog.lpac_jni
|
|
|
|
interface LocalProfileAssistant {
|
|
val valid: Boolean
|
|
val profiles: List<LocalProfileInfo>
|
|
val notifications: List<LocalProfileNotification>
|
|
val eID: String
|
|
// Extended EuiccInfo for use with LUIs, containing information such as firmware version
|
|
val euiccInfo2: EuiccInfo2?
|
|
|
|
// All blocking functions in this class assume that they are executed on non-Main threads
|
|
// The IO context in Kotlin's coroutine library is recommended.
|
|
fun enableProfile(iccid: String): Boolean
|
|
fun disableProfile(iccid: String): Boolean
|
|
fun deleteProfile(iccid: String): Boolean
|
|
|
|
fun downloadProfile(smdp: String, matchingId: String?, imei: String?,
|
|
confirmationCode: String?, callback: ProfileDownloadCallback): Boolean
|
|
|
|
fun deleteNotification(seqNumber: Long): Boolean
|
|
fun handleNotification(seqNumber: Long): Boolean
|
|
|
|
fun setNickname(
|
|
iccid: String, nickname: String
|
|
): Boolean
|
|
|
|
fun close()
|
|
} |