Helper classes for IpcDataCache clients
Bug: 227653108 This adds a helper class that can reduce much of the boilerplate in code that uses IpcDataCache (or the internal-only variant, PropertyInvalidatedCache). See the changes to DevicePolicyManager for example usage. Two PropertyInvalidatedCaches APIs are exposed for testing. The method createPropertyName() is changed so that apis like "Foo" are converted to "foo", not "_foo". Unit tests for the new behavior are added to IpcDataCacheTest. This was manually tested by dumping the cache info from builds with and without this change. Special attention is paid to the DevicePolicyManager caches. The same caches were found (as identified by their key and api) and the caches were enabled/disabled the same. In the course of testing, multiple instances of DevicePolicyManager caches were observed. Cache performance is better if the caches are static; making them static will be addressed in b/228452829. Test: * atest FrameworksCoreTests:IpcDataCacheTest * atest FrameworksCoreTests:PropertyInvalidatedCacheTests * atest FrameworksServicesTests:DevicePolicyConstantsTest * atest FrameworksServicesTests:DevicePolicyEventLoggerTest * atest FrameworksServicesTests:DevicePolicyManagerServiceMigrationTest * atest FrameworksServicesTests:DevicePolicyManagerTest * atest FrameworksServicesTests:EnterpriseSpecificIdCalculatorTest * atest FrameworksServicesTests:OverlayPackagesProviderTest * atest FrameworksServicesTests:OwnersTest * atest FrameworksServicesTests:PolicyVersionUpgraderTest * atest FrameworksServicesTests:SecurityEventTest * atest FrameworksServicesTests:SystemUpdatePolicyTest * atest FrameworksServicesTests:TransferOwnershipMetadataManagerTest * atest MixedDeviceOwnerTest#testIsDeviceOrganizationOwnedWithManagedProfile * atest MixedDeviceOwnerTest#testSetKeyguardDisabledFeatures * atest MixedManagedProfileOwnerTest#testIsDeviceOrganizationOwnedWithManagedProfile * atest MixedManagedProfileOwnerTest#testNetworkLoggingDelegate * atest MixedManagedProfileOwnerTest#testSetKeyguardDisabledFeatures * atest OrgOwnedProfileOwnerTest#testIsDeviceOrganizationOwnedWithManagedProfile * atest OrgOwnedProfileOwnerTest#testNetworkLoggingDelegate * atest OrgOwnedProfileOwnerTest#testSetKeyguardDisabledFeatures * atest android.devicepolicy.cts.DevicePolicyManagerTest * atest android.devicepolicy.cts.NetworkLoggingTest * atest com.android.cts.devicepolicy.DeviceOwnerTest#testAdminActionBookkeeping Change-Id: I2f4fe4ed25db5fb3100334b9d2ce748ee928c10d
Loading
Please register or sign in to comment