mirror of
https://github.com/anyproto/anytype-kotlin.git
synced 2025-06-08 05:47:05 +09:00
DROID-2773 Tech | Debug, implement account select trace (#1793)
This commit is contained in:
parent
f17d256367
commit
ee565a57f0
12 changed files with 131 additions and 14 deletions
|
@ -1057,4 +1057,8 @@ class BlockMiddleware(
|
|||
override suspend fun dataViewSetActiveView(command: Command.DataViewSetActiveView): Payload {
|
||||
return middleware.dataViewSetActiveView(command)
|
||||
}
|
||||
|
||||
override suspend fun debugAccountSelectTrace(dir: String): String {
|
||||
return middleware.debugAccountSelectTrace(dir)
|
||||
}
|
||||
}
|
|
@ -2806,6 +2806,15 @@ class Middleware @Inject constructor(
|
|||
logResponseIfDebug(response, time)
|
||||
}
|
||||
|
||||
@Throws(Exception::class)
|
||||
fun debugAccountSelectTrace(dir: String): String {
|
||||
val request = Rpc.Debug.AccountSelectTrace.Request(dir = dir)
|
||||
logRequestIfDebug(request)
|
||||
val (response, time) = measureTimedValue { service.debugAccountSelectTrace(request) }
|
||||
logResponseIfDebug(response, time)
|
||||
return response.path
|
||||
}
|
||||
|
||||
private fun logRequestIfDebug(request: Any) {
|
||||
if (BuildConfig.DEBUG) {
|
||||
logger.logRequest(request).also {
|
||||
|
|
|
@ -599,4 +599,7 @@ interface MiddlewareService {
|
|||
fun chatUnsubscribe(request: Rpc.Chat.Unsubscribe.Request): Rpc.Chat.Unsubscribe.Response
|
||||
|
||||
//endregion
|
||||
|
||||
@Throws(Exception::class)
|
||||
fun debugAccountSelectTrace(request: Rpc.Debug.AccountSelectTrace.Request): Rpc.Debug.AccountSelectTrace.Response
|
||||
}
|
|
@ -2403,4 +2403,17 @@ class MiddlewareServiceImplementation @Inject constructor(
|
|||
return response
|
||||
}
|
||||
}
|
||||
|
||||
override fun debugAccountSelectTrace(request: Rpc.Debug.AccountSelectTrace.Request): Rpc.Debug.AccountSelectTrace.Response {
|
||||
val encoded = Service.debugAccountSelectTrace(
|
||||
Rpc.Debug.AccountSelectTrace.Request.ADAPTER.encode(request)
|
||||
)
|
||||
val response = Rpc.Debug.AccountSelectTrace.Response.ADAPTER.decode(encoded)
|
||||
val error = response.error
|
||||
if (error != null && error.code != Rpc.Debug.AccountSelectTrace.Response.Error.Code.NULL) {
|
||||
throw Exception(error.description)
|
||||
} else {
|
||||
return response
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue