Loading core/java/android/os/storage/VolumeRecord.java +9 −0 Original line number Diff line number Diff line Loading @@ -25,6 +25,7 @@ import android.util.TimeUtils; import com.android.internal.util.IndentingPrintWriter; import com.android.internal.util.Preconditions; import java.util.Locale; import java.util.Objects; /** Loading @@ -45,6 +46,7 @@ public class VolumeRecord implements Parcelable { public String nickname; public int userFlags; public long createdMillis; public long lastSeenMillis; public long lastTrimMillis; public long lastBenchMillis; Loading @@ -61,6 +63,7 @@ public class VolumeRecord implements Parcelable { nickname = parcel.readString(); userFlags = parcel.readInt(); createdMillis = parcel.readLong(); lastSeenMillis = parcel.readLong(); lastTrimMillis = parcel.readLong(); lastBenchMillis = parcel.readLong(); } Loading @@ -73,6 +76,10 @@ public class VolumeRecord implements Parcelable { return fsUuid; } public String getNormalizedFsUuid() { return fsUuid != null ? fsUuid.toLowerCase(Locale.US) : null; } public String getNickname() { return nickname; } Loading @@ -97,6 +104,7 @@ public class VolumeRecord implements Parcelable { DebugUtils.flagsToString(VolumeRecord.class, "USER_FLAG_", userFlags)); pw.println(); pw.printPair("createdMillis", TimeUtils.formatForLogging(createdMillis)); pw.printPair("lastSeenMillis", TimeUtils.formatForLogging(lastSeenMillis)); pw.printPair("lastTrimMillis", TimeUtils.formatForLogging(lastTrimMillis)); pw.printPair("lastBenchMillis", TimeUtils.formatForLogging(lastBenchMillis)); pw.decreaseIndent(); Loading Loading @@ -155,6 +163,7 @@ public class VolumeRecord implements Parcelable { parcel.writeString(nickname); parcel.writeInt(userFlags); parcel.writeLong(createdMillis); parcel.writeLong(lastSeenMillis); parcel.writeLong(lastTrimMillis); parcel.writeLong(lastBenchMillis); } Loading services/core/java/com/android/server/StorageManagerService.java +10 −6 Original line number Diff line number Diff line Loading @@ -286,6 +286,7 @@ class StorageManagerService extends IStorageManager.Stub private static final String ATTR_NICKNAME = "nickname"; private static final String ATTR_USER_FLAGS = "userFlags"; private static final String ATTR_CREATED_MILLIS = "createdMillis"; private static final String ATTR_LAST_SEEN_MILLIS = "lastSeenMillis"; private static final String ATTR_LAST_TRIM_MILLIS = "lastTrimMillis"; private static final String ATTR_LAST_BENCH_MILLIS = "lastBenchMillis"; Loading Loading @@ -1313,7 +1314,7 @@ class StorageManagerService extends IStorageManager.Stub private void onVolumeStateChangedLocked(VolumeInfo vol, int oldState, int newState) { // Remember that we saw this volume so we're ready to accept user // metadata, or so we can annoy them when a private volume is ejected if (vol.isMountedReadable() && !TextUtils.isEmpty(vol.fsUuid)) { if (!TextUtils.isEmpty(vol.fsUuid)) { VolumeRecord rec = mRecords.get(vol.fsUuid); if (rec == null) { rec = new VolumeRecord(vol.type, vol.fsUuid); Loading @@ -1323,14 +1324,15 @@ class StorageManagerService extends IStorageManager.Stub rec.nickname = vol.disk.getDescription(); } mRecords.put(rec.fsUuid, rec); writeSettingsLocked(); } else { // Handle upgrade case where we didn't store partition GUID if (TextUtils.isEmpty(rec.partGuid)) { rec.partGuid = vol.partGuid; writeSettingsLocked(); } } rec.lastSeenMillis = System.currentTimeMillis(); writeSettingsLocked(); } mCallbacks.notifyVolumeStateChanged(vol, oldState, newState); Loading Loading @@ -1731,9 +1733,10 @@ class StorageManagerService extends IStorageManager.Stub meta.partGuid = readStringAttribute(in, ATTR_PART_GUID); meta.nickname = readStringAttribute(in, ATTR_NICKNAME); meta.userFlags = readIntAttribute(in, ATTR_USER_FLAGS); meta.createdMillis = readLongAttribute(in, ATTR_CREATED_MILLIS); meta.lastTrimMillis = readLongAttribute(in, ATTR_LAST_TRIM_MILLIS); meta.lastBenchMillis = readLongAttribute(in, ATTR_LAST_BENCH_MILLIS); meta.createdMillis = readLongAttribute(in, ATTR_CREATED_MILLIS, 0); meta.lastSeenMillis = readLongAttribute(in, ATTR_LAST_SEEN_MILLIS, 0); meta.lastTrimMillis = readLongAttribute(in, ATTR_LAST_TRIM_MILLIS, 0); meta.lastBenchMillis = readLongAttribute(in, ATTR_LAST_BENCH_MILLIS, 0); return meta; } Loading @@ -1745,6 +1748,7 @@ class StorageManagerService extends IStorageManager.Stub writeStringAttribute(out, ATTR_NICKNAME, rec.nickname); writeIntAttribute(out, ATTR_USER_FLAGS, rec.userFlags); writeLongAttribute(out, ATTR_CREATED_MILLIS, rec.createdMillis); writeLongAttribute(out, ATTR_LAST_SEEN_MILLIS, rec.lastSeenMillis); writeLongAttribute(out, ATTR_LAST_TRIM_MILLIS, rec.lastTrimMillis); writeLongAttribute(out, ATTR_LAST_BENCH_MILLIS, rec.lastBenchMillis); out.endTag(null, TAG_VOLUME); Loading Loading
core/java/android/os/storage/VolumeRecord.java +9 −0 Original line number Diff line number Diff line Loading @@ -25,6 +25,7 @@ import android.util.TimeUtils; import com.android.internal.util.IndentingPrintWriter; import com.android.internal.util.Preconditions; import java.util.Locale; import java.util.Objects; /** Loading @@ -45,6 +46,7 @@ public class VolumeRecord implements Parcelable { public String nickname; public int userFlags; public long createdMillis; public long lastSeenMillis; public long lastTrimMillis; public long lastBenchMillis; Loading @@ -61,6 +63,7 @@ public class VolumeRecord implements Parcelable { nickname = parcel.readString(); userFlags = parcel.readInt(); createdMillis = parcel.readLong(); lastSeenMillis = parcel.readLong(); lastTrimMillis = parcel.readLong(); lastBenchMillis = parcel.readLong(); } Loading @@ -73,6 +76,10 @@ public class VolumeRecord implements Parcelable { return fsUuid; } public String getNormalizedFsUuid() { return fsUuid != null ? fsUuid.toLowerCase(Locale.US) : null; } public String getNickname() { return nickname; } Loading @@ -97,6 +104,7 @@ public class VolumeRecord implements Parcelable { DebugUtils.flagsToString(VolumeRecord.class, "USER_FLAG_", userFlags)); pw.println(); pw.printPair("createdMillis", TimeUtils.formatForLogging(createdMillis)); pw.printPair("lastSeenMillis", TimeUtils.formatForLogging(lastSeenMillis)); pw.printPair("lastTrimMillis", TimeUtils.formatForLogging(lastTrimMillis)); pw.printPair("lastBenchMillis", TimeUtils.formatForLogging(lastBenchMillis)); pw.decreaseIndent(); Loading Loading @@ -155,6 +163,7 @@ public class VolumeRecord implements Parcelable { parcel.writeString(nickname); parcel.writeInt(userFlags); parcel.writeLong(createdMillis); parcel.writeLong(lastSeenMillis); parcel.writeLong(lastTrimMillis); parcel.writeLong(lastBenchMillis); } Loading
services/core/java/com/android/server/StorageManagerService.java +10 −6 Original line number Diff line number Diff line Loading @@ -286,6 +286,7 @@ class StorageManagerService extends IStorageManager.Stub private static final String ATTR_NICKNAME = "nickname"; private static final String ATTR_USER_FLAGS = "userFlags"; private static final String ATTR_CREATED_MILLIS = "createdMillis"; private static final String ATTR_LAST_SEEN_MILLIS = "lastSeenMillis"; private static final String ATTR_LAST_TRIM_MILLIS = "lastTrimMillis"; private static final String ATTR_LAST_BENCH_MILLIS = "lastBenchMillis"; Loading Loading @@ -1313,7 +1314,7 @@ class StorageManagerService extends IStorageManager.Stub private void onVolumeStateChangedLocked(VolumeInfo vol, int oldState, int newState) { // Remember that we saw this volume so we're ready to accept user // metadata, or so we can annoy them when a private volume is ejected if (vol.isMountedReadable() && !TextUtils.isEmpty(vol.fsUuid)) { if (!TextUtils.isEmpty(vol.fsUuid)) { VolumeRecord rec = mRecords.get(vol.fsUuid); if (rec == null) { rec = new VolumeRecord(vol.type, vol.fsUuid); Loading @@ -1323,14 +1324,15 @@ class StorageManagerService extends IStorageManager.Stub rec.nickname = vol.disk.getDescription(); } mRecords.put(rec.fsUuid, rec); writeSettingsLocked(); } else { // Handle upgrade case where we didn't store partition GUID if (TextUtils.isEmpty(rec.partGuid)) { rec.partGuid = vol.partGuid; writeSettingsLocked(); } } rec.lastSeenMillis = System.currentTimeMillis(); writeSettingsLocked(); } mCallbacks.notifyVolumeStateChanged(vol, oldState, newState); Loading Loading @@ -1731,9 +1733,10 @@ class StorageManagerService extends IStorageManager.Stub meta.partGuid = readStringAttribute(in, ATTR_PART_GUID); meta.nickname = readStringAttribute(in, ATTR_NICKNAME); meta.userFlags = readIntAttribute(in, ATTR_USER_FLAGS); meta.createdMillis = readLongAttribute(in, ATTR_CREATED_MILLIS); meta.lastTrimMillis = readLongAttribute(in, ATTR_LAST_TRIM_MILLIS); meta.lastBenchMillis = readLongAttribute(in, ATTR_LAST_BENCH_MILLIS); meta.createdMillis = readLongAttribute(in, ATTR_CREATED_MILLIS, 0); meta.lastSeenMillis = readLongAttribute(in, ATTR_LAST_SEEN_MILLIS, 0); meta.lastTrimMillis = readLongAttribute(in, ATTR_LAST_TRIM_MILLIS, 0); meta.lastBenchMillis = readLongAttribute(in, ATTR_LAST_BENCH_MILLIS, 0); return meta; } Loading @@ -1745,6 +1748,7 @@ class StorageManagerService extends IStorageManager.Stub writeStringAttribute(out, ATTR_NICKNAME, rec.nickname); writeIntAttribute(out, ATTR_USER_FLAGS, rec.userFlags); writeLongAttribute(out, ATTR_CREATED_MILLIS, rec.createdMillis); writeLongAttribute(out, ATTR_LAST_SEEN_MILLIS, rec.lastSeenMillis); writeLongAttribute(out, ATTR_LAST_TRIM_MILLIS, rec.lastTrimMillis); writeLongAttribute(out, ATTR_LAST_BENCH_MILLIS, rec.lastBenchMillis); out.endTag(null, TAG_VOLUME); Loading