Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f5183c6e authored by Ayush Sharma's avatar Ayush Sharma Committed by Android (Google) Code Review
Browse files

Merge "Construct ESIDCalculator class object just once"

parents 82bce7bc c152198e
Loading
Loading
Loading
Loading
+19 −10
Original line number Diff line number Diff line
@@ -648,6 +648,8 @@ public class DevicePolicyManagerService extends BaseIDevicePolicyManager {
    private final DevicePolicyCacheImpl mPolicyCache = new DevicePolicyCacheImpl();
    private final DeviceStateCacheImpl mStateCache = new DeviceStateCacheImpl();
    private final Object mESIDInitilizationLock = new Object();
    private EnterpriseSpecificIdCalculator mEsidCalculator;
    /**
     * Contains (package-user) pairs to remove. An entry (p, u) implies that removal of package p
@@ -1473,6 +1475,10 @@ public class DevicePolicyManagerService extends BaseIDevicePolicyManager {
            return new LockPatternUtils(mContext);
        }
        EnterpriseSpecificIdCalculator newEnterpriseSpecificIdCalculator() {
            return new EnterpriseSpecificIdCalculator(mContext);
        }
        boolean storageManagerIsFileBasedEncryptionEnabled() {
            return StorageManager.isFileEncryptedNativeOnly();
        }
@@ -16919,6 +16925,14 @@ public class DevicePolicyManagerService extends BaseIDevicePolicyManager {
        Slogf.i(LOG_TAG, "Setting Enterprise ID to %s for user %d", organizationId, userId);
        synchronized (mESIDInitilizationLock) {
            if (mEsidCalculator == null) {
                mInjector.binderWithCleanCallingIdentity(() -> {
                    mEsidCalculator = mInjector.newEnterpriseSpecificIdCalculator();
                });
            }
        }
        final String ownerPackage;
        synchronized (getLockObject()) {
            final ActiveAdmin owner = getDeviceOrProfileOwnerAdminLocked(userId);
@@ -16936,16 +16950,11 @@ public class DevicePolicyManagerService extends BaseIDevicePolicyManager {
                    "The organization ID has been previously set to a different value and cannot "
                            + "be changed");
            final String dpcPackage = owner.info.getPackageName();
            mInjector.binderWithCleanCallingIdentity(() -> {
                EnterpriseSpecificIdCalculator esidCalculator =
                        new EnterpriseSpecificIdCalculator(mContext);
                final String esid = esidCalculator.calculateEnterpriseId(dpcPackage,
            final String esid = mEsidCalculator.calculateEnterpriseId(dpcPackage,
                    organizationId);
            owner.mOrganizationId = organizationId;
            owner.mEnrollmentSpecificId = esid;
            saveSettingsLocked(userId);
            });
        }
        DevicePolicyEventLogger