merge
This commit is contained in:
@@ -4,12 +4,15 @@ import android.annotation.SuppressLint
|
||||
import android.content.Context
|
||||
import android.view.View
|
||||
import com.alibaba.android.arouter.facade.annotation.Route
|
||||
import com.mogo.eagle.core.data.chain.ChainLogParam
|
||||
import com.mogo.eagle.core.data.constants.MogoServicePaths
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainLogParam
|
||||
import com.mogo.eagle.core.data.deva.scene.SceneModule
|
||||
import com.mogo.eagle.core.data.deva.scene.SceneTAG
|
||||
import com.mogo.eagle.core.function.api.devatools.IDevaToolsProvider
|
||||
import com.zhjt.mogo_core_function_devatools.badcase.BadCaseManager
|
||||
import com.zhjt.mogo_core_function_devatools.feedback.FeedbackManager
|
||||
import com.zhjt.mogo_core_function_devatools.logcatch.MogoLogCatchManager
|
||||
import com.zhjt.mogo_core_function_devatools.scene.SceneManager.Companion.sceneManager
|
||||
import com.zhjt.mogo_core_function_devatools.trace.TraceManager.Companion.traceManager
|
||||
import record_cache.RecordPanelOuterClass
|
||||
|
||||
@@ -49,6 +52,22 @@ class DevaToolsProvider : IDevaToolsProvider {
|
||||
traceManager.refreshTraceInfo(map)
|
||||
}
|
||||
|
||||
override fun getModuleTAG(): MutableMap<String, SceneModule> {
|
||||
return sceneManager.getModuleLogTAG()
|
||||
}
|
||||
|
||||
override fun updateModuleTAG(moduleTag: MutableMap<String, SceneModule>) {
|
||||
sceneManager.updateModuleTAG(moduleTag)
|
||||
}
|
||||
|
||||
override fun getSceneLogTAG(): MutableMap<String, SceneTAG> {
|
||||
return sceneManager.getSceneLogTAG()
|
||||
}
|
||||
|
||||
override fun updateSceneTAG(sceneTag: MutableMap<String, SceneTAG>) {
|
||||
sceneManager.updateSceneTAG(sceneTag)
|
||||
}
|
||||
|
||||
override fun initBadCase(view: View, onShow: (() -> Unit)?, onHide: (() -> Unit)?) {
|
||||
BadCaseManager.init(view, onShow, onHide)
|
||||
}
|
||||
|
||||
@@ -1,17 +1,127 @@
|
||||
package com.zhjt.mogo_core_function_devatools.scene
|
||||
|
||||
import com.mogo.eagle.core.data.deva.scene.SceneLogTAG
|
||||
import com.mogo.eagle.core.data.deva.scene.SceneModule
|
||||
import com.mogo.eagle.core.data.deva.scene.SceneModuleTAG
|
||||
import com.mogo.eagle.core.data.deva.scene.SceneTAG
|
||||
import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsListenerManager
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.Scene.Companion.scene
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_ADAS_IMPL
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_BUS
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_DEVA
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_HMI
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_NETWORK
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_OBU
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_OLD_ROUTE
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_TAXI
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_V2X
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneLogCache
|
||||
|
||||
//todo 1. SceneLogCache增加模块名称,提供场景需要
|
||||
//todo 2. 对特定场景提供数据, 网约车,调度...
|
||||
|
||||
//1. SceneLogCache增加模块名称,提供场景需要
|
||||
//2. 对特定场景提供数据, 网约车,调度...
|
||||
class SceneManager {
|
||||
|
||||
companion object {
|
||||
|
||||
private const val ADAS = "ADAS"
|
||||
private const val DEVA = "DEVA"
|
||||
private const val HMI = "HMI"
|
||||
private const val OBU = "OBU"
|
||||
private const val V2X = "V2X"
|
||||
private const val ROUTE = "ROUTE"
|
||||
private const val NET = "NET"
|
||||
private const val BUS = "BUS"
|
||||
private const val TAXI = "TAXI"
|
||||
|
||||
val sceneManager: SceneManager by lazy(LazyThreadSafetyMode.SYNCHRONIZED) {
|
||||
SceneManager()
|
||||
}
|
||||
}
|
||||
|
||||
fun init(){
|
||||
private var sceneCache: MutableMap<String, SceneLogCache> = scene.getSceneCache()
|
||||
private var sceneModuleTAG: SceneModuleTAG = SceneModuleTAG(mutableMapOf())
|
||||
private var sceneLogTAG: SceneLogTAG = SceneLogTAG(mutableMapOf())
|
||||
|
||||
fun init() {
|
||||
//过滤所需条件
|
||||
sceneModuleTAG.map[ADAS] = SceneModule(true, M_ADAS_IMPL)
|
||||
sceneModuleTAG.map[DEVA] = SceneModule(true, M_DEVA)
|
||||
sceneModuleTAG.map[HMI] = SceneModule(true, M_HMI)
|
||||
sceneModuleTAG.map[OBU] = SceneModule(false, M_OBU)
|
||||
sceneModuleTAG.map[V2X] = SceneModule(true, M_V2X)
|
||||
sceneModuleTAG.map[ROUTE] = SceneModule(true, M_OLD_ROUTE)
|
||||
sceneModuleTAG.map[NET] = SceneModule(true, M_NETWORK)
|
||||
sceneModuleTAG.map[BUS] = SceneModule(false, M_BUS)
|
||||
sceneModuleTAG.map[TAXI] = SceneModule(false, M_TAXI)
|
||||
|
||||
sceneLogTAG.map[TAXI] = SceneTAG(false)
|
||||
sceneLogTAG.map[BUS] = SceneTAG(false)
|
||||
}
|
||||
|
||||
fun getModuleLogTAG(): MutableMap<String, SceneModule> {
|
||||
return sceneModuleTAG.map
|
||||
}
|
||||
|
||||
fun getSceneLogTAG(): MutableMap<String, SceneTAG> {
|
||||
return sceneLogTAG.map
|
||||
}
|
||||
|
||||
fun updateModuleTAG(moduleTag: MutableMap<String, SceneModule>) {
|
||||
moduleTag.iterator().forEach { map ->
|
||||
val name = map.value.name
|
||||
val logger = map.value.log
|
||||
name?.let {
|
||||
val sceneLogCache = sceneCache[it]
|
||||
sceneLogCache?.let { logCache ->
|
||||
logCache.logger = logger
|
||||
sceneCache[it] = logCache
|
||||
}
|
||||
}
|
||||
}
|
||||
scene.updateSceneCache(sceneCache)
|
||||
}
|
||||
|
||||
fun updateSceneTAG(sceneTag: MutableMap<String, SceneTAG>) {
|
||||
sceneTag.iterator().forEach { map ->
|
||||
realUpdateSceneTAG(map.key, map.value.log)
|
||||
}
|
||||
updateSceneModuleTAG()
|
||||
}
|
||||
|
||||
private fun updateSceneModuleTAG() {
|
||||
sceneModuleTAG.map.iterator().forEach { map ->
|
||||
val sceneModule = map.value
|
||||
val sceneLogCache = sceneCache[sceneModule.name]
|
||||
sceneLogCache?.let {
|
||||
sceneModule.log = it.logger
|
||||
}
|
||||
map.setValue(sceneModule)
|
||||
}
|
||||
//call back
|
||||
CallerDevaToolsListenerManager.invokeDevaToolsModuleLogChanges(sceneModuleTAG.map)
|
||||
}
|
||||
|
||||
private fun realUpdateSceneTAG(name: String, logger: Boolean) {
|
||||
when (name) {
|
||||
TAXI -> {
|
||||
sceneCache[M_TAXI]?.logger = logger
|
||||
sceneCache[M_NETWORK]?.logger = logger
|
||||
sceneCache[M_ADAS_IMPL]?.logger = logger
|
||||
sceneCache[M_HMI]?.logger = logger
|
||||
sceneCache[M_DEVA]?.logger = logger
|
||||
sceneCache[M_OLD_ROUTE]?.logger = logger
|
||||
scene.updateSceneCache(sceneCache)
|
||||
}
|
||||
BUS -> {
|
||||
sceneCache[M_BUS]?.logger = logger
|
||||
sceneCache[M_NETWORK]?.logger = logger
|
||||
sceneCache[M_ADAS_IMPL]?.logger = logger
|
||||
sceneCache[M_HMI]?.logger = logger
|
||||
sceneCache[M_DEVA]?.logger = logger
|
||||
sceneCache[M_OLD_ROUTE]?.logger = logger
|
||||
scene.updateSceneCache(sceneCache)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -2,8 +2,8 @@ package com.zhjt.mogo_core_function_devatools.trace
|
||||
|
||||
import android.content.Context
|
||||
import com.mogo.cloud.passport.MoGoAiCloudClientConfig
|
||||
import com.mogo.eagle.core.data.chain.ChainConstant
|
||||
import com.mogo.eagle.core.data.chain.ChainLogParam
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainLogParam
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_DEVA
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
|
||||
import com.mogo.eagle.core.utilcode.util.DeviceUtils
|
||||
|
||||
Reference in New Issue
Block a user