@@ -29,7 +29,7 @@ import com.mogo.eagle.core.function.call.autopilot.CallerSweeperFutianCleanSyste
import com.mogo.eagle.core.function.call.autopilot.CallerSweeperFutianCloudTaskListenerManager ;
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger ;
import com.mogo.eagle.core.utilcode.util.UiThreadHandler ;
import com.mogo.och.common.module.manager.OCHAdasAbilityManager ;
import com.mogo.och.common.module.manager.autopilotmanager. OCHAdasAbilityManager ;
import com.mogo.och.common.module.utils.CoordinateCalculateRouteUtil ;
import com.mogo.och.common.module.utils.NumberFormatUtil ;
import com.mogo.och.sweepercloud.bean.SweeperRoutePlanningUpdateReqBean ;
@@ -64,6 +64,7 @@ import io.reactivex.plugins.RxJavaPlugins;
import mogo.telematics.pad.MessagePad ;
import mogo_msg.MogoReportMsg ;
import planning.RoboSweeperTaskIndexOuterClass ;
import system_master.SsmInfo ;
import system_master.SystemStatusInfo ;
/**
@@ -154,31 +155,31 @@ public class SweeperTaskModel implements IMoGoSweeperFutianCloudTaskListener, IM
public void accept ( Throwable e ) {
if ( e instanceof UndeliverableException ) {
e = e . getCause ( ) ;
CallerLogger . INSTANCE . d( M_SWEEPER + TAG , " UndeliverableException " ) ;
CallerLogger . d ( M_SWEEPER + TAG , " UndeliverableException " ) ;
}
if ( ( e instanceof IOException ) ) { //
// fine, irrelevant network problem or API that throws on cancellation
CallerLogger . INSTANCE . d( M_SWEEPER + TAG , " IOException " ) ;
CallerLogger . d ( M_SWEEPER + TAG , " IOException " ) ;
return ;
}
if ( e instanceof InterruptedException ) {
// fine, some blocking code was interrupted by a dispose call
CallerLogger . INSTANCE . d( M_SWEEPER + TAG , " InterruptedException " ) ;
CallerLogger . d ( M_SWEEPER + TAG , " InterruptedException " ) ;
return ;
}
if ( ( e instanceof NullPointerException ) | | ( e instanceof IllegalArgumentException ) ) {
// that's likely a bug in the application
CallerLogger . INSTANCE . d( M_SWEEPER + TAG , " NullPointerException or IllegalArgumentException " ) ;
CallerLogger . d ( M_SWEEPER + TAG , " NullPointerException or IllegalArgumentException " ) ;
Thread . currentThread ( ) . getUncaughtExceptionHandler ( ) . uncaughtException ( Thread . currentThread ( ) , e ) ;
return ;
}
if ( e instanceof IllegalStateException ) {
// that's a bug in RxJava or in a custom operator
CallerLogger . INSTANCE . d( M_SWEEPER + TAG , " IllegalStateException " ) ;
CallerLogger . d ( M_SWEEPER + TAG , " IllegalStateException " ) ;
Thread . currentThread ( ) . getUncaughtExceptionHandler ( ) . uncaughtException ( Thread . currentThread ( ) , e ) ;
return ;
}
CallerLogger . INSTANCE . d( M_SWEEPER + TAG , " Undeliverable exception " ) ;
CallerLogger . d ( M_SWEEPER + TAG , " Undeliverable exception " ) ;
}
} ) ;
}
@@ -196,18 +197,18 @@ public class SweeperTaskModel implements IMoGoSweeperFutianCloudTaskListener, IM
@Override
public void onAutopilotRotting ( MessagePad . GlobalPathResp routeList ) {
if ( null ! = routeList & & routeList . getWayPointsList ( ) ! = null & & routeList . getWayPointsList ( ) . size ( ) > 0 ) {
CallerLogger . INSTANCE . d( M_SWEEPER + TAG , " onAutopilotRotting: " + printMessage ( routeList ) ) ;
CallerLogger . d ( M_SWEEPER + TAG , " onAutopilotRotting: " + printMessage ( routeList ) ) ;
// MAP返回路线信息, 在1秒内返回了2次, 这里加上数据过滤
long current = System . currentTimeMillis ( ) ;
if ( current - mRouteDataCurrentTimeMillis < = ROUTE_DATA_INTERVAL_MILLIS ) {
CallerLogger . INSTANCE . d( M_SWEEPER + TAG , " onAutopilotRotting: interval <= " + ROUTE_DATA_INTERVAL_MILLIS + " data is abandon " ) ;
CallerLogger . d ( M_SWEEPER + TAG , " onAutopilotRotting: interval <= " + ROUTE_DATA_INTERVAL_MILLIS + " data is abandon " ) ;
return ;
}
mRouteDataCurrentTimeMillis = current ;
if ( mCurrentLineId ! = mPreLineId ) { //判断是否同一条路线
CallerLogger . INSTANCE . d( M_SWEEPER + TAG , " onAutopilotRotting: mCurrentLineId " + mCurrentLineId + " mPreLineId: " + mPreLineId ) ;
CallerLogger . d ( M_SWEEPER + TAG , " onAutopilotRotting: mCurrentLineId " + mCurrentLineId + " mPreLineId: " + mPreLineId ) ;
mPreLineId = mCurrentLineId ;
points . addAll ( coordinateConverterWgsToGcjList ( mContext , routeList . getWayPointsList ( ) ) ) ;
if ( mSweeperTaskCallback ! = null ) {
@@ -333,7 +334,8 @@ public class SweeperTaskModel implements IMoGoSweeperFutianCloudTaskListener, IM
@Override
public void onSweeperFutianCloudTask ( @NonNull SweeperCloudTask . MessageType messageType , String reqNo , long sysTime ,
SweeperTask . TaskInfo taskInfo ) {
CallerLogger . INSTANCE . d ( M_SWEEPER + TAG ,
CallerLogger . d ( M_SWEEPER + TAG ,
" messageType: " + messageType . getNumber ( ) + " sysTime: " + sysTime + " reqNo: " + reqNo + " onSweeperFutianCloudTask: " + ( taskInfo = = null ? " null " : printMessage ( taskInfo ) ) + " mSweeperTaskCallback: " + mSweeperTaskCallback ) ;
if ( mSweeperTaskCallback ! = null ) {
msgTypeAndReqNo . put ( messageType . getNumber ( ) , reqNo ) ;
@@ -345,7 +347,7 @@ public class SweeperTaskModel implements IMoGoSweeperFutianCloudTaskListener, IM
public void onSweeperFutianCloudTaskConfirm ( @NonNull SweeperCloudTask . MessageType messageType , String reqNo , long sysTime ,
SweeperTaskConfirm . TaskConfirm taskConfirm ) {
CallerLogger . INSTANCE . d( M_SWEEPER + TAG , " messageType: " + messageType . getNumber ( ) + " sysTime: " + sysTime + " reqNo: " + reqNo + " " +
CallerLogger . d ( M_SWEEPER + TAG , " messageType: " + messageType . getNumber ( ) + " sysTime: " + sysTime + " reqNo: " + reqNo + " " +
" onSweeperFutianCloudTaskConfirm: " + printMessage ( taskConfirm ) ) ;
if ( mSweeperTaskCallback ! = null & & taskConfirm ! = null ) {
msgTypeAndReqNo . put ( messageType . getNumber ( ) , reqNo ) ;
@@ -356,7 +358,7 @@ public class SweeperTaskModel implements IMoGoSweeperFutianCloudTaskListener, IM
@Override
public void onSweeperFutianCloudTaskStatus ( @NonNull SweeperCloudTask . MessageType messageType , String reqNo , long sysTime ,
SweeperTaskStatus . TaskStatusPush taskStatusPush ) {
CallerLogger . INSTANCE . d( M_SWEEPER + TAG , " messageType: " + messageType . getNumber ( ) + " sysTime: " + sysTime + " reqNo: " + reqNo + " " +
CallerLogger . d ( M_SWEEPER + TAG , " messageType: " + messageType . getNumber ( ) + " sysTime: " + sysTime + " reqNo: " + reqNo + " " +
" onSweeperFutianCloudTaskStatus: " + printMessage ( taskStatusPush ) ) ;
if ( mSweeperTaskCallback ! = null & & taskStatusPush ! = null ) {
msgTypeAndReqNo . put ( messageType . getNumber ( ) , reqNo ) ;
@@ -367,7 +369,7 @@ public class SweeperTaskModel implements IMoGoSweeperFutianCloudTaskListener, IM
@Override
public void onSweeperFutianCloudTaskStop ( @NonNull SweeperCloudTask . MessageType messageType , String reqNo , long sysTime ,
SweeperTaskStop . StopTaskReq stopTaskReq ) {
CallerLogger . INSTANCE . d( M_SWEEPER + TAG , " messageType: " + messageType . getNumber ( ) + " sysTime: " + sysTime + " reqNo: " + reqNo + " " +
CallerLogger . d ( M_SWEEPER + TAG , " messageType: " + messageType . getNumber ( ) + " sysTime: " + sysTime + " reqNo: " + reqNo + " " +
" onSweeperFutianCloudTaskStop: " + printMessage ( stopTaskReq ) ) ;
if ( mSweeperTaskCallback ! = null & & stopTaskReq ! = null ) {
msgTypeAndReqNo . put ( messageType . getNumber ( ) , reqNo ) ;
@@ -378,7 +380,7 @@ public class SweeperTaskModel implements IMoGoSweeperFutianCloudTaskListener, IM
@Override
public void onSweeperFutianCloudTaskSuspendResume ( @NonNull SweeperCloudTask . MessageType messageType , String reqNo , long sysTime ,
SweeperTaskSuspendResume . SuspendResumeTaskResp suspendResumeTaskResp ) {
CallerLogger . INSTANCE . d( M_SWEEPER + TAG , " messageType: " + messageType . getNumber ( ) + " sysTime: " + sysTime + " reqNo: " + reqNo + " " +
CallerLogger . d ( M_SWEEPER + TAG , " messageType: " + messageType . getNumber ( ) + " sysTime: " + sysTime + " reqNo: " + reqNo + " " +
" onSweeperFutianCloudTaskSuspendResume: " + printMessage ( suspendResumeTaskResp ) ) ;
if ( mSweeperTaskCallback ! = null & & suspendResumeTaskResp ! = null ) {
msgTypeAndReqNo . put ( messageType . getNumber ( ) , reqNo ) ;
@@ -390,7 +392,7 @@ public class SweeperTaskModel implements IMoGoSweeperFutianCloudTaskListener, IM
@Override
public void onSweeperFutianCloudBootable ( @NonNull SweeperCloudTask . MessageType messageType , String reqNo , long sysTime ,
SweeperBootable . IsBootableResp isBootableResp ) {
CallerLogger . INSTANCE . d( M_SWEEPER + TAG , " messageType: " + messageType . getNumber ( ) + " sysTime: " + sysTime + " reqNo: " + reqNo + " " +
CallerLogger . d ( M_SWEEPER + TAG , " messageType: " + messageType . getNumber ( ) + " sysTime: " + sysTime + " reqNo: " + reqNo + " " +
" onSweeperFutianCloudBootable: " + printMessage ( isBootableResp ) ) ;
if ( mSweeperTaskCallback ! = null & & isBootableResp ! = null ) {
msgTypeAndReqNo . put ( messageType . getNumber ( ) , reqNo ) ;
@@ -401,7 +403,7 @@ public class SweeperTaskModel implements IMoGoSweeperFutianCloudTaskListener, IM
@Override
public void onSweeperFutianCloudBigTaskStatus ( @NonNull SweeperCloudTask . MessageType messageType , String reqNo , long sysTime ,
SweeperBigTaskStatus . BigTaskStatusPush bigTaskStatusPush ) {
CallerLogger . INSTANCE . d( M_SWEEPER + TAG , " messageType: " + messageType . getNumber ( ) + " sysTime: " + sysTime + " reqNo: " + reqNo + " " +
CallerLogger . d ( M_SWEEPER + TAG , " messageType: " + messageType . getNumber ( ) + " sysTime: " + sysTime + " reqNo: " + reqNo + " " +
" onSweeperFutianCloudBigTaskStatus: " + printMessage ( bigTaskStatusPush ) ) ;
if ( mSweeperTaskCallback ! = null & & bigTaskStatusPush ! = null ) {
msgTypeAndReqNo . put ( messageType . getNumber ( ) , reqNo ) ;
@@ -412,7 +414,7 @@ public class SweeperTaskModel implements IMoGoSweeperFutianCloudTaskListener, IM
@Override
public void onSweeperFutianCloudTaskCloudSuspendResume ( @NonNull SweeperCloudTask . MessageType messageType , @Nullable String reqNo , long sysTime ,
@Nullable SweeperTaskCloudSuspendResume . BigTaskActionPush bigTaskActionPush ) {
CallerLogger . INSTANCE . d( M_SWEEPER + TAG , " messageType: " + messageType . getNumber ( ) + " sysTime: " + sysTime + " reqNo: " + reqNo + " " +
CallerLogger . d ( M_SWEEPER + TAG , " messageType: " + messageType . getNumber ( ) + " sysTime: " + sysTime + " reqNo: " + reqNo + " " +
" onSweeperFutianCloudTaskCloudSuspendResume: " + printMessage ( bigTaskActionPush ) ) ;
if ( mSweeperTaskCallback ! = null & & bigTaskActionPush ! = null ) {
msgTypeAndReqNo . put ( messageType . getNumber ( ) , reqNo ) ;
@@ -430,7 +432,7 @@ public class SweeperTaskModel implements IMoGoSweeperFutianCloudTaskListener, IM
return ;
}
mVehicleStateCurrentTimeMillis = current ;
// CallerLogger.INSTANCE. d(M_SWEEPER + TAG, "onSweeperFutianCleanSystemState: " + printMessage(cleanSystemState));
// CallerLogger.d(M_SWEEPER + TAG, "onSweeperFutianCleanSystemState: " + printMessage(cleanSystemState));
if ( mSweeperTaskCallback ! = null ) {
mSweeperTaskCallback . onSweeperFutianCleanSystemState ( cleanSystemState ) ;
}
@@ -518,7 +520,7 @@ public class SweeperTaskModel implements IMoGoSweeperFutianCloudTaskListener, IM
String reqNo = SweeperCloudTaskUtils . getRequestId ( ) ;
SweeperTask . GetTaskReq getTaskReq = builder . build ( ) ;
CallerLogger . INSTANCE . d( M_SWEEPER + TAG ,
CallerLogger . d ( M_SWEEPER + TAG ,
" getCurrentTask: " + printMessage ( getTaskReq ) + " reqNo: " + reqNo + " messageType: " + SweeperCloudTask . MessageType . PadSendGetTaskReq . getNumber ( ) ) ;
getAutoPilotControlManager ( ) . sendSweeperGetTaskReq ( reqNo , getTaskReq ) ;
}
@@ -535,7 +537,7 @@ public class SweeperTaskModel implements IMoGoSweeperFutianCloudTaskListener, IM
String reqNo = msgTypeAndReqNo . get ( SweeperCloudTask . MessageType . CloudPushTask . getNumber ( ) ) ;
getAutoPilotControlManager ( ) . sendSweeperStartTaskResp ( reqNo , startTaskResp ) ;
CallerLogger . INSTANCE . d( M_SWEEPER + TAG ,
CallerLogger . d ( M_SWEEPER + TAG ,
" sendSweeperStartTaskResp: " + printMessage ( startTaskResp ) + " reqNo: " + reqNo + " messageType: " + SweeperCloudTask . MessageType . CloudPushTask . getNumber ( ) ) ;
}
@@ -550,8 +552,7 @@ public class SweeperTaskModel implements IMoGoSweeperFutianCloudTaskListener, IM
builder . setCode ( code ) ;
SweeperTaskConfirm . TaskConfirmResp taskConfirmResp = builder . build ( ) ;
String reqNo = msgTypeAndReqNo . get ( SweeperCloudTask . MessageType . CloudPushTaskConfirm . getNumber ( ) ) ;
CallerLogger . INSTANCE . d ( M_SWEEPER + TAG ,
CallerLogger . d ( M_SWEEPER + TAG ,
" sendSweeperTaskConfirmResp " + printMessage ( taskConfirmResp ) + " reqNo: " + reqNo + " messageType: " + SweeperCloudTask . MessageType . CloudPushTaskConfirm . getNumber ( ) ) ;
getAutoPilotControlManager ( ) . sendSweeperTaskConfirmResp ( reqNo , taskConfirmResp ) ;
}
@@ -570,7 +571,7 @@ public class SweeperTaskModel implements IMoGoSweeperFutianCloudTaskListener, IM
SweeperTaskStop . StopTaskResp stopTaskResp = builder . build ( ) ;
String reqNo = msgTypeAndReqNo . get ( SweeperCloudTask . MessageType . CloudPushTaskStop . getNumber ( ) ) ;
CallerLogger . INSTANCE . d( M_SWEEPER + TAG ,
CallerLogger . d ( M_SWEEPER + TAG ,
" sendSweeperStopTaskResp " + printMessage ( stopTaskResp ) + " reqNo: " + reqNo + " messageType: " + SweeperCloudTask . MessageType . CloudPushTaskStop . getNumber ( ) ) ;
getAutoPilotControlManager ( ) . sendSweeperStopTaskResp ( reqNo , stopTaskResp ) ;
}
@@ -591,7 +592,7 @@ public class SweeperTaskModel implements IMoGoSweeperFutianCloudTaskListener, IM
SweeperBootable . IsBootable isBootable = builder . build ( ) ;
String reqNo = SweeperCloudTaskUtils . getRequestId ( ) ;
CallerLogger . INSTANCE . d( M_SWEEPER + TAG ,
CallerLogger . d ( M_SWEEPER + TAG ,
" sendSweeperAutopilotBootable " + printMessage ( isBootable ) + " reqNo: " + reqNo + " messageType: " + SweeperCloudTask . MessageType . PadSendBootable . getNumber ( ) ) ;
getAutoPilotControlManager ( ) . sendSweeperAutopilotBootable ( reqNo , isBootable ) ;
//SweeperCloudTaskUtils.mockSendCloudBootable();
@@ -610,7 +611,7 @@ public class SweeperTaskModel implements IMoGoSweeperFutianCloudTaskListener, IM
SweeperTaskCloudSuspendResume . BigTaskActionResp resp = builder . build ( ) ;
String reqNo = msgTypeAndReqNo . get ( SweeperCloudTask . MessageType . CloudPushTaskSuspendResume . getNumber ( ) ) ;
CallerLogger . INSTANCE . d( M_SWEEPER + TAG ,
CallerLogger . d ( M_SWEEPER + TAG ,
" sendSweeperSuspendResumeTaskResp " + printMessage ( resp ) + " reqNo: " + reqNo + " messageType: " + SweeperCloudTask . MessageType . CloudPushTaskSuspendResume ) ;
getAutoPilotControlManager ( ) . sendSweeperCloudSuspendResumeTaskResp ( reqNo , resp ) ;
}
@@ -651,14 +652,19 @@ public class SweeperTaskModel implements IMoGoSweeperFutianCloudTaskListener, IM
getCurrentTask ( ) ;
} , 10000 ) ;
}
//CallerLogger.INSTANCE. d(M_SWEEPER + TAG, "onAutopilotIpcConnectStatusChanged status:" + status + " reason: " + reason);
//CallerLogger.d(M_SWEEPER + TAG, "onAutopilotIpcConnectStatusChanged status:" + status + " reason: " + reason);
}
@Override
public void onAutopilotStatusRespByQuery ( @NonNull SystemStatusInfo . StatusInfo status ) {
// CallerLogger.INSTANCE. d(M_SWEEPER + TAG, "onAutopilotStatusRespByQuery status:" + status.getSysState().getNumber());
// CallerLogger.d(M_SWEEPER + TAG, "onAutopilotStatusRespByQuery status:" + status.getSysState().getNumber());
}
@Override
public void onSystemStatus ( @NonNull SsmInfo . SsmStatusInf statusInf ) {
}
@Override
public void onAutopilotRouteLineId ( long lineId ) {
@@ -672,12 +678,12 @@ public class SweeperTaskModel implements IMoGoSweeperFutianCloudTaskListener, IM
@Override
public void onSweeperFutianCloudTaskUnknown ( @NonNull byte [ ] bytes ) {
String string = new String ( bytes , StandardCharsets . UTF_8 ) ;
CallerLogger . INSTANCE . d( M_SWEEPER + TAG , " onSweeperFutianCloudTaskUnknown: " + string ) ;
CallerLogger . d ( M_SWEEPER + TAG , " onSweeperFutianCloudTaskUnknown: " + string ) ;
}
@Override
public void onAutopilotStatusResponse ( int state ) {
//CallerLogger.INSTANCE. d(M_SWEEPER + TAG, "onAutopilotStatusResponse state:" + state);
//CallerLogger.d(M_SWEEPER + TAG, "onAutopilotStatusResponse state:" + state);
this . mAutopilotState = state ;
if ( mControllerStatusCallback ! = null ) {
mControllerStatusCallback . onAutopilotState ( state ) ;