浏览代码

Merge pull request #2251 from nextcloud/chore/noid/roomCleanup

Persistence cleanup
Andy Scherzinger 3 年之前
父节点
当前提交
441c321e6a

+ 9 - 4
app/build.gradle

@@ -344,12 +344,17 @@ task installGitHooks(type: Copy, group: "development") {
     into '../.git/hooks'
     into '../.git/hooks'
 }
 }
 
 
-detekt {
+tasks.named("detekt").configure {
     reports {
     reports {
-        xml {
-            enabled = false
-        }
+        html.required.set(true)
+        txt.required.set(true)
+        xml.required.set(false)
+        sarif.required.set(false)
+        md.required.set(false)
     }
     }
+}
+
+detekt {
     config = files("../detekt.yml")
     config = files("../detekt.yml")
     input = files("src/")
     input = files("src/")
 }
 }

+ 1 - 1
app/src/androidTest/java/com/nextcloud/talk/activities/MainActivityTest.kt

@@ -18,7 +18,7 @@ class MainActivityTest {
     fun login() {
     fun login() {
         val sut = activityRule.launchActivity(null)
         val sut = activityRule.launchActivity(null)
 
 
-        val user = sut.userManager.createOrUpdateUser(
+        val user = sut.userManager.storeProfile(
             "test",
             "test",
             UserManager.UserAttributes(
             UserManager.UserAttributes(
                 null,
                 null,

+ 0 - 25
app/src/main/java/com/nextcloud/talk/data/user/UsersDao.kt

@@ -33,8 +33,6 @@ import androidx.room.Update
 import com.nextcloud.talk.data.user.model.UserEntity
 import com.nextcloud.talk.data.user.model.UserEntity
 import io.reactivex.Maybe
 import io.reactivex.Maybe
 import io.reactivex.Single
 import io.reactivex.Single
-import java.lang.Boolean.FALSE
-import java.lang.Boolean.TRUE
 
 
 @Dao
 @Dao
 @Suppress("TooManyFunctions")
 @Suppress("TooManyFunctions")
@@ -98,29 +96,6 @@ abstract class UsersDao {
         }
         }
     }
     }
 
 
-    @Transaction
-    open fun markUserForDeletion(id: Long): Boolean {
-        getUserWithId(id).blockingGet()?.let { user ->
-            user.current = FALSE
-            updateUser(user)
-        }
-
-        return setAnyUserAsActive()
-    }
-
-    @Transaction
-    open fun setAnyUserAsActive(): Boolean {
-        val users = getUsers().blockingGet()
-
-        val result = users.firstOrNull()?.let { user ->
-            user.current = TRUE
-            updateUser(user)
-            TRUE
-        } ?: FALSE
-
-        return result
-    }
-
     companion object {
     companion object {
         const val TAG = "UsersDao"
         const val TAG = "UsersDao"
     }
     }

+ 0 - 2
app/src/main/java/com/nextcloud/talk/data/user/UsersRepository.kt

@@ -41,6 +41,4 @@ interface UsersRepository {
     fun insertUser(user: User): Long
     fun insertUser(user: User): Long
     fun setUserAsActiveWithId(id: Long): Single<Boolean>
     fun setUserAsActiveWithId(id: Long): Single<Boolean>
     fun deleteUser(user: User): Int
     fun deleteUser(user: User): Int
-    fun setAnyUserAsActive(): Boolean
-    fun markUserForDeletion(id: Long): Boolean
 }
 }

+ 0 - 8
app/src/main/java/com/nextcloud/talk/data/user/UsersRepositoryImpl.kt

@@ -80,12 +80,4 @@ class UsersRepositoryImpl(private val usersDao: UsersDao) : UsersRepository {
     override fun deleteUser(user: User): Int {
     override fun deleteUser(user: User): Int {
         return usersDao.deleteUser(UserMapper.toEntity(user))
         return usersDao.deleteUser(UserMapper.toEntity(user))
     }
     }
-
-    override fun setAnyUserAsActive(): Boolean {
-        return usersDao.setAnyUserAsActive()
-    }
-
-    override fun markUserForDeletion(id: Long): Boolean {
-        return usersDao.markUserForDeletion(id)
-    }
 }
 }

+ 0 - 1
app/src/main/java/com/nextcloud/talk/jobs/WebsocketConnectionsWorker.java

@@ -26,7 +26,6 @@ import android.text.TextUtils;
 
 
 import com.nextcloud.talk.application.NextcloudTalkApplication;
 import com.nextcloud.talk.application.NextcloudTalkApplication;
 import com.nextcloud.talk.data.user.model.User;
 import com.nextcloud.talk.data.user.model.User;
-import com.nextcloud.talk.models.ExternalSignalingServer;
 import com.nextcloud.talk.users.UserManager;
 import com.nextcloud.talk.users.UserManager;
 import com.nextcloud.talk.webrtc.WebSocketConnectionHelper;
 import com.nextcloud.talk.webrtc.WebSocketConnectionHelper;
 
 

+ 2 - 46
app/src/main/java/com/nextcloud/talk/users/UserManager.kt

@@ -49,10 +49,6 @@ class UserManager internal constructor(private val userRepository: UsersReposito
         return userRepository.deleteUser(userRepository.getUserWithId(internalId).blockingGet())
         return userRepository.deleteUser(userRepository.getUserWithId(internalId).blockingGet())
     }
     }
 
 
-    fun getUserById(userId: String): Maybe<User> {
-        return userRepository.getUserWithUserId(userId)
-    }
-
     fun getUserWithId(id: Long): Maybe<User> {
     fun getUserWithId(id: Long): Maybe<User> {
         return userRepository.getUserWithId(id)
         return userRepository.getUserWithId(id)
     }
     }
@@ -154,9 +150,7 @@ class UserManager internal constructor(private val userRepository: UsersReposito
     }
     }
 
 
     fun storeProfile(username: String?, userAttributes: UserAttributes): Maybe<User> {
     fun storeProfile(username: String?, userAttributes: UserAttributes): Maybe<User> {
-        val userMaybe: Maybe<User> = findUser(null, userAttributes)
-
-        return userMaybe
+        return findUser(userAttributes)
             .map { user: User? ->
             .map { user: User? ->
                 when (user) {
                 when (user) {
                     null -> createUser(
                     null -> createUser(
@@ -190,52 +184,14 @@ class UserManager internal constructor(private val userRepository: UsersReposito
             }
             }
     }
     }
 
 
-    @Deprecated("Only available for migration, use updateExternalSignalingServer or create new methods")
-    fun createOrUpdateUser(
-        username: String?,
-        userAttributes: UserAttributes
-    ): Maybe<User> {
-        val userMaybe: Maybe<User> = findUser(username, userAttributes)
-
-        return userMaybe
-            .map { user: User? ->
-                when (user) {
-                    null -> createUser(
-                        username,
-                        userAttributes
-                    )
-                    else -> {
-                        updateUserData(
-                            user,
-                            userAttributes
-                        )
-                        user
-                    }
-                }
-            }
-            .switchIfEmpty(Maybe.just(createUser(username, userAttributes)))
-            .map { user ->
-                userRepository.insertUser(user)
-            }
-            .flatMap { id ->
-                userRepository.getUserWithId(id)
-            }
-    }
-
-    private fun findUser(username: String?, userAttributes: UserAttributes): Maybe<User> {
+    private fun findUser(userAttributes: UserAttributes): Maybe<User> {
         return if (userAttributes.id != null) {
         return if (userAttributes.id != null) {
             userRepository.getUserWithId(userAttributes.id)
             userRepository.getUserWithId(userAttributes.id)
-        } else if (username != null && userAttributes.serverUrl != null) {
-            userRepository.getUserWithUsernameAndServer(username, userAttributes.serverUrl)
         } else {
         } else {
             Maybe.empty()
             Maybe.empty()
         }
         }
     }
     }
 
 
-    fun getUserWithUsernameAndServer(username: String, server: String): Maybe<User> {
-        return userRepository.getUserWithUsernameAndServer(username, server)
-    }
-
     private fun updateUserData(user: User, userAttributes: UserAttributes) {
     private fun updateUserData(user: User, userAttributes: UserAttributes) {
         user.userId = userAttributes.userId
         user.userId = userAttributes.userId
         user.token = userAttributes.token
         user.token = userAttributes.token

+ 1 - 1
app/src/main/java/com/nextcloud/talk/webrtc/MagicProximitySensor.java

@@ -36,8 +36,8 @@ import android.hardware.Sensor;
 import android.hardware.SensorEvent;
 import android.hardware.SensorEvent;
 import android.hardware.SensorEventListener;
 import android.hardware.SensorEventListener;
 import android.hardware.SensorManager;
 import android.hardware.SensorManager;
-import android.os.Build;
 import android.util.Log;
 import android.util.Log;
+
 import org.webrtc.ThreadUtils;
 import org.webrtc.ThreadUtils;
 
 
 /**
 /**