Progress towards split storage categories.

Cleans up StorageVolumePreferenceCategory creation, and uses new
isPrimary() API instead of passing around hacky "i == 0" derived
value.

Bug: 7003520
Change-Id: I9eb7164035b5368ee795e35b22e750aebbf3b159
This commit is contained in:
Jeff Sharkey
2012-09-06 22:46:21 -07:00
parent 88220b7204
commit 96c2f8c508
4 changed files with 69 additions and 75 deletions

View File

@@ -115,12 +115,11 @@ public class StorageMeasurement {
public void updateExact(StorageMeasurement meas, Bundle bundle);
}
private StorageMeasurement(
Context context, StorageVolume storageVolume, UserHandle user, boolean isPrimary) {
mStorageVolume = storageVolume;
private StorageMeasurement(Context context, StorageVolume volume, UserHandle user) {
mStorageVolume = volume;
mUser = Preconditions.checkNotNull(user);
mIsInternal = storageVolume == null;
mIsPrimary = !mIsInternal && isPrimary;
mIsInternal = volume == null;
mIsPrimary = volume != null ? volume.isPrimary() : false;
// Start the thread that will measure the disk usage.
final HandlerThread handlerThread = new HandlerThread("MemoryMeasurement");
@@ -139,14 +138,14 @@ public class StorageMeasurement {
* @param isPrimary true when this storage volume is the primary volume
*/
public static StorageMeasurement getInstance(
Context context, StorageVolume storageVolume, UserHandle user, boolean isPrimary) {
Context context, StorageVolume storageVolume, UserHandle user) {
final Pair<StorageVolume, UserHandle> key = new Pair<StorageVolume, UserHandle>(
storageVolume, user);
synchronized (sInstances) {
StorageMeasurement value = sInstances.get(key);
if (value == null) {
value = new StorageMeasurement(
context.getApplicationContext(), storageVolume, user, isPrimary);
context.getApplicationContext(), storageVolume, user);
sInstances.put(key, value);
}
return value;