store preferential configs if no error from CS
store preferential configs in deivice policy only if no error from connectivity service Bug: 283999128 Test: Added new test to CTS and ran PreferentialNetworkServiceTest Merged-In: I8421e4d21b8719426cfb998d96742e065641efcd Change-Id: I8421e4d21b8719426cfb998d96742e065641efcd
This commit is contained in:
@@ -14836,17 +14836,23 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
|
||||
"Caller is not managed profile owner or device owner;"
|
||||
+ " only managed profile owner or device owner may control the preferential"
|
||||
+ " network service");
|
||||
synchronized (getLockObject()) {
|
||||
final ActiveAdmin requiredAdmin = getDeviceOrProfileOwnerAdminLocked(
|
||||
caller.getUserId());
|
||||
if (!requiredAdmin.mPreferentialNetworkServiceConfigs.equals(
|
||||
preferentialNetworkServiceConfigs)) {
|
||||
requiredAdmin.mPreferentialNetworkServiceConfigs =
|
||||
new ArrayList<>(preferentialNetworkServiceConfigs);
|
||||
saveSettingsLocked(caller.getUserId());
|
||||
|
||||
try {
|
||||
updateNetworkPreferenceForUser(caller.getUserId(), preferentialNetworkServiceConfigs);
|
||||
synchronized (getLockObject()) {
|
||||
final ActiveAdmin requiredAdmin = getDeviceOrProfileOwnerAdminLocked(
|
||||
caller.getUserId());
|
||||
if (!requiredAdmin.mPreferentialNetworkServiceConfigs.equals(
|
||||
preferentialNetworkServiceConfigs)) {
|
||||
requiredAdmin.mPreferentialNetworkServiceConfigs =
|
||||
new ArrayList<>(preferentialNetworkServiceConfigs);
|
||||
saveSettingsLocked(caller.getUserId());
|
||||
}
|
||||
}
|
||||
} catch (Exception e) {
|
||||
Slogf.e(LOG_TAG, "Failed to set preferential network service configs");
|
||||
throw e;
|
||||
}
|
||||
updateNetworkPreferenceForUser(caller.getUserId(), preferentialNetworkServiceConfigs);
|
||||
DevicePolicyEventLogger
|
||||
.createEvent(DevicePolicyEnums.SET_PREFERENTIAL_NETWORK_SERVICE_ENABLED)
|
||||
.setBoolean(preferentialNetworkServiceConfigs
|
||||
|
||||
Reference in New Issue
Block a user