Address API feedback for BackupRestoreEventLogger

1. Make BackupRestoreEventLogger final.
2. Rename logBackupMetaData to logBackupMetadata.
3. Make BackupRestoreDataType and BackupRestoreEventLogger @hide.

Bug: 261686083
Test: m -j
Change-Id: I6e45399bca3c290bdf0f7fc5a9c576952f269f25
This commit is contained in:
Ruslan Tkhakokhov
2023-03-06 22:38:37 +00:00
parent c3428ddcd8
commit 7ec43cf8d5
3 changed files with 20 additions and 23 deletions

View File

@@ -1797,25 +1797,19 @@ package android.app.backup {
field public final long bytesTransferred;
}
public class BackupRestoreEventLogger {
method public void logBackupMetaData(@android.app.backup.BackupRestoreEventLogger.BackupRestoreDataType @NonNull String, @NonNull String);
method public void logItemsBackedUp(@android.app.backup.BackupRestoreEventLogger.BackupRestoreDataType @NonNull String, int);
method public void logItemsBackupFailed(@android.app.backup.BackupRestoreEventLogger.BackupRestoreDataType @NonNull String, int, @android.app.backup.BackupRestoreEventLogger.BackupRestoreError @Nullable String);
method public void logItemsRestoreFailed(@android.app.backup.BackupRestoreEventLogger.BackupRestoreDataType @NonNull String, int, @android.app.backup.BackupRestoreEventLogger.BackupRestoreError @Nullable String);
method public void logItemsRestored(@android.app.backup.BackupRestoreEventLogger.BackupRestoreDataType @NonNull String, int);
method public void logRestoreMetadata(@android.app.backup.BackupRestoreEventLogger.BackupRestoreDataType @NonNull String, @NonNull String);
}
@java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface BackupRestoreEventLogger.BackupRestoreDataType {
}
@java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface BackupRestoreEventLogger.BackupRestoreError {
public final class BackupRestoreEventLogger {
method public void logBackupMetadata(@NonNull String, @NonNull String);
method public void logItemsBackedUp(@NonNull String, int);
method public void logItemsBackupFailed(@NonNull String, int, @Nullable String);
method public void logItemsRestoreFailed(@NonNull String, int, @Nullable String);
method public void logItemsRestored(@NonNull String, int);
method public void logRestoreMetadata(@NonNull String, @NonNull String);
}
public static final class BackupRestoreEventLogger.DataTypeResult implements android.os.Parcelable {
ctor public BackupRestoreEventLogger.DataTypeResult(@NonNull String);
method public int describeContents();
method @android.app.backup.BackupRestoreEventLogger.BackupRestoreDataType @NonNull public String getDataType();
method @NonNull public String getDataType();
method @NonNull public java.util.Map<java.lang.String,java.lang.Integer> getErrors();
method public int getFailCount();
method @Nullable public byte[] getMetadataHash();

View File

@@ -47,7 +47,7 @@ import java.util.Map;
* @hide
*/
@SystemApi
public class BackupRestoreEventLogger {
public final class BackupRestoreEventLogger {
private static final String TAG = "BackupRestoreEventLogger";
/**
@@ -61,6 +61,8 @@ public class BackupRestoreEventLogger {
/**
* Denotes that the annotated element identifies a data type as required by the logging methods
* of {@code BackupRestoreEventLogger}
*
* @hide
*/
@Retention(RetentionPolicy.SOURCE)
public @interface BackupRestoreDataType {}
@@ -68,6 +70,8 @@ public class BackupRestoreEventLogger {
/**
* Denotes that the annotated element identifies an error type as required by the logging
* methods of {@code BackupRestoreEventLogger}
*
* @hide
*/
@Retention(RetentionPolicy.SOURCE)
public @interface BackupRestoreError {}
@@ -144,7 +148,7 @@ public class BackupRestoreEventLogger {
* @param dataType the type of data being backed up.
* @param metaData the metadata associated with the data type.
*/
public void logBackupMetaData(@NonNull @BackupRestoreDataType String dataType,
public void logBackupMetadata(@NonNull @BackupRestoreDataType String dataType,
@NonNull String metaData) {
logMetaData(OperationType.BACKUP, dataType, metaData);
}

View File

@@ -23,7 +23,6 @@ import static com.google.common.truth.Truth.assertThat;
import static junit.framework.Assert.fail;
import android.app.backup.BackupRestoreEventLogger.BackupRestoreDataType;
import android.app.backup.BackupRestoreEventLogger.DataTypeResult;
import android.os.Parcel;
import android.platform.test.annotations.Presubmit;
@@ -78,7 +77,7 @@ public class BackupRestoreEventLoggerTest {
mLogger.logItemsBackedUp(DATA_TYPE_1, /* count */ 5);
mLogger.logItemsBackupFailed(DATA_TYPE_1, /* count */ 5, ERROR_1);
mLogger.logBackupMetaData(DATA_TYPE_1, /* metadata */ "metadata");
mLogger.logBackupMetadata(DATA_TYPE_1, /* metadata */ "metadata");
assertThat(getResultForDataTypeIfPresent(mLogger, DATA_TYPE_1)).isEqualTo(Optional.empty());
}
@@ -91,7 +90,7 @@ public class BackupRestoreEventLoggerTest {
String dataType = DATA_TYPE_1 + i;
mLogger.logItemsBackedUp(dataType, /* count */ 5);
mLogger.logItemsBackupFailed(dataType, /* count */ 5, /* error */ null);
mLogger.logBackupMetaData(dataType, METADATA_1);
mLogger.logBackupMetadata(dataType, METADATA_1);
assertThat(getResultForDataTypeIfPresent(mLogger, dataType)).isNotEqualTo(
Optional.empty());
@@ -127,8 +126,8 @@ public class BackupRestoreEventLoggerTest {
public void testLogBackupMetadata_repeatedCalls_recordsLatestMetadataHash() {
mLogger = new BackupRestoreEventLogger(BACKUP);
mLogger.logBackupMetaData(DATA_TYPE_1, METADATA_1);
mLogger.logBackupMetaData(DATA_TYPE_1, METADATA_2);
mLogger.logBackupMetadata(DATA_TYPE_1, METADATA_1);
mLogger.logBackupMetadata(DATA_TYPE_1, METADATA_2);
byte[] recordedHash = getResultForDataType(mLogger, DATA_TYPE_1).getMetadataHash();
byte[] expectedHash = getMetaDataHash(METADATA_2);
@@ -315,7 +314,7 @@ public class BackupRestoreEventLoggerTest {
}
private static DataTypeResult getResultForDataType(
BackupRestoreEventLogger logger, @BackupRestoreDataType String dataType) {
BackupRestoreEventLogger logger, String dataType) {
Optional<DataTypeResult> result = getResultForDataTypeIfPresent(logger, dataType);
if (result.isEmpty()) {
fail("Failed to find result for data type: " + dataType);
@@ -324,7 +323,7 @@ public class BackupRestoreEventLoggerTest {
}
private static Optional<DataTypeResult> getResultForDataTypeIfPresent(
BackupRestoreEventLogger logger, @BackupRestoreDataType String dataType) {
BackupRestoreEventLogger logger, String dataType) {
List<DataTypeResult> resultList = logger.getLoggingResults();
return resultList.stream()
.filter(dataTypeResult -> dataTypeResult.getDataType().equals(dataType))