diff --git a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/road/ILineUploadApi.kt b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/road/ILineUploadApi.kt index aed87f69b2..efe9aa66bf 100644 --- a/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/road/ILineUploadApi.kt +++ b/core/function-impl/mogo-core-function-biz/src/main/java/com/mogo/eagle/function/biz/v2x/road/ILineUploadApi.kt @@ -10,7 +10,7 @@ import retrofit2.http.POST interface ILineUploadApi { @Headers("Content-type:application/json;charset=UTF-8" ) - @POST( "" ) + @POST( "/yycp-data-center-service/carTrack/receiveCarTrack/" ) fun uploadLineId(@Body lineId: LineUploadData): Observable } \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/adapter/MoGoAdasListenerImpl.kt b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/adapter/MoGoAdasListenerImpl.kt index 8247a0ea90..e54d166cf0 100644 --- a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/adapter/MoGoAdasListenerImpl.kt +++ b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/adapter/MoGoAdasListenerImpl.kt @@ -53,20 +53,18 @@ import com.mogo.eagle.core.function.call.obu.CallerObuMapMathListenerManager import com.mogo.eagle.core.function.call.obu.CallerObuWarningRsiListenerManager import com.mogo.eagle.core.function.call.obu.CallerObuWarningRsmListenerManager import com.mogo.eagle.core.function.call.obu.CallerObuWarningSpatListenerManager -import com.mogo.eagle.core.function.call.obucombine.CallerObuDcCombineListenerManager import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.Logger import com.mogo.support.obu.ObuScene import com.zhidao.support.adas.high.AdasManager import com.zhidao.support.adas.high.OnAdasListener -import com.zhjt.mogo.adas.data.bean.AutopilotStatistics import com.zhidao.support.adas.high.common.ProtocolStatus +import com.zhjt.mogo.adas.data.bean.AutopilotStatistics import com.zhjt.service.chain.ChainLog import com.zhjt.service.chain.TracingConstants.Endpoint.Companion.PAD import function_state_management.FunctionStates import mogo.telematics.pad.MessagePad import mogo.telematics.pad.MessagePad.TrackedObject -import mogo.v2x.ObuWarningEvent import mogo_msg.MogoReportMsg import perception.TrafficLightOuterClass import planning.RoboSweeperTaskIndexOuterClass @@ -89,12 +87,12 @@ class MoGoAdasListenerImpl : OnAdasListener { //车前引导线 @ChainLog( - linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_TRAJECTORY, - linkCode = CHAIN_LINK_ADAS, - endpoint = PAD, - nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_TRAJECTORY, - paramIndexes = [0, 1], - clientPkFileName = "sn" + linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_TRAJECTORY, + linkCode = CHAIN_LINK_ADAS, + endpoint = PAD, + nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_TRAJECTORY, + paramIndexes = [0, 1], + clientPkFileName = "sn" ) override fun onTrajectory(header: MessagePad.Header, trajectory: MessagePad.Trajectory?) { if (HdMapBuildConfig.isMapLoaded) { @@ -106,16 +104,16 @@ class MoGoAdasListenerImpl : OnAdasListener { //感知物体 @ChainLog( - linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_DATA_TRACKED, - linkCode = CHAIN_LINK_ADAS, - endpoint = PAD, - nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_RECT_DATA, - paramIndexes = [0, 1], - clientPkFileName = "sn" + linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_DATA_TRACKED, + linkCode = CHAIN_LINK_ADAS, + endpoint = PAD, + nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_RECT_DATA, + paramIndexes = [0, 1], + clientPkFileName = "sn" ) override fun onTrackedObjects( - header: MessagePad.Header, - trackedObjects: MessagePad.TrackedObjects + header: MessagePad.Header, + trackedObjects: MessagePad.TrackedObjects ) { if (HdMapBuildConfig.isMapLoaded) { invokeAutopilotIdentifyDataUpdate(trackedObjects.objsList as List?) @@ -124,12 +122,12 @@ class MoGoAdasListenerImpl : OnAdasListener { //自车定位信息 @ChainLog( - linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_GNSSINFO, - linkCode = CHAIN_LINK_ADAS, - endpoint = PAD, - nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_CAR_STATE, - paramIndexes = [0, 1], - clientPkFileName = "sn" + linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_GNSSINFO, + linkCode = CHAIN_LINK_ADAS, + endpoint = PAD, + nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_CAR_STATE, + paramIndexes = [0, 1], + clientPkFileName = "sn" ) override fun onGnssInfo(header: MessagePad.Header, gnssInfo: MessagePad.GnssInfo) { CallerChassisGnssListenerManager.invokeChassisGnssListener(gnssInfo) @@ -140,9 +138,9 @@ class MoGoAdasListenerImpl : OnAdasListener { //CallerMapUIServiceManager.getMapUIController()?.syncLocation2Map(gnssInfo) // 同步更新经纬度和系统时间至 AutoPilotStatusListener CallerAutoPilotStatusListenerManager.updateAutoPilotLatLon( - gnssInfo.satelliteTime, - gnssInfo.longitude, - gnssInfo.latitude + gnssInfo.satelliteTime, + gnssInfo.longitude, + gnssInfo.latitude ) } } @@ -158,14 +156,17 @@ class MoGoAdasListenerImpl : OnAdasListener { * @param vehicleState 数据 */ @ChainLog( - linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_VEHICLE, - linkCode = CHAIN_LINK_ADAS, - endpoint = PAD, - nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_VEHICLE, - paramIndexes = [0, 1], - clientPkFileName = "sn" + linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_VEHICLE, + linkCode = CHAIN_LINK_ADAS, + endpoint = PAD, + nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_VEHICLE, + paramIndexes = [0, 1], + clientPkFileName = "sn" ) - override fun onVehicleState(header: MessagePad.Header, vehicleState: VehicleStateOuterClass.VehicleState?) { + override fun onVehicleState( + header: MessagePad.Header, + vehicleState: VehicleStateOuterClass.VehicleState? + ) { if (vehicleState != null) { //转向灯数据 CallerChassisLamplightListenerManager.invokeAutopilotLightSwitchData(vehicleState.light) @@ -191,9 +192,12 @@ class MoGoAdasListenerImpl : OnAdasListener { //清扫车(福田)清扫控制系统状态 vehicleState.sweeperFutianCleanSystemState?.also { sweeperState -> val bytes: ByteArray = sweeperState.toByteArray() - val cleanSystemState: ChassisStatesOuterClass.SweeperFuTianTaskSystemStates? = ChassisStatesOuterClass.SweeperFuTianTaskSystemStates.parseFrom(bytes) + val cleanSystemState: ChassisStatesOuterClass.SweeperFuTianTaskSystemStates? = + ChassisStatesOuterClass.SweeperFuTianTaskSystemStates.parseFrom(bytes) cleanSystemState?.let { - CallerSweeperFutianCleanSystemListenerManager.invokeSweeperFutianCleanSystemState(it) + CallerSweeperFutianCleanSystemListenerManager.invokeSweeperFutianCleanSystemState( + it + ) } } //金旅M1 @@ -214,14 +218,17 @@ class MoGoAdasListenerImpl : OnAdasListener { * @param vehicleState 数据 */ @ChainLog( - linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_VEHICLE, - linkCode = CHAIN_LINK_ADAS, - endpoint = PAD, - nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_VEHICLE, - paramIndexes = [0, 1], - clientPkFileName = "sn" + linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_VEHICLE, + linkCode = CHAIN_LINK_ADAS, + endpoint = PAD, + nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_VEHICLE, + paramIndexes = [0, 1], + clientPkFileName = "sn" ) - override fun onChassisStates(header: MessagePad.Header, chassisStates: ChassisStatesOuterClass.ChassisStates?) { + override fun onChassisStates( + header: MessagePad.Header, + chassisStates: ChassisStatesOuterClass.ChassisStates? + ) { if (chassisStates != null) { chassisStates.bcmSystemStates?.let { bcmSystemStates -> bcmSystemStates.turnLightState?.let { @@ -260,7 +267,9 @@ class MoGoAdasListenerImpl : OnAdasListener { chassisStates.taskSystemStates?.let { taskSystemStates -> taskSystemStates.sweeperFutianTaskSystemStates?.let { //清扫车(福田)清扫控制系统状态 - CallerSweeperFutianCleanSystemListenerManager.invokeSweeperFutianCleanSystemState(it) + CallerSweeperFutianCleanSystemListenerManager.invokeSweeperFutianCleanSystemState( + it + ) } } } else { @@ -270,16 +279,16 @@ class MoGoAdasListenerImpl : OnAdasListener { //自动驾驶状态 @ChainLog( - linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_AUTOPILOT, - linkCode = CHAIN_LINK_ADAS, - endpoint = PAD, - nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_STATUS, - paramIndexes = [0, 1], - clientPkFileName = "sn" + linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_AUTOPILOT, + linkCode = CHAIN_LINK_ADAS, + endpoint = PAD, + nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_STATUS, + paramIndexes = [0, 1], + clientPkFileName = "sn" ) override fun onAutopilotState( - header: MessagePad.Header, - autopilotState: MessagePad.AutopilotState? + header: MessagePad.Header, + autopilotState: MessagePad.AutopilotState? ) { if (autopilotState != null) { //工控机模拟时间 @@ -303,7 +312,10 @@ class MoGoAdasListenerImpl : OnAdasListener { AdasManager.getInstance().carConfig?.let { autopilotStatusInfo.dockVersion = it.dockVersion } - CallerLogger.d("Upgrade", "origin = ${autopilotStatusInfo.connectStatus} -----now = ${AppConfigInfo.isConnectAutopilot} ") + CallerLogger.d( + "Upgrade", + "origin = ${autopilotStatusInfo.connectStatus} -----now = ${AppConfigInfo.isConnectAutopilot} " + ) AppConfigInfo.isConnectAutopilot = autopilotStatusInfo.connectStatus AppConfigInfo.connectStatusDescribe = autopilotStatusInfo.connectStatusDescribe invokeAutoPilotStatus() @@ -313,16 +325,16 @@ class MoGoAdasListenerImpl : OnAdasListener { //监控 @ChainLog( - linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_AUTOPILOT, - linkCode = CHAIN_LINK_ADAS, - endpoint = PAD, - nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_GUARDIAN, - paramIndexes = [0, 1], - clientPkFileName = "sn" + linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_AUTOPILOT, + linkCode = CHAIN_LINK_ADAS, + endpoint = PAD, + nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_GUARDIAN, + paramIndexes = [0, 1], + clientPkFileName = "sn" ) override fun onReportMessage( - header: MessagePad.Header, - mogoReportMessage: MogoReportMsg.MogoReportMessage? + header: MessagePad.Header, + mogoReportMessage: MogoReportMsg.MogoReportMessage? ) { if (HdMapBuildConfig.isMapLoaded) { invokeAutopilotGuardian(mogoReportMessage) @@ -331,28 +343,28 @@ class MoGoAdasListenerImpl : OnAdasListener { //感知红绿灯 @ChainLog( - linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_TRAFFIC_LIGHT, - linkCode = CHAIN_LINK_ADAS, - endpoint = PAD, - nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_TRAFFIC_LIGHT, - paramIndexes = [0, 1], - clientPkFileName = "sn" + linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_TRAFFIC_LIGHT, + linkCode = CHAIN_LINK_ADAS, + endpoint = PAD, + nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_TRAFFIC_LIGHT, + paramIndexes = [0, 1], + clientPkFileName = "sn" ) override fun onPerceptionTrafficLight( - header: MessagePad.Header?, - trafficLights: TrafficLightOuterClass.TrafficLights? + header: MessagePad.Header?, + trafficLights: TrafficLightOuterClass.TrafficLights? ) { if (trafficLights != null) { CallerAutopilotIdentifyListenerManager.invokeAutopilotPerceptionTrafficLight( - trafficLights + trafficLights ) } } //他车轨迹预测 override fun onPredictionObstacleTrajectory( - header: MessagePad.Header?, - predictionObjects: Prediction.mPredictionObjects? + header: MessagePad.Header?, + predictionObjects: Prediction.mPredictionObjects? ) { //他车轨迹预测 } @@ -364,16 +376,16 @@ class MoGoAdasListenerImpl : OnAdasListener { //planning障碍物 @ChainLog( - linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_PLANNING_OBJECTS, - linkCode = CHAIN_LINK_ADAS, - endpoint = PAD, - nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_PLANNING_OBJECTS, - paramIndexes = [0, 1], - clientPkFileName = "sn" + linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_PLANNING_OBJECTS, + linkCode = CHAIN_LINK_ADAS, + endpoint = PAD, + nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_PLANNING_OBJECTS, + paramIndexes = [0, 1], + clientPkFileName = "sn" ) override fun onPlanningObjects( - header: MessagePad.Header?, - planningObjects: MessagePad.PlanningObjects + header: MessagePad.Header?, + planningObjects: MessagePad.PlanningObjects ) { if (HdMapBuildConfig.isMapLoaded) { invokeAutopilotIdentifyPlanningObj(planningObjects.objsList as List) @@ -382,24 +394,24 @@ class MoGoAdasListenerImpl : OnAdasListener { // 自动驾驶设备基础信息请求 override fun onBasicInfoReq( - header: MessagePad.Header, - basicInfoReq: MessagePad.BasicInfoReq? + header: MessagePad.Header, + basicInfoReq: MessagePad.BasicInfoReq? ) { invokeAutopilotSNRequest() } //工控机基础配置信息 @ChainLog( - linkChainLog = CHAIN_LINK_LOG_CONNECT_STATUS, - linkCode = CHAIN_LINK_ADAS, - endpoint = PAD, - nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_CAR_CONFIG, - paramIndexes = [0, 1], - clientPkFileName = "sn" + linkChainLog = CHAIN_LINK_LOG_CONNECT_STATUS, + linkCode = CHAIN_LINK_ADAS, + endpoint = PAD, + nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_CAR_CONFIG, + paramIndexes = [0, 1], + clientPkFileName = "sn" ) override fun onCarConfigResp( - header: MessagePad.Header, - carConfigResp: MessagePad.CarConfigResp? + header: MessagePad.Header, + carConfigResp: MessagePad.CarConfigResp? ) { if (carConfigResp != null) { AppConfigInfo.dockerVersion = carConfigResp.dockVersion @@ -413,34 +425,32 @@ class MoGoAdasListenerImpl : OnAdasListener { //全局路径规划 @ChainLog( - linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_AUTOPILOT, - linkCode = CHAIN_LINK_ADAS, - endpoint = PAD, - nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_ROUTE, - paramIndexes = [0, 1], - clientPkFileName = "sn" + linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_AUTOPILOT, + linkCode = CHAIN_LINK_ADAS, + endpoint = PAD, + nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_ROUTE, + paramIndexes = [0, 1], + clientPkFileName = "sn" ) override fun onGlobalPathResp( - header: MessagePad.Header, - globalPathResp: MessagePad.GlobalPathResp? + header: MessagePad.Header, + globalPathResp: MessagePad.GlobalPathResp? ) { - if (HdMapBuildConfig.isMapLoaded) { - invokeAutopilotRotting(globalPathResp) - } + invokeAutopilotRotting(globalPathResp) } //数据采集,badCase @ChainLog( - linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_AUTOPILOT, - linkCode = CHAIN_LINK_ADAS, - endpoint = PAD, - nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_RECORD, - paramIndexes = [0, 1], - clientPkFileName = "sn" + linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_AUTOPILOT, + linkCode = CHAIN_LINK_ADAS, + endpoint = PAD, + nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_RECORD, + paramIndexes = [0, 1], + clientPkFileName = "sn" ) override fun onRecordResult( - header: MessagePad.Header, - recordPanel: RecordPanelOuterClass.RecordPanel? + header: MessagePad.Header, + recordPanel: RecordPanelOuterClass.RecordPanel? ) { if (recordPanel != null) { invokeAutopilotRecordResult(recordPanel) @@ -462,34 +472,32 @@ class MoGoAdasListenerImpl : OnAdasListener { //到站回调 @ChainLog( - linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_AUTOPILOT, - linkCode = CHAIN_LINK_ADAS, - endpoint = PAD, - nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_ARRIVE, - paramIndexes = [0, 1], - clientPkFileName = "sn" + linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_AUTOPILOT, + linkCode = CHAIN_LINK_ADAS, + endpoint = PAD, + nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_ARRIVE, + paramIndexes = [0, 1], + clientPkFileName = "sn" ) override fun onArrivalNotification( - header: MessagePad.Header, - arrivalNotification: MessagePad.ArrivalNotification? + header: MessagePad.Header, + arrivalNotification: MessagePad.ArrivalNotification? ) { - if (HdMapBuildConfig.isMapLoaded) { - invokeArriveAtStation(arrivalNotification) - } + invokeArriveAtStation(arrivalNotification) } //状态查询应答 @ChainLog( - linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_AUTOPILOT, - linkCode = CHAIN_LINK_ADAS, - endpoint = PAD, - nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_STATUS_QUERY_RESP, - paramIndexes = [0, 1], - clientPkFileName = "sn" + linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_AUTOPILOT, + linkCode = CHAIN_LINK_ADAS, + endpoint = PAD, + nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_STATUS_QUERY_RESP, + paramIndexes = [0, 1], + clientPkFileName = "sn" ) override fun onStatusQueryResp( - header: MessagePad.Header?, - statusInfo: SystemStatusInfo.StatusInfo? + header: MessagePad.Header?, + statusInfo: SystemStatusInfo.StatusInfo? ) { invokeAutopilotStatusRespByQuery(statusInfo) } @@ -498,8 +506,8 @@ class MoGoAdasListenerImpl : OnAdasListener { * 数据采集配置应答 */ override fun onRecordDataConfigResp( - header: MessagePad.Header?, - config: MessagePad.RecordDataConfig? + header: MessagePad.Header?, + config: MessagePad.RecordDataConfig? ) { if (config != null) { invokeAutopilotRecordConfig(config) @@ -510,16 +518,16 @@ class MoGoAdasListenerImpl : OnAdasListener { * planning决策状态, 透传 */ @ChainLog( - linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_PLANNING_ACTIONS, - linkCode = CHAIN_LINK_ADAS, - endpoint = PAD, - nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_PLANNING_ACTIONS, - paramIndexes = [0, 1], - clientPkFileName = "sn" + linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_PLANNING_ACTIONS, + linkCode = CHAIN_LINK_ADAS, + endpoint = PAD, + nodeAliasCode = CHAIN_ALIAS_CODE_ADAS_MESSAGE_PLANNING_ACTIONS, + paramIndexes = [0, 1], + clientPkFileName = "sn" ) override fun onPlanningActionMsg( - header: MessagePad.Header?, - planningActionMsg: MessagePad.PlanningActionMsg? + header: MessagePad.Header?, + planningActionMsg: MessagePad.PlanningActionMsg? ) { planningActionMsg?.let { invokePNCActions(it) @@ -532,16 +540,23 @@ class MoGoAdasListenerImpl : OnAdasListener { * @param header 头 * @param spatWarningData 数据 */ - override fun onObuSpatWarning(header: MessagePad.Header?, spatWarningData: ObuScene.SpatWarningData?) { + override fun onObuSpatWarning( + header: MessagePad.Header?, + spatWarningData: ObuScene.SpatWarningData? + ) { CallerObuWarningSpatListenerManager.invokeObuSpatWarning(spatWarningData!!) } + /** * OBU RSI预警信息 * * @param header 头 * @param rsiWarningData 数据 */ - override fun onObuRsiWarning(header: MessagePad.Header?, rsiWarningData: ObuScene.RsiWarningData?) { + override fun onObuRsiWarning( + header: MessagePad.Header?, + rsiWarningData: ObuScene.RsiWarningData? + ) { CallerObuWarningRsiListenerManager.invokeObuRsiWarning(rsiWarningData!!) } @@ -551,9 +566,13 @@ class MoGoAdasListenerImpl : OnAdasListener { * @param header 头 * @param rsmWarningData 数据 */ - override fun onObuRsmWarning(header: MessagePad.Header?, rsmWarningData: ObuScene.RsmWarningData?) { + override fun onObuRsmWarning( + header: MessagePad.Header?, + rsmWarningData: ObuScene.RsmWarningData? + ) { CallerObuWarningRsmListenerManager.invokeObuRsmWarning(rsmWarningData!!) } + /** * OBU 地图匹配结果 * @@ -570,7 +589,10 @@ class MoGoAdasListenerImpl : OnAdasListener { * @param header 头 * @param functionStates 头 */ - override fun onFunctionStates(header: MessagePad.Header?, functionStates: FunctionStates.FSMFunctionStates?) { + override fun onFunctionStates( + header: MessagePad.Header?, + functionStates: FunctionStates.FSMFunctionStates? + ) { } @@ -580,7 +602,10 @@ class MoGoAdasListenerImpl : OnAdasListener { * @param header 头 * @param roboSweeperTaskIndex 数据 */ - override fun onSweeperTaskIndexData(header: MessagePad.Header?, roboSweeperTaskIndex: RoboSweeperTaskIndexOuterClass.RoboSweeperTaskIndex?) { + override fun onSweeperTaskIndexData( + header: MessagePad.Header?, + roboSweeperTaskIndex: RoboSweeperTaskIndexOuterClass.RoboSweeperTaskIndex? + ) { } @@ -590,7 +615,10 @@ class MoGoAdasListenerImpl : OnAdasListener { * @param header 头 * @param bagManager 数据 */ - override fun onBagManagerCmd(header: MessagePad.Header?, bagManager: BagManagerOuterClass.BagManager?) { + override fun onBagManagerCmd( + header: MessagePad.Header?, + bagManager: BagManagerOuterClass.BagManager? + ) { } /** diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/identify/TrackManager.java b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/identify/TrackManager.java index 2e33808a9b..b25656888e 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/identify/TrackManager.java +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/identify/TrackManager.java @@ -2,6 +2,8 @@ package com.mogo.eagle.core.function.business.identify; import android.annotation.SuppressLint; import android.os.Build; +import android.util.ArraySet; +import android.util.Log; import androidx.annotation.RequiresApi; @@ -50,7 +52,7 @@ public class TrackManager { * 记录每次实际绘制的交通元素UUID */ @SuppressLint("NewApi") - private final ConcurrentHashMap trafficDataUuid = new ConcurrentHashMap<>(); + private final ArraySet trafficDataUuid = new ArraySet<>(); /** * 过滤后的数据集合 @@ -71,9 +73,10 @@ public class TrackManager { * 过滤后的数据集合 */ @SuppressLint("NewApi") - public synchronized HashMap filterTrafficData(List trafficData) { + public HashMap filterTrafficData(List trafficData) { //清空上次返回数据,做到缓存复用 mFilterTrafficData.clear(); + long cost = System.currentTimeMillis(); //进入过滤机制的感知物体,首先从缓存队列中进行查找 uuid for (MessagePad.TrackedObject data : trafficData) { if (TrackerSourceColorHelper.INSTANCE.filterData(data)) { @@ -121,35 +124,34 @@ public class TrackManager { mFilterTrafficData.put(uuid, trackObj.getCache()); cellIdCaches.forcePut(uuid, trackObj.getCellIdPos()); mMarkersCaches.put(uuid, trackObj); - trafficDataUuid.put(uuid, System.currentTimeMillis()); + trafficDataUuid.add(uuid); + Log.i("costTime","" + (System.currentTimeMillis() - cost)); } return mFilterTrafficData; } - @RequiresApi(api = Build.VERSION_CODES.N) public void clearCache(List resultList) { //过滤现有元素 for (MessagePad.TrackedObject data : resultList) { String uuid = "" + data.getUuid(); - if (TrackerSourceColorHelper.INSTANCE.filterData(data)) { - continue; - } - if (trafficDataUuid.size() > 0) { + if (trafficDataUuid.size() > 0 && trafficDataUuid.contains(uuid)) { + if (TrackerSourceColorHelper.INSTANCE.filterData(data)) { + continue; + } trafficDataUuid.remove(uuid); } } //清除缓存,删除marker - Iterator> it = trafficDataUuid.entrySet().iterator(); + Iterator it = trafficDataUuid.iterator(); while (it.hasNext()) { - Map.Entry next = it.next(); - String key = next.getKey(); + String key = it.next(); it.remove(); removeKey(key); } } - public synchronized void removeKey(String key) { + public void removeKey(String key) { cellIdCaches.remove(key); mMarkersCaches.remove(key); WarningHelper.INSTANCE.remove(key); @@ -157,15 +159,12 @@ public class TrackManager { .removeMarker(key); } - @SuppressLint("NewApi") public void clearAll() { MogoMarkerManager.getInstance(AbsMogoApplication.getApp()).clearAllMarker(); cellIdCaches.clear(); trafficDataUuid.clear(); WarningHelper.INSTANCE.clear(); - mMarkersCaches.forEach((uuid, trackObj) -> { - trackObj.clear(); - }); + mMarkersCaches.forEach((uuid, trackObj) -> trackObj.clear()); mMarkersCaches.clear(); } diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/routeoverlay/MogoRouteOverlayManager.java b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/routeoverlay/MogoRouteOverlayManager.java index eeb872d6d3..a95b51813f 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/routeoverlay/MogoRouteOverlayManager.java +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/business/routeoverlay/MogoRouteOverlayManager.java @@ -5,6 +5,7 @@ import androidx.annotation.Nullable; import com.mogo.eagle.core.data.autopilot.AutopilotStatusInfo; import com.mogo.eagle.core.data.config.FunctionBuildConfig; +import com.mogo.eagle.core.data.config.HdMapBuildConfig; import com.mogo.eagle.core.data.map.MogoLocation; import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener; import com.mogo.eagle.core.function.api.autopilot.IMoGoChassisLocationGCJ02Listener; @@ -103,6 +104,9 @@ public class MogoRouteOverlayManager implements if (arrivalNotification == null) { return; } + if(!HdMapBuildConfig.isMapLoaded){ + return; + } if (!isArriveAtStation.get()) { isArriveAtStation.set(true); } diff --git a/core/function-impl/mogo-core-function-startup/src/main/java/com/mogo/eagle/core/function/startup/stageone/HttpDnsStartUp.kt b/core/function-impl/mogo-core-function-startup/src/main/java/com/mogo/eagle/core/function/startup/stageone/HttpDnsStartUp.kt index 80c1c7fe10..0bea51ed0d 100644 --- a/core/function-impl/mogo-core-function-startup/src/main/java/com/mogo/eagle/core/function/startup/stageone/HttpDnsStartUp.kt +++ b/core/function-impl/mogo-core-function-startup/src/main/java/com/mogo/eagle/core/function/startup/stageone/HttpDnsStartUp.kt @@ -4,12 +4,11 @@ import android.content.Context import com.mogo.aicloud.services.locationinfo.MogoLocationInfoServices import com.mogo.aicloud.services.socket.IMogoLifecycleListener import com.mogo.aicloud.services.socket.MogoAiCloudSocketManager -import com.mogo.cloud.httpdns.MogoHttpDnsConfig -import com.mogo.cloud.httpdns.bean.HttpDnsSimpleLocation -import com.mogo.cloud.httpdns.listener.IHttpDnsCurrentLocation import com.mogo.cloud.passport.IMoGoTokenCallback import com.mogo.cloud.passport.MoGoAiCloudClient import com.mogo.cloud.passport.MoGoAiCloudClientConfig +import com.mogo.cloud.passport.location.ICurrentLocation +import com.mogo.cloud.passport.location.SimpleLocation import com.mogo.commons.AbsMogoApplication import com.mogo.commons.constants.SharedPrefsConstants import com.mogo.commons.debug.DebugConfig @@ -85,10 +84,10 @@ class HttpDnsStartUp : AndroidStartup() { private fun preparePassportEnvironment() { // 设置网络环境:HTTP_DNS_ENV_QA、HTTP_DNS_ENV_RELEASE、HTTP_DNS_ENV_DEV when (DebugConfig.getNetMode()) { - DebugConfig.NET_MODE_DEV -> clientConfig.netMode = MogoHttpDnsConfig.HTTP_DNS_ENV_DEV - DebugConfig.NET_MODE_QA -> clientConfig.netMode = MogoHttpDnsConfig.HTTP_DNS_ENV_QA - DebugConfig.NET_MODE_DEMO -> clientConfig.netMode = MogoHttpDnsConfig.HTTP_DNS_ENV_DEMO - else -> clientConfig.netMode = MogoHttpDnsConfig.HTTP_DNS_ENV_RELEASE + DebugConfig.NET_MODE_DEV -> clientConfig.netMode = MoGoAiCloudClientConfig.HTTP_DNS_ENV_DEV + DebugConfig.NET_MODE_QA -> clientConfig.netMode = MoGoAiCloudClientConfig.HTTP_DNS_ENV_QA + DebugConfig.NET_MODE_DEMO -> clientConfig.netMode = MoGoAiCloudClientConfig.HTTP_DNS_ENV_DEMO + else -> clientConfig.netMode = MoGoAiCloudClientConfig.HTTP_DNS_ENV_RELEASE } // 设置是否是第三APP登录 clientConfig.isThirdLogin = @@ -126,13 +125,13 @@ class HttpDnsStartUp : AndroidStartup() { //设置长链接的secretKey 通过SHA1和包名找中台服务生成,后续包名分渠道,需要做对应操作 clientConfig.secretKey = "YMj2VFDFxJ3Q4gNoZceJ" - clientConfig.iHttpDnsCurrentLocation = object : IHttpDnsCurrentLocation { - override fun getCurrentLocation(): HttpDnsSimpleLocation { + clientConfig.iHttpCurrentLocation = object : ICurrentLocation { + override fun getCurrentLocation(): SimpleLocation { val envConfig = CallerDevaToolsManager.getEnvConfig() if (envConfig != null) { // 更新 httpDnsSimpleLocation = - HttpDnsSimpleLocation(envConfig.cityCode, envConfig.lat, envConfig.lon) + SimpleLocation(envConfig.cityCode, envConfig.lat, envConfig.lon) return httpDnsSimpleLocation } val mogoLocation: MogoLocation? = CallerChassisLocationGCJ02ListenerManager.getChassisLocationGCJ02() @@ -142,14 +141,14 @@ class HttpDnsStartUp : AndroidStartup() { mogoLocation.cityCode.isNullOrEmpty() && !CallerMapUIServiceManager.getGDLocationServer(context!!)?.lastCityCode.isNullOrEmpty() ) { - HttpDnsSimpleLocation( + SimpleLocation( CallerMapUIServiceManager.getGDLocationServer(context!!)?.lastCityCode ?: "010", mogoLocation.latitude, mogoLocation.longitude ) } else { - HttpDnsSimpleLocation( + SimpleLocation( mogoLocation.cityCode, mogoLocation.latitude, mogoLocation.longitude @@ -328,7 +327,7 @@ class HttpDnsStartUp : AndroidStartup() { MogoAiCloudSocketManager.getInstance(context).reConnect() } - private fun getDefaultSimpleLocation(): HttpDnsSimpleLocation { + private fun getDefaultSimpleLocation(): SimpleLocation { val ciyCode = SharedPrefsMgr.getInstance( AbsMogoApplication.getApp() @@ -345,11 +344,11 @@ class HttpDnsStartUp : AndroidStartup() { ) .getString(SharedPrefsConstants.LOCATION_LONGITUDE) return try { - HttpDnsSimpleLocation( + SimpleLocation( ciyCode, latitude.toDouble(), longitude.toDouble() ) } catch (e: NumberFormatException) { - HttpDnsSimpleLocation("010", 1.0, 1.0) + SimpleLocation("010", 1.0, 1.0) } } diff --git a/foudations/mogo-aicloud-services-sdk/src/main/java/com/mogo/aicloud/services/httpdns/HttpDnsConst.java b/foudations/mogo-aicloud-services-sdk/src/main/java/com/mogo/aicloud/services/httpdns/HttpDnsConst.java deleted file mode 100644 index a98969c3cf..0000000000 --- a/foudations/mogo-aicloud-services-sdk/src/main/java/com/mogo/aicloud/services/httpdns/HttpDnsConst.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.mogo.aicloud.services.httpdns; - -import androidx.annotation.Keep; - -/** - * @author congtaowang - * @since 2020/11/18 - * - * 描述 - */ -@Keep -public class HttpDnsConst { - - @Keep - public static final String PATH = "/httpdns/api"; - - public static final int HTTP_DNS_ADDRESS_TYPE_HTTP = 0; - public static final int HTTP_DNS_ADDRESS_TYPE_WS = 1; - public static final int HTTP_DNS_ADDRESS_TYPE_IM = 2; -} diff --git a/foudations/mogo-aicloud-services-sdk/src/main/java/com/mogo/aicloud/services/httpdns/IHttpDnsCallback.java b/foudations/mogo-aicloud-services-sdk/src/main/java/com/mogo/aicloud/services/httpdns/IHttpDnsCallback.java deleted file mode 100644 index f0380d376a..0000000000 --- a/foudations/mogo-aicloud-services-sdk/src/main/java/com/mogo/aicloud/services/httpdns/IHttpDnsCallback.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.mogo.aicloud.services.httpdns; - -import androidx.annotation.Keep; -import androidx.annotation.Nullable; - -/** - * @author congtaowang - * @since 2020/11/19 - * - * dns 解析回调 - */ -@Keep -public interface IHttpDnsCallback { - - @Keep - void onParsed( @Nullable String ip ); -} diff --git a/foudations/mogo-aicloud-services-sdk/src/main/java/com/mogo/aicloud/services/httpdns/IMogoHttpDns.java b/foudations/mogo-aicloud-services-sdk/src/main/java/com/mogo/aicloud/services/httpdns/IMogoHttpDns.java deleted file mode 100644 index e81c9bd61c..0000000000 --- a/foudations/mogo-aicloud-services-sdk/src/main/java/com/mogo/aicloud/services/httpdns/IMogoHttpDns.java +++ /dev/null @@ -1,53 +0,0 @@ -package com.mogo.aicloud.services.httpdns; - -import androidx.annotation.Keep; - -import com.alibaba.android.arouter.facade.template.IProvider; -import com.mogo.cloud.httpdns.listener.OnAddressChangedListener; - -/** - * @author congtaowang - * @since 2020/11/18 - *

- * http 请求做http dns转换 - */ -@Keep -public interface IMogoHttpDns extends IProvider { - - /** - * 获取缓存中的dns ip地址 - * - * @param host domain - * @param type 类型 - * @return - */ - @Keep - String getCachedHttpDnsIps(String host, int type); - - /** - * dns解析 - * - * @param host - * @param type - * @param useCache - * @param callback - */ - @Keep - void getHttpDnsIp(String host, int type, boolean useCache, IHttpDnsCallback callback); - - /** - * 同步进行dns解析,无需回调 - * - * @param host - * @param type - * @param useCache - * @return ip:port - */ - String syncGetHttpDns(String host, int type, boolean useCache); - - /** - * 注册HttpDns地址变化监听 - * @param listener {@link OnAddressChangedListener} - */ - void addressChangedListener(OnAddressChangedListener listener); -} diff --git a/foudations/mogo-aicloud-services-sdk/src/main/java/com/mogo/aicloud/services/httpdns/MogoHttpDns.java b/foudations/mogo-aicloud-services-sdk/src/main/java/com/mogo/aicloud/services/httpdns/MogoHttpDns.java deleted file mode 100644 index d8f1845293..0000000000 --- a/foudations/mogo-aicloud-services-sdk/src/main/java/com/mogo/aicloud/services/httpdns/MogoHttpDns.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.mogo.aicloud.services.httpdns; - -import android.content.Context; - -import androidx.annotation.Keep; - -import com.alibaba.android.arouter.facade.annotation.Route; -import com.mogo.cloud.httpdns.MogoHttpDnsClient; -import com.mogo.cloud.httpdns.listener.OnAddressChangedListener; - -@Keep -@Route(path = HttpDnsConst.PATH) -public class MogoHttpDns implements IMogoHttpDns { - private static final String TAG = "MogoHttpDns"; - - @Override - public String getCachedHttpDnsIps(String host, int type) { - return MogoHttpDnsClient.INSTANCE.getHttpDnsCachedAddress(type, host); - } - - @Override - public String syncGetHttpDns(String host, int type, boolean useCache) { - return MogoHttpDnsClient.INSTANCE.syncGetHttpDns(host, type, useCache); - } - - @Override - public void addressChangedListener(OnAddressChangedListener listener) { - MogoHttpDnsClient.INSTANCE.addressChangedListener(listener); - } - - @Override - public void getHttpDnsIp(String host, int type, boolean useCache, IHttpDnsCallback callback) { - if (useCache) { - String address = MogoHttpDnsClient.INSTANCE.getHttpDnsCachedAddress(type, host); - if (address != null) { - callback.onParsed(address); - } else { - callback.onParsed(MogoHttpDnsClient.INSTANCE.getHttpDnsAddress(type, host)); - } - } else { - callback.onParsed(MogoHttpDnsClient.INSTANCE.getHttpDnsAddress(type, host)); - } - } - - @Override - public void init(final Context context) { - - } - -} diff --git a/foudations/mogo-aicloud-services-sdk/src/main/java/com/mogo/aicloud/services/httpdns/MogoHttpDnsHandler.java b/foudations/mogo-aicloud-services-sdk/src/main/java/com/mogo/aicloud/services/httpdns/MogoHttpDnsHandler.java deleted file mode 100644 index fe3ea302f0..0000000000 --- a/foudations/mogo-aicloud-services-sdk/src/main/java/com/mogo/aicloud/services/httpdns/MogoHttpDnsHandler.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.mogo.aicloud.services.httpdns; - -import androidx.annotation.Keep; - -import com.alibaba.android.arouter.launcher.ARouter; - -public -/** - * @author congtaowang - * @since 2020/11/19 - * - * 描述 - */ -@Keep -class MogoHttpDnsHandler { - - private MogoHttpDnsHandler(){ - - } - - @Keep - private static volatile IMogoHttpDns sHttpDns; - - @Keep - public static IMogoHttpDns getHttpDnsApi() { - if ( sHttpDns == null ) { - synchronized ( MogoHttpDnsHandler.class ) { - if ( sHttpDns == null ) { - sHttpDns = ARouter.getInstance().navigation( IMogoHttpDns.class ); - } - } - } - return sHttpDns; - } -} diff --git a/gradle.properties b/gradle.properties index a561aea8b3..1ba44964a9 100644 --- a/gradle.properties +++ b/gradle.properties @@ -66,23 +66,23 @@ SERVICE_BIZ_VERSION=1.2.4 LOGLIB_VERSION=1.5.11 ######## MogoAiCloudSDK Version ######## # 网络请求LOGLIB_VERSION -MOGO_NETWORK_VERSION=1.4.4.9 +MOGO_NETWORK_VERSION=1.4.5.6 # 鉴权 -MOGO_PASSPORT_VERSION=1.4.4.9 +MOGO_PASSPORT_VERSION=1.4.5.6 # 常链接 -MOGO_SOCKET_VERSION=1.4.4.9 +MOGO_SOCKET_VERSION=1.4.5.6 # 数据采集 -MOGO_REALTIME_VERSION=1.4.4.9 +MOGO_REALTIME_VERSION=1.4.5.6 # 探路,道路事件发布,获取 -MOGO_TANLU_VERSION=1.4.4.9 +MOGO_TANLU_VERSION=1.4.5.6 # 直播推流 -MOGO_LIVE_VERSION=1.4.4.9 +MOGO_LIVE_VERSION=1.4.5.6 # 直播拉流 -MOGO_TRAFFICLIVE_VERSION=1.4.4.9 +MOGO_TRAFFICLIVE_VERSION=1.4.5.6 # 定位服务 -MOGO_LOCATION_VERSION=1.4.4.9 +MOGO_LOCATION_VERSION=1.4.5.6 # 远程通讯模块 -MOGO_TELEMATIC_VERSION=1.4.4.9 +MOGO_TELEMATIC_VERSION=1.4.5.6 ######## MogoAiCloudSDK Version ######## # 自研地图 MAP_SDK_VERSION=2.10.0.9