srctree

Robin Linden parent 32374b65 4bc6577b
Move syncing user with Tox profile out of Tox

inlinesplit
atox/src/main/java/ltd/evilcorp/atox/feature/UserManager.kt added: 11, removed: 9, total 2
@@ -21,8 +21,14 @@ class UserManager @Inject constructor(
}
 
fun verifyExists(publicKey: PublicKey) = launch {
val name = tox.getName().await()
val statusMessage = tox.getStatusMessage().await()
val user = User(publicKey.string(), name, statusMessage)
 
if (!userRepository.exists(publicKey.string())) {
userRepository.add(User(publicKey.string()))
userRepository.add(user)
} else {
userRepository.update(user)
}
}
 
 
atox/src/main/java/ltd/evilcorp/atox/tox/Tox.kt added: 11, removed: 9, total 2
@@ -16,7 +16,6 @@ private const val TAG = "Tox"
@Singleton
class Tox @Inject constructor(
private val contactRepository: ContactRepository,
private val userRepository: UserRepository,
private val saveManager: SaveManager
) : CoroutineScope by GlobalScope + newSingleThreadContext("Tox") {
val toxId: ToxID by lazy { tox.getToxId() }
@@ -34,10 +33,6 @@ class Tox @Inject constructor(
 
tox = ToxWrapper(eventListener, saveOption)
 
fun loadSelf() = launch {
userRepository.update(User(publicKey.string(), tox.getName(), tox.getStatusMessage()))
}
 
fun loadContacts() = launch {
contactRepository.resetTransientData()
 
@@ -61,7 +56,6 @@ class Tox @Inject constructor(
}
 
save()
loadSelf()
loadContacts()
iterateForever()
}
@@ -96,11 +90,13 @@ class Tox @Inject constructor(
tox.stopFileTransfer(publicKey, fileNumber)
}
 
fun getName() = async { tox.getName() }
fun setName(name: String) = launch {
tox.setName(name)
save()
}
 
fun getStatusMessage() = async { tox.getStatusMessage() }
fun setStatusMessage(statusMessage: String) = launch {
tox.setStatusMessage(statusMessage)
save()