Merge "[SP18.1] add dependency object to OffloadController" am: c75f373448
Change-Id: I02c648e4ec802e738d311f5996cb3cd053f58478
This commit is contained in:
@@ -130,8 +130,20 @@ public class OffloadController {
|
||||
private int mNatUpdateCallbacksReceived;
|
||||
private int mNatUpdateNetlinkErrors;
|
||||
|
||||
@NonNull
|
||||
private final Dependencies mDeps;
|
||||
|
||||
// TODO: Put more parameters in constructor into dependency object.
|
||||
static class Dependencies {
|
||||
int getPerformPollInterval() {
|
||||
// TODO: Consider make this configurable.
|
||||
return DEFAULT_PERFORM_POLL_INTERVAL_MS;
|
||||
}
|
||||
}
|
||||
|
||||
public OffloadController(Handler h, OffloadHardwareInterface hwi,
|
||||
ContentResolver contentResolver, NetworkStatsManager nsm, SharedLog log) {
|
||||
ContentResolver contentResolver, NetworkStatsManager nsm, SharedLog log,
|
||||
@NonNull Dependencies deps) {
|
||||
mHandler = h;
|
||||
mHwInterface = hwi;
|
||||
mContentResolver = contentResolver;
|
||||
@@ -147,6 +159,7 @@ public class OffloadController {
|
||||
provider = null;
|
||||
}
|
||||
mStatsProvider = provider;
|
||||
mDeps = deps;
|
||||
}
|
||||
|
||||
/** Start hardware offload. */
|
||||
@@ -439,7 +452,7 @@ public class OffloadController {
|
||||
if (mHandler.hasCallbacks(mScheduledPollingTask)) {
|
||||
mHandler.removeCallbacks(mScheduledPollingTask);
|
||||
}
|
||||
mHandler.postDelayed(mScheduledPollingTask, DEFAULT_PERFORM_POLL_INTERVAL_MS);
|
||||
mHandler.postDelayed(mScheduledPollingTask, mDeps.getPerformPollInterval());
|
||||
}
|
||||
|
||||
private boolean isPollingStatsNeeded() {
|
||||
|
||||
@@ -273,7 +273,7 @@ public class Tethering {
|
||||
mHandler = mTetherMasterSM.getHandler();
|
||||
mOffloadController = new OffloadController(mHandler,
|
||||
mDeps.getOffloadHardwareInterface(mHandler, mLog), mContext.getContentResolver(),
|
||||
statsManager, mLog);
|
||||
statsManager, mLog, new OffloadController.Dependencies());
|
||||
mUpstreamNetworkMonitor = mDeps.getUpstreamNetworkMonitor(mContext, mTetherMasterSM, mLog,
|
||||
TetherMasterSM.EVENT_UPSTREAM_CALLBACK);
|
||||
mForwardedDownstreams = new LinkedHashSet<>();
|
||||
|
||||
@@ -116,6 +116,12 @@ public class OffloadControllerTest {
|
||||
private final ArgumentCaptor<OffloadHardwareInterface.ControlCallback> mControlCallbackCaptor =
|
||||
ArgumentCaptor.forClass(OffloadHardwareInterface.ControlCallback.class);
|
||||
private MockContentResolver mContentResolver;
|
||||
private OffloadController.Dependencies mDeps = new OffloadController.Dependencies() {
|
||||
@Override
|
||||
int getPerformPollInterval() {
|
||||
return 0;
|
||||
}
|
||||
};
|
||||
|
||||
@Before public void setUp() {
|
||||
MockitoAnnotations.initMocks(this);
|
||||
@@ -150,7 +156,7 @@ public class OffloadControllerTest {
|
||||
|
||||
private OffloadController makeOffloadController() throws Exception {
|
||||
OffloadController offload = new OffloadController(new Handler(Looper.getMainLooper()),
|
||||
mHardware, mContentResolver, mStatsManager, new SharedLog("test"));
|
||||
mHardware, mContentResolver, mStatsManager, new SharedLog("test"), mDeps);
|
||||
final ArgumentCaptor<OffloadController.OffloadTetheringStatsProvider>
|
||||
tetherStatsProviderCaptor =
|
||||
ArgumentCaptor.forClass(OffloadController.OffloadTetheringStatsProvider.class);
|
||||
|
||||
Reference in New Issue
Block a user