Iterate NetworkPolicy towards SubscriptionPlan.

As part of getting Settings ready to roll towards SubscriptionPlan,
reduce references to NetworkPolicy internal fields.  All usage cycle
details are now obtained from an Iterator which converts to
SubscriptionPlan under the hood.

Bug: 63391323
Test: bit FrameworksServicesTests:com.android.server.NetworkPolicyManagerServiceTest
Exempt-From-Owner-Approval: Bug 63673347
Change-Id: I0e1357eef092a328c05f6a709aba0f106554631e
This commit is contained in:
Jeff Sharkey
2017-07-13 16:47:51 -06:00
parent dc09269c81
commit 47f51fac35
3 changed files with 41 additions and 31 deletions

View File

@@ -14,9 +14,12 @@
package com.android.settings.datausage;
import static android.net.NetworkPolicy.CYCLE_NONE;
import static android.net.NetworkPolicy.LIMIT_DISABLED;
import static android.net.NetworkPolicy.WARNING_DISABLED;
import android.app.AlertDialog;
import android.app.Dialog;
import android.app.DialogFragment;
import android.app.Fragment;
import android.content.Context;
import android.content.DialogInterface;
@@ -42,9 +45,6 @@ import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
import com.android.settingslib.NetworkPolicyEditor;
import com.android.settingslib.net.DataUsageController;
import static android.net.NetworkPolicy.LIMIT_DISABLED;
import static android.net.NetworkPolicy.WARNING_DISABLED;
public class BillingCycleSettings extends DataUsageBase implements
Preference.OnPreferenceChangeListener, DataUsageEditController {
@@ -100,11 +100,15 @@ public class BillingCycleSettings extends DataUsageBase implements
}
private void updatePrefs() {
NetworkPolicy policy = services.mPolicyEditor.getPolicy(mNetworkTemplate);
mBillingCycle.setSummary(getString(R.string.billing_cycle_fragment_summary, policy != null ?
policy.cycleDay : 1));
if (policy != null && policy.warningBytes != WARNING_DISABLED) {
mDataWarning.setSummary(Formatter.formatFileSize(getContext(), policy.warningBytes));
final int cycleDay = services.mPolicyEditor.getPolicyCycleDay(mNetworkTemplate);
if (cycleDay != CYCLE_NONE) {
mBillingCycle.setSummary(getString(R.string.billing_cycle_fragment_summary, cycleDay));
} else {
mBillingCycle.setSummary(null);
}
final long warningBytes = services.mPolicyEditor.getPolicyWarningBytes(mNetworkTemplate);
if (warningBytes != WARNING_DISABLED) {
mDataWarning.setSummary(Formatter.formatFileSize(getContext(), warningBytes));
mDataWarning.setEnabled(true);
mEnableDataWarning.setChecked(true);
} else {
@@ -112,8 +116,9 @@ public class BillingCycleSettings extends DataUsageBase implements
mDataWarning.setEnabled(false);
mEnableDataWarning.setChecked(false);
}
if (policy != null && policy.limitBytes != LIMIT_DISABLED) {
mDataLimit.setSummary(Formatter.formatFileSize(getContext(), policy.limitBytes));
final long limitBytes = services.mPolicyEditor.getPolicyWarningBytes(mNetworkTemplate);
if (limitBytes != LIMIT_DISABLED) {
mDataLimit.setSummary(Formatter.formatFileSize(getContext(), limitBytes));
mDataLimit.setEnabled(true);
mEnableDataLimit.setChecked(true);
} else {
@@ -305,7 +310,7 @@ public class BillingCycleSettings extends DataUsageBase implements
}
/**
* Dialog to edit {@link NetworkPolicy#cycleDay}.
* Dialog to edit {@link NetworkPolicy}.
*/
public static class CycleEditorFragment extends InstrumentedDialogFragment implements
DialogInterface.OnClickListener {