mirror of
https://github.com/anyproto/anytype-kotlin.git
synced 2025-06-08 05:47:05 +09:00
DROID-1568 App | Tech | Moving calls off main thread when needed (#228)
This commit is contained in:
parent
afdd5bc4f1
commit
fb2a2d4429
29 changed files with 157 additions and 136 deletions
|
@ -1,6 +1,5 @@
|
|||
package com.anytypeio.anytype.middleware.interactor
|
||||
|
||||
import androidx.annotation.WorkerThread
|
||||
import anytype.Rpc
|
||||
import anytype.model.Block
|
||||
import anytype.model.Range
|
||||
|
@ -30,7 +29,7 @@ import com.anytypeio.anytype.core_models.SearchResult
|
|||
import com.anytypeio.anytype.core_models.Struct
|
||||
import com.anytypeio.anytype.core_models.Url
|
||||
import com.anytypeio.anytype.core_models.WidgetLayout
|
||||
import com.anytypeio.anytype.core_utils.ext.isOnMainThread
|
||||
import com.anytypeio.anytype.core_utils.tools.ThreadInfo
|
||||
import com.anytypeio.anytype.middleware.BuildConfig
|
||||
import com.anytypeio.anytype.middleware.auth.toAccountSetup
|
||||
import com.anytypeio.anytype.middleware.const.Constants
|
||||
|
@ -46,14 +45,15 @@ import com.anytypeio.anytype.middleware.mappers.toMiddlewareModel
|
|||
import com.anytypeio.anytype.middleware.mappers.toPayload
|
||||
import com.anytypeio.anytype.middleware.model.CreateWalletResponse
|
||||
import com.anytypeio.anytype.middleware.service.MiddlewareService
|
||||
import javax.inject.Inject
|
||||
import timber.log.Timber
|
||||
|
||||
@WorkerThread
|
||||
class Middleware(
|
||||
class Middleware @Inject constructor(
|
||||
private val service: MiddlewareService,
|
||||
private val factory: MiddlewareFactory,
|
||||
private val logger: MiddlewareProtobufLogger,
|
||||
private val protobufConverter: ProtobufConverterProvider,
|
||||
private val threadInfo: ThreadInfo
|
||||
) {
|
||||
|
||||
@Throws(Exception::class)
|
||||
|
@ -2210,7 +2210,7 @@ class Middleware(
|
|||
|
||||
private fun logRequest(any: Any) {
|
||||
logger.logRequest(any).also {
|
||||
if (BuildConfig.DEBUG && isOnMainThread()) {
|
||||
if (BuildConfig.DEBUG && threadInfo.isOnMainThread()) {
|
||||
Timber.w("Main thread is used for operation: ${any::class.qualifiedName}")
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
package com.anytypeio.anytype.middleware.service
|
||||
|
||||
import androidx.annotation.WorkerThread
|
||||
import anytype.Rpc
|
||||
import com.anytypeio.anytype.core_models.exceptions.AccountIsDeletedException
|
||||
import com.anytypeio.anytype.core_models.exceptions.CreateAccountException
|
||||
|
@ -13,7 +12,6 @@ import com.anytypeio.anytype.data.auth.exception.UndoRedoExhaustedException
|
|||
import javax.inject.Inject
|
||||
import service.Service
|
||||
|
||||
@WorkerThread
|
||||
class MiddlewareServiceImplementation @Inject constructor(
|
||||
featureToggles: FeatureToggles
|
||||
) : MiddlewareService {
|
||||
|
|
|
@ -12,6 +12,8 @@ import com.anytypeio.anytype.middleware.interactor.Middleware
|
|||
import com.anytypeio.anytype.middleware.interactor.MiddlewareFactory
|
||||
import com.anytypeio.anytype.middleware.service.MiddlewareService
|
||||
import com.anytypeio.anytype.test_utils.MockDataFactory
|
||||
import kotlin.test.assertEquals
|
||||
import kotlin.test.assertTrue
|
||||
import org.junit.Before
|
||||
import org.junit.Test
|
||||
import org.mockito.Mock
|
||||
|
@ -23,8 +25,6 @@ import org.mockito.kotlin.stub
|
|||
import org.mockito.kotlin.times
|
||||
import org.mockito.kotlin.verify
|
||||
import org.mockito.kotlin.verifyNoMoreInteractions
|
||||
import kotlin.test.assertEquals
|
||||
import kotlin.test.assertTrue
|
||||
|
||||
typealias CBlock = com.anytypeio.anytype.core_models.Block
|
||||
typealias CFields = com.anytypeio.anytype.core_models.Block.Fields
|
||||
|
@ -44,7 +44,13 @@ class MiddlewareTest {
|
|||
@Before
|
||||
fun setup() {
|
||||
MockitoAnnotations.openMocks(this)
|
||||
middleware = Middleware(service, factory, mock(), mock())
|
||||
middleware = Middleware(
|
||||
service = service,
|
||||
factory = factory,
|
||||
logger = mock(),
|
||||
protobufConverter = mock(),
|
||||
threadInfo = mock()
|
||||
)
|
||||
}
|
||||
|
||||
@Test
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue