Merge "Clean up unused NetworkPolicyEditor" into main
This commit is contained in:
@@ -14,29 +14,12 @@
|
|||||||
|
|
||||||
package com.android.settings.datausage;
|
package com.android.settings.datausage;
|
||||||
|
|
||||||
import android.net.NetworkPolicy;
|
|
||||||
|
|
||||||
import com.android.settingslib.net.DataUsageController.DataUsageInfo;
|
import com.android.settingslib.net.DataUsageController.DataUsageInfo;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Controller to handle caching and mobile data logic.
|
* Controller to handle caching and mobile data logic.
|
||||||
*/
|
*/
|
||||||
public class DataUsageInfoController {
|
public class DataUsageInfoController {
|
||||||
/**
|
|
||||||
* Take the cached data usage values in the NetworkPolicy to update DataUsageInfo.
|
|
||||||
*/
|
|
||||||
public void updateDataLimit(DataUsageInfo info, NetworkPolicy policy) {
|
|
||||||
if (info == null || policy == null) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (policy.warningBytes >= 0) {
|
|
||||||
info.warningLevel = policy.warningBytes;
|
|
||||||
}
|
|
||||||
if (policy.limitBytes >= 0) {
|
|
||||||
info.limitLevel = policy.limitBytes;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @returns the most appropriate limit for the data usage summary. Use the total usage when it
|
* @returns the most appropriate limit for the data usage summary. Use the total usage when it
|
||||||
* is higher than the limit and warning level. Use the limit when it is set and less than usage.
|
* is higher than the limit and warning level. Use the limit when it is set and less than usage.
|
||||||
|
@@ -21,7 +21,6 @@ import android.content.Context;
|
|||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.content.pm.PackageManager;
|
import android.content.pm.PackageManager;
|
||||||
import android.net.INetworkPolicyManager;
|
import android.net.INetworkPolicyManager;
|
||||||
import android.net.NetworkPolicyManager;
|
|
||||||
import android.net.NetworkTemplate;
|
import android.net.NetworkTemplate;
|
||||||
import android.os.ServiceManager;
|
import android.os.ServiceManager;
|
||||||
import android.telephony.SubscriptionInfo;
|
import android.telephony.SubscriptionInfo;
|
||||||
@@ -43,7 +42,6 @@ import com.android.settings.datausage.lib.DataUsageLib;
|
|||||||
import com.android.settings.network.ProxySubscriptionManager;
|
import com.android.settings.network.ProxySubscriptionManager;
|
||||||
import com.android.settings.network.telephony.TelephonyBasePreferenceController;
|
import com.android.settings.network.telephony.TelephonyBasePreferenceController;
|
||||||
import com.android.settings.widget.EntityHeaderController;
|
import com.android.settings.widget.EntityHeaderController;
|
||||||
import com.android.settingslib.NetworkPolicyEditor;
|
|
||||||
import com.android.settingslib.core.lifecycle.Lifecycle;
|
import com.android.settingslib.core.lifecycle.Lifecycle;
|
||||||
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
||||||
import com.android.settingslib.core.lifecycle.events.OnStart;
|
import com.android.settingslib.core.lifecycle.events.OnStart;
|
||||||
@@ -71,7 +69,6 @@ public class DataUsageSummaryPreferenceController extends TelephonyBasePreferenc
|
|||||||
protected DataUsageController mDataUsageController;
|
protected DataUsageController mDataUsageController;
|
||||||
protected DataUsageInfoController mDataInfoController;
|
protected DataUsageInfoController mDataInfoController;
|
||||||
private NetworkTemplate mDefaultTemplate;
|
private NetworkTemplate mDefaultTemplate;
|
||||||
protected NetworkPolicyEditor mPolicyEditor;
|
|
||||||
private boolean mHasMobileData;
|
private boolean mHasMobileData;
|
||||||
|
|
||||||
/** Name of the carrier, or null if not available */
|
/** Name of the carrier, or null if not available */
|
||||||
@@ -120,10 +117,6 @@ public class DataUsageSummaryPreferenceController extends TelephonyBasePreferenc
|
|||||||
|
|
||||||
protected void updateConfiguration(Context context,
|
protected void updateConfiguration(Context context,
|
||||||
int subscriptionId, SubscriptionInfo subInfo) {
|
int subscriptionId, SubscriptionInfo subInfo) {
|
||||||
final NetworkPolicyManager policyManager =
|
|
||||||
context.getSystemService(NetworkPolicyManager.class);
|
|
||||||
mPolicyEditor = new NetworkPolicyEditor(policyManager);
|
|
||||||
|
|
||||||
mDataUsageController = createDataUsageController(context);
|
mDataUsageController = createDataUsageController(context);
|
||||||
mDataUsageController.setSubscriptionId(subscriptionId);
|
mDataUsageController.setSubscriptionId(subscriptionId);
|
||||||
mDataInfoController = new DataUsageInfoController();
|
mDataInfoController = new DataUsageInfoController();
|
||||||
@@ -147,7 +140,6 @@ public class DataUsageSummaryPreferenceController extends TelephonyBasePreferenc
|
|||||||
DataUsageController dataUsageController,
|
DataUsageController dataUsageController,
|
||||||
DataUsageInfoController dataInfoController,
|
DataUsageInfoController dataInfoController,
|
||||||
NetworkTemplate defaultTemplate,
|
NetworkTemplate defaultTemplate,
|
||||||
NetworkPolicyEditor policyEditor,
|
|
||||||
Activity activity,
|
Activity activity,
|
||||||
Lifecycle lifecycle,
|
Lifecycle lifecycle,
|
||||||
EntityHeaderController entityHeaderController,
|
EntityHeaderController entityHeaderController,
|
||||||
@@ -157,7 +149,6 @@ public class DataUsageSummaryPreferenceController extends TelephonyBasePreferenc
|
|||||||
mDataUsageController = dataUsageController;
|
mDataUsageController = dataUsageController;
|
||||||
mDataInfoController = dataInfoController;
|
mDataInfoController = dataInfoController;
|
||||||
mDefaultTemplate = defaultTemplate;
|
mDefaultTemplate = defaultTemplate;
|
||||||
mPolicyEditor = policyEditor;
|
|
||||||
mHasMobileData = true;
|
mHasMobileData = true;
|
||||||
mLifecycle = lifecycle;
|
mLifecycle = lifecycle;
|
||||||
mEntityHeaderController = entityHeaderController;
|
mEntityHeaderController = entityHeaderController;
|
||||||
@@ -213,7 +204,6 @@ public class DataUsageSummaryPreferenceController extends TelephonyBasePreferenc
|
|||||||
long usageLevel = info.usageLevel;
|
long usageLevel = info.usageLevel;
|
||||||
|
|
||||||
if (subInfo != null) {
|
if (subInfo != null) {
|
||||||
mDataInfoController.updateDataLimit(info, mPolicyEditor.getPolicy(mDefaultTemplate));
|
|
||||||
summaryPreference.setWifiMode(/* isWifiMode */ false,
|
summaryPreference.setWifiMode(/* isWifiMode */ false,
|
||||||
/* usagePeriod */ null, /* isSingleWifi */ false);
|
/* usagePeriod */ null, /* isSingleWifi */ false);
|
||||||
} else {
|
} else {
|
||||||
|
@@ -55,7 +55,6 @@ public class WifiDataUsageSummaryPreferenceController extends DataUsageSummaryPr
|
|||||||
}
|
}
|
||||||
final DataUsageController.DataUsageInfo info = mDataUsageController.getDataUsageInfo(
|
final DataUsageController.DataUsageInfo info = mDataUsageController.getDataUsageInfo(
|
||||||
template);
|
template);
|
||||||
mDataInfoController.updateDataLimit(info, mPolicyEditor.getPolicy(template));
|
|
||||||
|
|
||||||
mPreference.setWifiMode(/* isWifiMode */ true, /* usagePeriod */
|
mPreference.setWifiMode(/* isWifiMode */ true, /* usagePeriod */
|
||||||
info.period, /* isSingleWifi */ true);
|
info.period, /* isSingleWifi */ true);
|
||||||
|
@@ -47,7 +47,6 @@ import com.android.internal.logging.nano.MetricsProto;
|
|||||||
import com.android.settings.testutils.FakeFeatureFactory;
|
import com.android.settings.testutils.FakeFeatureFactory;
|
||||||
import com.android.settings.testutils.shadow.ShadowEntityHeaderController;
|
import com.android.settings.testutils.shadow.ShadowEntityHeaderController;
|
||||||
import com.android.settings.widget.EntityHeaderController;
|
import com.android.settings.widget.EntityHeaderController;
|
||||||
import com.android.settingslib.NetworkPolicyEditor;
|
|
||||||
import com.android.settingslib.core.lifecycle.Lifecycle;
|
import com.android.settingslib.core.lifecycle.Lifecycle;
|
||||||
import com.android.settingslib.net.DataUsageController;
|
import com.android.settingslib.net.DataUsageController;
|
||||||
|
|
||||||
@@ -87,8 +86,6 @@ public class DataUsageSummaryPreferenceControllerTest {
|
|||||||
@Mock
|
@Mock
|
||||||
private DataUsageSummaryPreference mSummaryPreference;
|
private DataUsageSummaryPreference mSummaryPreference;
|
||||||
@Mock
|
@Mock
|
||||||
private NetworkPolicyEditor mPolicyEditor;
|
|
||||||
@Mock
|
|
||||||
private NetworkTemplate mNetworkTemplate;
|
private NetworkTemplate mNetworkTemplate;
|
||||||
@Mock
|
@Mock
|
||||||
private SubscriptionInfo mSubscriptionInfo;
|
private SubscriptionInfo mSubscriptionInfo;
|
||||||
@@ -145,7 +142,6 @@ public class DataUsageSummaryPreferenceControllerTest {
|
|||||||
mDataUsageController,
|
mDataUsageController,
|
||||||
mDataInfoController,
|
mDataInfoController,
|
||||||
mNetworkTemplate,
|
mNetworkTemplate,
|
||||||
mPolicyEditor,
|
|
||||||
mActivity, null, null, null, mDefaultSubscriptionId));
|
mActivity, null, null, null, mDefaultSubscriptionId));
|
||||||
doReturn(null).when(mController).getSubscriptionInfo(
|
doReturn(null).when(mController).getSubscriptionInfo(
|
||||||
SubscriptionManager.INVALID_SUBSCRIPTION_ID);
|
SubscriptionManager.INVALID_SUBSCRIPTION_ID);
|
||||||
@@ -372,7 +368,6 @@ public class DataUsageSummaryPreferenceControllerTest {
|
|||||||
mDataUsageController,
|
mDataUsageController,
|
||||||
mDataInfoController,
|
mDataInfoController,
|
||||||
mNetworkTemplate,
|
mNetworkTemplate,
|
||||||
mPolicyEditor,
|
|
||||||
mActivity, mLifecycle, mHeaderController, mPreferenceFragment,
|
mActivity, mLifecycle, mHeaderController, mPreferenceFragment,
|
||||||
mDefaultSubscriptionId));
|
mDefaultSubscriptionId));
|
||||||
|
|
||||||
|
@@ -24,7 +24,6 @@ import static org.mockito.Mockito.doReturn;
|
|||||||
import static org.mockito.Mockito.spy;
|
import static org.mockito.Mockito.spy;
|
||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.net.NetworkPolicyManager;
|
|
||||||
import android.telephony.TelephonyManager;
|
import android.telephony.TelephonyManager;
|
||||||
|
|
||||||
import androidx.fragment.app.FragmentActivity;
|
import androidx.fragment.app.FragmentActivity;
|
||||||
@@ -60,8 +59,6 @@ public class WifiDataUsageSummaryPreferenceControllerTest {
|
|||||||
@Mock
|
@Mock
|
||||||
TelephonyManager mTelephonyManager;
|
TelephonyManager mTelephonyManager;
|
||||||
@Mock
|
@Mock
|
||||||
NetworkPolicyManager mNetworkPolicyManager;
|
|
||||||
@Mock
|
|
||||||
DataUsageSummaryPreference mSummaryPreference;
|
DataUsageSummaryPreference mSummaryPreference;
|
||||||
@Mock
|
@Mock
|
||||||
DataUsageController mDataUsageController;
|
DataUsageController mDataUsageController;
|
||||||
@@ -75,8 +72,6 @@ public class WifiDataUsageSummaryPreferenceControllerTest {
|
|||||||
public void setUp() {
|
public void setUp() {
|
||||||
doReturn(mContext.getResources()).when(mActivity).getResources();
|
doReturn(mContext.getResources()).when(mActivity).getResources();
|
||||||
doReturn(mTelephonyManager).when(mActivity).getSystemService(TelephonyManager.class);
|
doReturn(mTelephonyManager).when(mActivity).getSystemService(TelephonyManager.class);
|
||||||
doReturn(mNetworkPolicyManager).when(mActivity)
|
|
||||||
.getSystemService(NetworkPolicyManager.class);
|
|
||||||
doNothing().when(mSummaryPreference).setWifiMode(anyBoolean(), anyString(), anyBoolean());
|
doNothing().when(mSummaryPreference).setWifiMode(anyBoolean(), anyString(), anyBoolean());
|
||||||
doReturn(mDataUsageInfo).when(mDataUsageController).getDataUsageInfo(any());
|
doReturn(mDataUsageInfo).when(mDataUsageController).getDataUsageInfo(any());
|
||||||
|
|
||||||
|
@@ -18,9 +18,6 @@ package com.android.settings.datausage;
|
|||||||
|
|
||||||
import static com.google.common.truth.Truth.assertThat;
|
import static com.google.common.truth.Truth.assertThat;
|
||||||
|
|
||||||
import android.net.NetworkPolicy;
|
|
||||||
import android.net.NetworkTemplate;
|
|
||||||
|
|
||||||
import androidx.test.ext.junit.runners.AndroidJUnit4;
|
import androidx.test.ext.junit.runners.AndroidJUnit4;
|
||||||
|
|
||||||
import com.android.settingslib.net.DataUsageController.DataUsageInfo;
|
import com.android.settingslib.net.DataUsageController.DataUsageInfo;
|
||||||
@@ -32,7 +29,6 @@ import org.junit.runner.RunWith;
|
|||||||
@RunWith(AndroidJUnit4.class)
|
@RunWith(AndroidJUnit4.class)
|
||||||
public class DataUsageInfoControllerTest {
|
public class DataUsageInfoControllerTest {
|
||||||
|
|
||||||
private static final int NEGATIVE = -1;
|
|
||||||
private static final int ZERO = 0;
|
private static final int ZERO = 0;
|
||||||
private static final int POSITIVE_SMALL = 1;
|
private static final int POSITIVE_SMALL = 1;
|
||||||
private static final int POSITIVE_LARGE = 5;
|
private static final int POSITIVE_LARGE = 5;
|
||||||
@@ -99,80 +95,4 @@ public class DataUsageInfoControllerTest {
|
|||||||
|
|
||||||
assertThat(mInfoController.getSummaryLimit(info)).isEqualTo(info.usageLevel);
|
assertThat(mInfoController.getSummaryLimit(info)).isEqualTo(info.usageLevel);
|
||||||
}
|
}
|
||||||
|
|
||||||
private NetworkPolicy getDefaultNetworkPolicy() {
|
|
||||||
NetworkTemplate template = new NetworkTemplate.Builder(NetworkTemplate.MATCH_WIFI).build();
|
|
||||||
int cycleDay = -1;
|
|
||||||
String cycleTimezone = "UTC";
|
|
||||||
long warningBytes = -1;
|
|
||||||
long limitBytes = -1;
|
|
||||||
return new NetworkPolicy(template, cycleDay, cycleTimezone, warningBytes, limitBytes, true);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void updateDataLimit_NullArguments_NoError() {
|
|
||||||
mInfoController.updateDataLimit(null, null);
|
|
||||||
mInfoController.updateDataLimit(info, null);
|
|
||||||
mInfoController.updateDataLimit(null, getDefaultNetworkPolicy());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void updateDataLimit_NegativeWarning_UpdatedToZero() {
|
|
||||||
NetworkPolicy policy = getDefaultNetworkPolicy();
|
|
||||||
policy.warningBytes = NEGATIVE;
|
|
||||||
|
|
||||||
mInfoController.updateDataLimit(info, policy);
|
|
||||||
|
|
||||||
assertThat(info.warningLevel).isEqualTo(ZERO);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void updateDataLimit_WarningZero_UpdatedToZero() {
|
|
||||||
NetworkPolicy policy = getDefaultNetworkPolicy();
|
|
||||||
policy.warningBytes = ZERO;
|
|
||||||
|
|
||||||
mInfoController.updateDataLimit(info, policy);
|
|
||||||
|
|
||||||
assertThat(info.warningLevel).isEqualTo(ZERO);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void updateDataLimit_WarningPositive_UpdatedToWarning() {
|
|
||||||
NetworkPolicy policy = getDefaultNetworkPolicy();
|
|
||||||
policy.warningBytes = POSITIVE_SMALL;
|
|
||||||
|
|
||||||
mInfoController.updateDataLimit(info, policy);
|
|
||||||
|
|
||||||
assertThat(info.warningLevel).isEqualTo(policy.warningBytes);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void updateDataLimit_LimitNegative_UpdatedToZero() {
|
|
||||||
NetworkPolicy policy = getDefaultNetworkPolicy();
|
|
||||||
policy.limitBytes = NEGATIVE;
|
|
||||||
|
|
||||||
mInfoController.updateDataLimit(info, policy);
|
|
||||||
|
|
||||||
assertThat(info.limitLevel).isEqualTo(ZERO);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void updateDataLimit_LimitZero_UpdatedToZero() {
|
|
||||||
NetworkPolicy policy = getDefaultNetworkPolicy();
|
|
||||||
policy.limitBytes = ZERO;
|
|
||||||
|
|
||||||
mInfoController.updateDataLimit(info, policy);
|
|
||||||
|
|
||||||
assertThat(info.limitLevel).isEqualTo(ZERO);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void updateDataLimit_LimitPositive_UpdatedToLimit() {
|
|
||||||
NetworkPolicy policy = getDefaultNetworkPolicy();
|
|
||||||
policy.limitBytes = POSITIVE_SMALL;
|
|
||||||
|
|
||||||
mInfoController.updateDataLimit(info, policy);
|
|
||||||
|
|
||||||
assertThat(info.limitLevel).isEqualTo(policy.limitBytes);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user