Loading services/backup/backuplib/java/com/android/server/backup/transport/BackupTransportClient.java +8 −2 Original line number Diff line number Diff line Loading @@ -34,6 +34,7 @@ import java.util.HashSet; import java.util.List; import java.util.Queue; import java.util.Set; import java.util.concurrent.CancellationException; import java.util.concurrent.ExecutionException; import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeoutException; Loading Loading @@ -374,7 +375,8 @@ public class BackupTransportClient { private <T> T getFutureResult(AndroidFuture<T> future) { try { return future.get(600, TimeUnit.SECONDS); } catch (InterruptedException | ExecutionException | TimeoutException e) { } catch (InterruptedException | ExecutionException | TimeoutException | CancellationException e) { Slog.w(TAG, "Failed to get result from transport:", e); return null; } finally { Loading Loading @@ -403,7 +405,11 @@ public class BackupTransportClient { void cancelActiveFutures() { synchronized (mActiveFuturesLock) { for (AndroidFuture<?> future : mActiveFutures) { try { future.cancel(true); } catch (CancellationException ignored) { // This is expected, so ignore the exception. } } mActiveFutures.clear(); } Loading services/tests/servicestests/src/com/android/server/backup/transport/BackupTransportClientTest.java +2 −5 Original line number Diff line number Diff line Loading @@ -110,10 +110,7 @@ public class BackupTransportClientTest { Thread thread = new Thread(() -> { try { /*String name =*/ client.transportDirName(); fail("transportDirName should be cancelled"); } catch (CancellationException ex) { // This is expected. assertThat(client.transportDirName()).isNull(); } catch (Exception ex) { fail("unexpected Exception: " + ex.getClass().getCanonicalName()); } Loading Loading @@ -189,7 +186,7 @@ public class BackupTransportClientTest { } @Test public void testFinishBackup_canceledBeforeCompletion_throwsException() throws Exception { public void testFinishBackup_canceledBeforeCompletion_returnsError() throws Exception { TestCallbacksFakeTransportBinder binder = new TestCallbacksFakeTransportBinder(); BackupTransportClient client = new BackupTransportClient(binder); Loading Loading
services/backup/backuplib/java/com/android/server/backup/transport/BackupTransportClient.java +8 −2 Original line number Diff line number Diff line Loading @@ -34,6 +34,7 @@ import java.util.HashSet; import java.util.List; import java.util.Queue; import java.util.Set; import java.util.concurrent.CancellationException; import java.util.concurrent.ExecutionException; import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeoutException; Loading Loading @@ -374,7 +375,8 @@ public class BackupTransportClient { private <T> T getFutureResult(AndroidFuture<T> future) { try { return future.get(600, TimeUnit.SECONDS); } catch (InterruptedException | ExecutionException | TimeoutException e) { } catch (InterruptedException | ExecutionException | TimeoutException | CancellationException e) { Slog.w(TAG, "Failed to get result from transport:", e); return null; } finally { Loading Loading @@ -403,7 +405,11 @@ public class BackupTransportClient { void cancelActiveFutures() { synchronized (mActiveFuturesLock) { for (AndroidFuture<?> future : mActiveFutures) { try { future.cancel(true); } catch (CancellationException ignored) { // This is expected, so ignore the exception. } } mActiveFutures.clear(); } Loading
services/tests/servicestests/src/com/android/server/backup/transport/BackupTransportClientTest.java +2 −5 Original line number Diff line number Diff line Loading @@ -110,10 +110,7 @@ public class BackupTransportClientTest { Thread thread = new Thread(() -> { try { /*String name =*/ client.transportDirName(); fail("transportDirName should be cancelled"); } catch (CancellationException ex) { // This is expected. assertThat(client.transportDirName()).isNull(); } catch (Exception ex) { fail("unexpected Exception: " + ex.getClass().getCanonicalName()); } Loading Loading @@ -189,7 +186,7 @@ public class BackupTransportClientTest { } @Test public void testFinishBackup_canceledBeforeCompletion_throwsException() throws Exception { public void testFinishBackup_canceledBeforeCompletion_returnsError() throws Exception { TestCallbacksFakeTransportBinder binder = new TestCallbacksFakeTransportBinder(); BackupTransportClient client = new BackupTransportClient(binder); Loading