Support for nested bundles in setApplicationRestrictions

Replaced RestrictionUtils.restrictionsToBundle with RestrictionsManager.
convertRestrictionsToBundle.

Bug: 19540606
Change-Id: I32b264e04d5d177ea5b4c39a8ace5ee0ce907970
diff --git a/src/com/android/settings/users/AppRestrictionsFragment.java b/src/com/android/settings/users/AppRestrictionsFragment.java
index e09d650..a166f0d 100644
--- a/src/com/android/settings/users/AppRestrictionsFragment.java
+++ b/src/com/android/settings/users/AppRestrictionsFragment.java
@@ -23,6 +23,7 @@
 import android.content.Intent;
 import android.content.IntentFilter;
 import android.content.RestrictionEntry;
+import android.content.RestrictionsManager;
 import android.content.pm.ActivityInfo;
 import android.content.pm.ApplicationInfo;
 import android.content.pm.IPackageManager;
@@ -841,7 +842,7 @@
                             continue;
                         }
                         mUserManager.setApplicationRestrictions(packageName,
-                                RestrictionUtils.restrictionsToBundle(restrictions),
+                                RestrictionsManager.convertRestrictionsToBundle(restrictions),
                                 mUser);
                         break;
                     }
@@ -915,7 +916,7 @@
                 onRestrictionsReceived(preference, packageName, restrictions);
                 if (mRestrictedProfile) {
                     mUserManager.setApplicationRestrictions(packageName,
-                            RestrictionUtils.restrictionsToBundle(restrictions), mUser);
+                            RestrictionsManager.convertRestrictionsToBundle(restrictions), mUser);
                 }
             } else if (restrictionsIntent != null) {
                 preference.setRestrictions(restrictions);
@@ -1046,7 +1047,7 @@
                 // If there's a valid result, persist it to the user manager.
                 pref.setRestrictions(list);
                 mUserManager.setApplicationRestrictions(packageName,
-                        RestrictionUtils.restrictionsToBundle(list), mUser);
+                        RestrictionsManager.convertRestrictionsToBundle(list), mUser);
             } else if (bundle != null) {
                 // If there's a valid result, persist it to the user manager.
                 mUserManager.setApplicationRestrictions(packageName, bundle, mUser);
diff --git a/src/com/android/settings/users/RestrictionUtils.java b/src/com/android/settings/users/RestrictionUtils.java
index e8d46e9..b36cb3e 100644
--- a/src/com/android/settings/users/RestrictionUtils.java
+++ b/src/com/android/settings/users/RestrictionUtils.java
@@ -90,18 +90,4 @@
         }
         um.setUserRestrictions(userRestrictions, user);
     }
-
-    public static Bundle restrictionsToBundle(ArrayList<RestrictionEntry> entries) {
-        final Bundle bundle = new Bundle();
-        for (RestrictionEntry entry : entries) {
-            if (entry.getType() == RestrictionEntry.TYPE_BOOLEAN) {
-                bundle.putBoolean(entry.getKey(), entry.getSelectedState());
-            } else if (entry.getType() == RestrictionEntry.TYPE_MULTI_SELECT) {
-                bundle.putStringArray(entry.getKey(), entry.getAllSelectedStrings());
-            } else {
-                bundle.putString(entry.getKey(), entry.getSelectedString());
-            }
-        }
-        return bundle;
-    }
 }