opt, add apis
This commit is contained in:
@@ -17,6 +17,7 @@ import com.mogo.service.cardmanager.IMogoCardManager;
|
||||
import com.mogo.service.connection.IMogoSocketManager;
|
||||
import com.mogo.service.imageloader.IMogoImageloader;
|
||||
import com.mogo.service.map.IMogoMapService;
|
||||
import com.mogo.service.module.IMogoActionManager;
|
||||
import com.mogo.service.module.IMogoRegisterCenter;
|
||||
import com.mogo.service.statusmanager.IMogoStatusManager;
|
||||
|
||||
@@ -36,15 +37,14 @@ public class MarkerServiceHandler {
|
||||
private static IMogoMarkerManager mMarkerManager;
|
||||
private static IMogoNavi mNavi;
|
||||
private static IMogoMapUIController mMapUIController;
|
||||
|
||||
private static IMogoLocationClient mLocationClient;
|
||||
|
||||
private static IMogoStatusManager mMogoStatusManager;
|
||||
private static IMogoImageloader mImageloader;
|
||||
private static IMogoSocketManager mMogoSocketManager;
|
||||
private static IMogoCardManager mMogoCardManager;
|
||||
private static IMogoAnalytics mMogoAnalytics;
|
||||
private static IMogoRegisterCenter mRegisterCenter;
|
||||
private static IMogoActionManager mActionManager;
|
||||
|
||||
private static MapMarkerManager mMapMarkerManager;
|
||||
|
||||
@@ -56,12 +56,12 @@ public class MarkerServiceHandler {
|
||||
mMogoSocketManager = mApis.getSocketManagerApi( context );
|
||||
mMogoCardManager = mApis.getCardManagerApi();
|
||||
mMogoAnalytics = mApis.getAnalyticsApi();
|
||||
|
||||
mMarkerManager = mMapService.getMarkerManager( context );
|
||||
mNavi = mMapService.getNavi( context );
|
||||
mMapUIController = mMapService.getMapUIController();
|
||||
mLocationClient = mMapService.getSingletonLocationClient( context );
|
||||
mRegisterCenter = mApis.getRegisterCenterApi();
|
||||
mActionManager = mApis.getActionManagerApi();
|
||||
|
||||
mMapMarkerManager = MapMarkerManager.getInstance();
|
||||
mMapMarkerManager.init( context );
|
||||
@@ -115,6 +115,10 @@ public class MarkerServiceHandler {
|
||||
return mRegisterCenter;
|
||||
}
|
||||
|
||||
public static IMogoActionManager getActionManager() {
|
||||
return mActionManager;
|
||||
}
|
||||
|
||||
//TODO -------------以下方法是临时过度使用的,后面统一使用,getMapMarkerManager进行调用
|
||||
|
||||
/**
|
||||
|
||||
@@ -3,6 +3,7 @@ package com.mogo.module.service.actionmanager;
|
||||
import android.content.Context;
|
||||
import android.text.TextUtils;
|
||||
|
||||
import com.mogo.service.module.IMogoBizActionDoneListener;
|
||||
import com.mogo.service.module.MogoAction;
|
||||
import com.mogo.service.module.IMogoActionListener;
|
||||
import com.mogo.service.module.IMogoActionManager;
|
||||
@@ -43,6 +44,8 @@ public class MogoActionHandler implements IMogoActionManager {
|
||||
|
||||
private Map< String, List< IMogoActionListener > > mListeners = new ConcurrentHashMap<>();
|
||||
|
||||
private IMogoBizActionDoneListener mBizActionDoneListener;
|
||||
|
||||
@Override
|
||||
public void registerActionListener( String biz, IMogoActionListener listener ) {
|
||||
if ( TextUtils.isEmpty( biz ) || listener == null ) {
|
||||
@@ -90,4 +93,21 @@ public class MogoActionHandler implements IMogoActionManager {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void registerBizActionDoneListener( IMogoBizActionDoneListener listener ) {
|
||||
mBizActionDoneListener = listener;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void unregisterBizActionDoneListener() {
|
||||
mBizActionDoneListener = null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void bizInvoke( String biz, int position, Object data ) {
|
||||
if ( mBizActionDoneListener != null ) {
|
||||
mBizActionDoneListener.onBizActionDone( biz, position, data );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,7 +3,9 @@ package com.mogo.module.service.actionmanager;
|
||||
import android.content.Context;
|
||||
|
||||
import com.alibaba.android.arouter.facade.annotation.Route;
|
||||
import com.mogo.map.MogoOverlayManager;
|
||||
import com.mogo.service.MogoServicePaths;
|
||||
import com.mogo.service.module.IMogoBizActionDoneListener;
|
||||
import com.mogo.service.module.MogoAction;
|
||||
import com.mogo.service.module.IMogoActionListener;
|
||||
import com.mogo.service.module.IMogoActionManager;
|
||||
@@ -32,6 +34,21 @@ public class MogoActionManager implements IMogoActionManager {
|
||||
MogoActionHandler.getInstance().invoke( biz, action );
|
||||
}
|
||||
|
||||
@Override
|
||||
public void registerBizActionDoneListener( IMogoBizActionDoneListener listener ) {
|
||||
MogoActionHandler.getInstance().registerBizActionDoneListener( listener );
|
||||
}
|
||||
|
||||
@Override
|
||||
public void unregisterBizActionDoneListener() {
|
||||
MogoActionHandler.getInstance().unregisterBizActionDoneListener();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void bizInvoke( String biz, int position, Object data ) {
|
||||
MogoActionHandler.getInstance().bizInvoke( biz, position, data );
|
||||
}
|
||||
|
||||
@Override
|
||||
public void init( Context context ) {
|
||||
MogoActionHandler.getInstance().init( context );
|
||||
|
||||
@@ -9,6 +9,7 @@ import com.mogo.map.MogoLatLng;
|
||||
import com.mogo.map.location.MogoLocation;
|
||||
import com.mogo.map.marker.IMogoMarker;
|
||||
import com.mogo.map.marker.IMogoMarkerClickListener;
|
||||
import com.mogo.map.marker.IMogoMarkerManager;
|
||||
import com.mogo.map.marker.MogoMarkerOptions;
|
||||
import com.mogo.map.marker.MogoMarkersHandler;
|
||||
import com.mogo.module.common.entity.MarkerCardResult;
|
||||
@@ -27,6 +28,7 @@ import com.mogo.module.service.datamanager.MogoDataHandler;
|
||||
import com.mogo.module.service.utils.ViewUtils;
|
||||
import com.mogo.service.cardmanager.IMogoCardChangedListener;
|
||||
import com.mogo.service.connection.IMogoOnMessageListener;
|
||||
import com.mogo.service.module.IMogoBizActionDoneListener;
|
||||
import com.mogo.utils.ThreadPoolService;
|
||||
import com.mogo.utils.logger.Logger;
|
||||
|
||||
@@ -48,7 +50,8 @@ import java.util.Map;
|
||||
*/
|
||||
public class MapMarkerManager implements IMogoMarkerClickListener,
|
||||
IMogoOnMessageListener< MarkerResponse >,
|
||||
IMogoCardChangedListener {
|
||||
IMogoCardChangedListener,
|
||||
IMogoBizActionDoneListener {
|
||||
private static final String TAG = "MapMarkerManager";
|
||||
// 是否选中在线卡片及气泡,语音搜索触发
|
||||
private boolean mIsAISearchOnlineData = false;
|
||||
@@ -91,6 +94,7 @@ public class MapMarkerManager implements IMogoMarkerClickListener,
|
||||
// 长连接
|
||||
MarkerServiceHandler.getMogoSocketManager().registerOnMessageListener( 401001, this );
|
||||
MarkerServiceHandler.getMogoCardManager().registerCardChangedListener( "LAUNCHER_MARKER_MODULE", this );
|
||||
MarkerServiceHandler.getActionManager().registerBizActionDoneListener( this );
|
||||
}
|
||||
|
||||
// ACC ON 的时候重置为true,ACC OFF 设置为 false
|
||||
@@ -728,6 +732,7 @@ public class MapMarkerManager implements IMogoMarkerClickListener,
|
||||
markers.add( marker );
|
||||
setMarkersSmall( markers );
|
||||
}
|
||||
markerShowEntity.setMarker( marker );
|
||||
return marker;
|
||||
}
|
||||
|
||||
@@ -763,4 +768,26 @@ public class MapMarkerManager implements IMogoMarkerClickListener,
|
||||
public String getCurrentModuleName() {
|
||||
return mCurrentModuleName;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBizActionDone( String biz, int position, Object data ) {
|
||||
Logger.d( TAG, "biz = %s, position = %s", biz, position );
|
||||
if ( !( data instanceof MarkerShowEntity ) ) {
|
||||
return;
|
||||
}
|
||||
if ( ( ( MarkerShowEntity ) data ).getMarker() != null ) {
|
||||
onMarkerClicked( ( ( MarkerShowEntity ) data ).getMarker() );
|
||||
} else {
|
||||
IMogoMarkerManager markerManager = MarkerServiceHandler.getMarkerManager();
|
||||
List< IMogoMarker > markers = markerManager.getMarkers( biz );
|
||||
if ( markers != null ) {
|
||||
for ( IMogoMarker marker : markers ) {
|
||||
if ( marker.getObject() == data ) {
|
||||
onMarkerClicked( marker );
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user