Merge "Make BackupRestoreEventLogger methods void"
This commit is contained in:
committed by
Android (Google) Code Review
commit
a3da65d1e5
@@ -53,6 +53,8 @@ public class BackupRestoreEventLogger {
|
||||
|
||||
/**
|
||||
* Operation types for which this logger can be used.
|
||||
*
|
||||
* @hide
|
||||
*/
|
||||
@Retention(RetentionPolicy.SOURCE)
|
||||
@IntDef({
|
||||
@@ -87,6 +89,8 @@ public class BackupRestoreEventLogger {
|
||||
* {@link OperationType}. Attempts to use logging methods that don't match
|
||||
* the specified operation type will be rejected (e.g. use backup methods
|
||||
* for a restore logger and vice versa).
|
||||
*
|
||||
* @hide
|
||||
*/
|
||||
public BackupRestoreEventLogger(@OperationType int operationType) {
|
||||
mOperationType = operationType;
|
||||
@@ -111,11 +115,9 @@ public class BackupRestoreEventLogger {
|
||||
*
|
||||
* @param dataType the type of data being backed.
|
||||
* @param count number of items of the given type that have been successfully backed up.
|
||||
*
|
||||
* @return boolean, indicating whether the log has been accepted.
|
||||
*/
|
||||
public boolean logItemsBackedUp(@NonNull @BackupRestoreDataType String dataType, int count) {
|
||||
return logSuccess(OperationType.BACKUP, dataType, count);
|
||||
public void logItemsBackedUp(@NonNull @BackupRestoreDataType String dataType, int count) {
|
||||
logSuccess(OperationType.BACKUP, dataType, count);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -130,12 +132,10 @@ public class BackupRestoreEventLogger {
|
||||
* @param dataType the type of data being backed.
|
||||
* @param count number of items of the given type that have failed to back up.
|
||||
* @param error optional, the error that has caused the failure.
|
||||
*
|
||||
* @return boolean, indicating whether the log has been accepted.
|
||||
*/
|
||||
public boolean logItemsBackupFailed(@NonNull @BackupRestoreDataType String dataType, int count,
|
||||
public void logItemsBackupFailed(@NonNull @BackupRestoreDataType String dataType, int count,
|
||||
@Nullable @BackupRestoreError String error) {
|
||||
return logFailure(OperationType.BACKUP, dataType, count, error);
|
||||
logFailure(OperationType.BACKUP, dataType, count, error);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -151,12 +151,10 @@ public class BackupRestoreEventLogger {
|
||||
*
|
||||
* @param dataType the type of data being backed up.
|
||||
* @param metaData the metadata associated with the data type.
|
||||
*
|
||||
* @return boolean, indicating whether the log has been accepted.
|
||||
*/
|
||||
public boolean logBackupMetaData(@NonNull @BackupRestoreDataType String dataType,
|
||||
public void logBackupMetaData(@NonNull @BackupRestoreDataType String dataType,
|
||||
@NonNull String metaData) {
|
||||
return logMetaData(OperationType.BACKUP, dataType, metaData);
|
||||
logMetaData(OperationType.BACKUP, dataType, metaData);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -172,11 +170,9 @@ public class BackupRestoreEventLogger {
|
||||
*
|
||||
* @param dataType the type of data being restored.
|
||||
* @param count number of items of the given type that have been successfully restored.
|
||||
*
|
||||
* @return boolean, indicating whether the log has been accepted.
|
||||
*/
|
||||
public boolean logItemsRestored(@NonNull @BackupRestoreDataType String dataType, int count) {
|
||||
return logSuccess(OperationType.RESTORE, dataType, count);
|
||||
public void logItemsRestored(@NonNull @BackupRestoreDataType String dataType, int count) {
|
||||
logSuccess(OperationType.RESTORE, dataType, count);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -193,12 +189,10 @@ public class BackupRestoreEventLogger {
|
||||
* @param dataType the type of data being restored.
|
||||
* @param count number of items of the given type that have failed to restore.
|
||||
* @param error optional, the error that has caused the failure.
|
||||
*
|
||||
* @return boolean, indicating whether the log has been accepted.
|
||||
*/
|
||||
public boolean logItemsRestoreFailed(@NonNull @BackupRestoreDataType String dataType, int count,
|
||||
public void logItemsRestoreFailed(@NonNull @BackupRestoreDataType String dataType, int count,
|
||||
@Nullable @BackupRestoreError String error) {
|
||||
return logFailure(OperationType.RESTORE, dataType, count, error);
|
||||
logFailure(OperationType.RESTORE, dataType, count, error);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -216,12 +210,10 @@ public class BackupRestoreEventLogger {
|
||||
*
|
||||
* @param dataType the type of data being restored.
|
||||
* @param metadata the metadata associated with the data type.
|
||||
*
|
||||
* @return boolean, indicating whether the log has been accepted.
|
||||
*/
|
||||
public boolean logRestoreMetadata(@NonNull @BackupRestoreDataType String dataType,
|
||||
public void logRestoreMetadata(@NonNull @BackupRestoreDataType String dataType,
|
||||
@NonNull String metadata) {
|
||||
return logMetaData(OperationType.RESTORE, dataType, metadata);
|
||||
logMetaData(OperationType.RESTORE, dataType, metadata);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -240,52 +232,47 @@ public class BackupRestoreEventLogger {
|
||||
*
|
||||
* @hide
|
||||
*/
|
||||
public @OperationType int getOperationType() {
|
||||
@OperationType
|
||||
public int getOperationType() {
|
||||
return mOperationType;
|
||||
}
|
||||
|
||||
private boolean logSuccess(@OperationType int operationType,
|
||||
private void logSuccess(@OperationType int operationType,
|
||||
@BackupRestoreDataType String dataType, int count) {
|
||||
DataTypeResult dataTypeResult = getDataTypeResult(operationType, dataType);
|
||||
if (dataTypeResult == null) {
|
||||
return false;
|
||||
return;
|
||||
}
|
||||
|
||||
dataTypeResult.mSuccessCount += count;
|
||||
mResults.put(dataType, dataTypeResult);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
private boolean logFailure(@OperationType int operationType,
|
||||
private void logFailure(@OperationType int operationType,
|
||||
@NonNull @BackupRestoreDataType String dataType, int count,
|
||||
@Nullable @BackupRestoreError String error) {
|
||||
DataTypeResult dataTypeResult = getDataTypeResult(operationType, dataType);
|
||||
if (dataTypeResult == null) {
|
||||
return false;
|
||||
return;
|
||||
}
|
||||
|
||||
dataTypeResult.mFailCount += count;
|
||||
if (error != null) {
|
||||
dataTypeResult.mErrors.merge(error, count, Integer::sum);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
private boolean logMetaData(@OperationType int operationType,
|
||||
private void logMetaData(@OperationType int operationType,
|
||||
@NonNull @BackupRestoreDataType String dataType, @NonNull String metaData) {
|
||||
if (mHashDigest == null) {
|
||||
return false;
|
||||
return;
|
||||
}
|
||||
DataTypeResult dataTypeResult = getDataTypeResult(operationType, dataType);
|
||||
if (dataTypeResult == null) {
|
||||
return false;
|
||||
return;
|
||||
}
|
||||
|
||||
dataTypeResult.mMetadataHash = getMetaDataHash(metaData);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -63,18 +63,22 @@ public class BackupRestoreEventLoggerTest {
|
||||
public void testBackupLogger_rejectsRestoreLogs() {
|
||||
mLogger = new BackupRestoreEventLogger(BACKUP);
|
||||
|
||||
assertThat(mLogger.logItemsRestored(DATA_TYPE_1, /* count */ 5)).isFalse();
|
||||
assertThat(mLogger.logItemsRestoreFailed(DATA_TYPE_1, /* count */ 5, ERROR_1)).isFalse();
|
||||
assertThat(mLogger.logRestoreMetadata(DATA_TYPE_1, /* metadata */ "metadata")).isFalse();
|
||||
mLogger.logItemsRestored(DATA_TYPE_1, /* count */ 5);
|
||||
mLogger.logItemsRestoreFailed(DATA_TYPE_1, /* count */ 5, ERROR_1);
|
||||
mLogger.logRestoreMetadata(DATA_TYPE_1, /* metadata */ "metadata");
|
||||
|
||||
assertThat(getResultForDataTypeIfPresent(mLogger, DATA_TYPE_1)).isEqualTo(Optional.empty());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testRestoreLogger_rejectsBackupLogs() {
|
||||
mLogger = new BackupRestoreEventLogger(RESTORE);
|
||||
|
||||
assertThat(mLogger.logItemsBackedUp(DATA_TYPE_1, /* count */ 5)).isFalse();
|
||||
assertThat(mLogger.logItemsBackupFailed(DATA_TYPE_1, /* count */ 5, ERROR_1)).isFalse();
|
||||
assertThat(mLogger.logBackupMetaData(DATA_TYPE_1, /* metadata */ "metadata")).isFalse();
|
||||
mLogger.logItemsBackedUp(DATA_TYPE_1, /* count */ 5);
|
||||
mLogger.logItemsBackupFailed(DATA_TYPE_1, /* count */ 5, ERROR_1);
|
||||
mLogger.logBackupMetaData(DATA_TYPE_1, /* metadata */ "metadata");
|
||||
|
||||
assertThat(getResultForDataTypeIfPresent(mLogger, DATA_TYPE_1)).isEqualTo(Optional.empty());
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -83,16 +87,17 @@ public class BackupRestoreEventLoggerTest {
|
||||
|
||||
for (int i = 0; i < DATA_TYPES_ALLOWED; i++) {
|
||||
String dataType = DATA_TYPE_1 + i;
|
||||
assertThat(mLogger.logItemsBackedUp(dataType, /* count */ 5)).isTrue();
|
||||
assertThat(mLogger.logItemsBackupFailed(dataType, /* count */ 5, /* error */ null))
|
||||
.isTrue();
|
||||
assertThat(mLogger.logBackupMetaData(dataType, METADATA_1)).isTrue();
|
||||
mLogger.logItemsBackedUp(dataType, /* count */ 5);
|
||||
mLogger.logItemsBackupFailed(dataType, /* count */ 5, /* error */ null);
|
||||
mLogger.logBackupMetaData(dataType, METADATA_1);
|
||||
|
||||
assertThat(getResultForDataTypeIfPresent(mLogger, dataType)).isNotEqualTo(
|
||||
Optional.empty());
|
||||
}
|
||||
|
||||
assertThat(mLogger.logItemsBackedUp(DATA_TYPE_2, /* count */ 5)).isFalse();
|
||||
assertThat(mLogger.logItemsBackupFailed(DATA_TYPE_2, /* count */ 5, /* error */ null))
|
||||
.isFalse();
|
||||
assertThat(mLogger.logRestoreMetadata(DATA_TYPE_2, METADATA_1)).isFalse();
|
||||
mLogger.logItemsBackedUp(DATA_TYPE_2, /* count */ 5);
|
||||
mLogger.logItemsBackupFailed(DATA_TYPE_2, /* count */ 5, /* error */ null);
|
||||
mLogger.logRestoreMetadata(DATA_TYPE_2, METADATA_1);
|
||||
assertThat(getResultForDataTypeIfPresent(mLogger, DATA_TYPE_2)).isEqualTo(Optional.empty());
|
||||
}
|
||||
|
||||
@@ -102,16 +107,17 @@ public class BackupRestoreEventLoggerTest {
|
||||
|
||||
for (int i = 0; i < DATA_TYPES_ALLOWED; i++) {
|
||||
String dataType = DATA_TYPE_1 + i;
|
||||
assertThat(mLogger.logItemsRestored(dataType, /* count */ 5)).isTrue();
|
||||
assertThat(mLogger.logItemsRestoreFailed(dataType, /* count */ 5, /* error */ null))
|
||||
.isTrue();
|
||||
assertThat(mLogger.logRestoreMetadata(dataType, METADATA_1)).isTrue();
|
||||
mLogger.logItemsRestored(dataType, /* count */ 5);
|
||||
mLogger.logItemsRestoreFailed(dataType, /* count */ 5, /* error */ null);
|
||||
mLogger.logRestoreMetadata(dataType, METADATA_1);
|
||||
|
||||
assertThat(getResultForDataTypeIfPresent(mLogger, dataType)).isNotEqualTo(
|
||||
Optional.empty());
|
||||
}
|
||||
|
||||
assertThat(mLogger.logItemsRestored(DATA_TYPE_2, /* count */ 5)).isFalse();
|
||||
assertThat(mLogger.logItemsRestoreFailed(DATA_TYPE_2, /* count */ 5, /* error */ null))
|
||||
.isFalse();
|
||||
assertThat(mLogger.logRestoreMetadata(DATA_TYPE_2, METADATA_1)).isFalse();
|
||||
mLogger.logItemsRestored(DATA_TYPE_2, /* count */ 5);
|
||||
mLogger.logItemsRestoreFailed(DATA_TYPE_2, /* count */ 5, /* error */ null);
|
||||
mLogger.logRestoreMetadata(DATA_TYPE_2, METADATA_1);
|
||||
assertThat(getResultForDataTypeIfPresent(mLogger, DATA_TYPE_2)).isEqualTo(Optional.empty());
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user