diff --git a/google-cloud-spanner/clirr-ignored-differences.xml b/google-cloud-spanner/clirr-ignored-differences.xml
index ca6ae666a2..bc33de3bbb 100644
--- a/google-cloud-spanner/clirr-ignored-differences.xml
+++ b/google-cloud-spanner/clirr-ignored-differences.xml
@@ -227,7 +227,21 @@
com/google/cloud/spanner/connection/Connection
* executeQueryAsync(*)
-
+
+
+
+ 7006
+ com/google/cloud/spanner/AsyncResultSet
+ com.google.common.collect.ImmutableList toList(com.google.common.base.Function)
+ java.util.List
+
+
+ 7006
+ com/google/cloud/spanner/ForwardingAsyncResultSet
+ com.google.common.collect.ImmutableList toList(com.google.common.base.Function)
+ java.util.List
+
+
7012
diff --git a/google-cloud-spanner/src/main/java/com/google/cloud/spanner/AsyncResultSet.java b/google-cloud-spanner/src/main/java/com/google/cloud/spanner/AsyncResultSet.java
index c44a42994e..1ae353c002 100644
--- a/google-cloud-spanner/src/main/java/com/google/cloud/spanner/AsyncResultSet.java
+++ b/google-cloud-spanner/src/main/java/com/google/cloud/spanner/AsyncResultSet.java
@@ -18,7 +18,7 @@
import com.google.api.core.ApiFuture;
import com.google.common.base.Function;
-import com.google.common.collect.ImmutableList;
+import java.util.List;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.Executor;
@@ -203,8 +203,7 @@ interface ReadyCallback {
* inline executor such as {@code MoreExecutors.directExecutor()}; using such an executor may
* degrade the performance of the Spanner library.
*/
- ApiFuture> toListAsync(
- Function transformer, Executor executor);
+ ApiFuture> toListAsync(Function transformer, Executor executor);
/**
* Transforms the row cursor into an immutable list using the given transformer function. {@code
@@ -222,5 +221,5 @@ ApiFuture> toListAsync(
*
* @param transformer function which will be used to transform the row. It should not return null.
*/
- ImmutableList toList(Function transformer) throws SpannerException;
+ List toList(Function transformer) throws SpannerException;
}
diff --git a/google-cloud-spanner/src/main/java/com/google/cloud/spanner/AsyncResultSetImpl.java b/google-cloud-spanner/src/main/java/com/google/cloud/spanner/AsyncResultSetImpl.java
index 981bd45d39..442556b56d 100644
--- a/google-cloud-spanner/src/main/java/com/google/cloud/spanner/AsyncResultSetImpl.java
+++ b/google-cloud-spanner/src/main/java/com/google/cloud/spanner/AsyncResultSetImpl.java
@@ -31,6 +31,7 @@
import com.google.spanner.v1.ResultSetStats;
import java.util.Collection;
import java.util.LinkedList;
+import java.util.List;
import java.util.concurrent.BlockingDeque;
import java.util.concurrent.Callable;
import java.util.concurrent.CountDownLatch;
@@ -483,12 +484,12 @@ public void resume() {
}
private static class CreateListCallback implements ReadyCallback {
- private final SettableApiFuture> future;
+ private final SettableApiFuture> future;
private final Function transformer;
private final ImmutableList.Builder builder = ImmutableList.builder();
private CreateListCallback(
- SettableApiFuture> future, Function transformer) {
+ SettableApiFuture> future, Function transformer) {
this.future = future;
this.transformer = transformer;
}
@@ -516,20 +517,20 @@ public CallbackResponse cursorReady(AsyncResultSet resultSet) {
}
@Override
- public ApiFuture> toListAsync(
+ public ApiFuture> toListAsync(
Function transformer, Executor executor) {
synchronized (monitor) {
Preconditions.checkState(!closed, "This AsyncResultSet has been closed");
Preconditions.checkState(
this.state == State.INITIALIZED, "This AsyncResultSet has already been used.");
- final SettableApiFuture> res = SettableApiFuture.>create();
+ final SettableApiFuture> res = SettableApiFuture.>create();
CreateListCallback callback = new CreateListCallback(res, transformer);
ApiFuture finished = setCallback(executor, callback);
return ApiFutures.transformAsync(
finished,
- new ApiAsyncFunction>() {
+ new ApiAsyncFunction>() {
@Override
- public ApiFuture> apply(Void input) throws Exception {
+ public ApiFuture> apply(Void input) throws Exception {
return res;
}
},
@@ -538,9 +539,8 @@ public ApiFuture> apply(Void input) throws Exception {
}
@Override
- public ImmutableList toList(Function transformer)
- throws SpannerException {
- ApiFuture> future = toListAsync(transformer, MoreExecutors.directExecutor());
+ public List toList(Function transformer) throws SpannerException {
+ ApiFuture> future = toListAsync(transformer, MoreExecutors.directExecutor());
try {
return future.get();
} catch (ExecutionException e) {
diff --git a/google-cloud-spanner/src/main/java/com/google/cloud/spanner/ForwardingAsyncResultSet.java b/google-cloud-spanner/src/main/java/com/google/cloud/spanner/ForwardingAsyncResultSet.java
index 78e3505998..e94590bd09 100644
--- a/google-cloud-spanner/src/main/java/com/google/cloud/spanner/ForwardingAsyncResultSet.java
+++ b/google-cloud-spanner/src/main/java/com/google/cloud/spanner/ForwardingAsyncResultSet.java
@@ -19,7 +19,7 @@
import com.google.api.core.ApiFuture;
import com.google.common.base.Function;
import com.google.common.base.Preconditions;
-import com.google.common.collect.ImmutableList;
+import java.util.List;
import java.util.concurrent.Executor;
/** Forwarding implementation of {@link AsyncResultSet} that forwards all calls to a delegate. */
@@ -52,14 +52,13 @@ public void resume() {
}
@Override
- public ApiFuture> toListAsync(
+ public ApiFuture> toListAsync(
Function transformer, Executor executor) {
return delegate.toListAsync(transformer, executor);
}
@Override
- public ImmutableList toList(Function transformer)
- throws SpannerException {
+ public List toList(Function transformer) throws SpannerException {
return delegate.toList(transformer);
}
}
diff --git a/google-cloud-spanner/src/test/java/com/google/cloud/spanner/AsyncResultSetImplStressTest.java b/google-cloud-spanner/src/test/java/com/google/cloud/spanner/AsyncResultSetImplStressTest.java
index c3383cadda..44a0571259 100644
--- a/google-cloud-spanner/src/test/java/com/google/cloud/spanner/AsyncResultSetImplStressTest.java
+++ b/google-cloud-spanner/src/test/java/com/google/cloud/spanner/AsyncResultSetImplStressTest.java
@@ -176,7 +176,7 @@ public void toList() throws Exception {
for (int i = 0; i < TEST_RUNS; i++) {
try (AsyncResultSetImpl impl =
new AsyncResultSetImpl(executorProvider, createResultSet(), bufferSize)) {
- ImmutableList list =
+ List list =
impl.toList(
new Function() {
@Override
@@ -198,7 +198,7 @@ public void toListWithErrors() throws Exception {
try (AsyncResultSetImpl impl =
new AsyncResultSetImpl(
executorProvider, createResultSetWithErrors(1.0 / resultSetSize), bufferSize)) {
- ImmutableList list =
+ List list =
impl.toList(
new Function() {
@Override
@@ -219,7 +219,7 @@ public Row apply(StructReader input) {
public void asyncToList() throws Exception {
ExecutorProvider executorProvider = SpannerOptions.createDefaultAsyncExecutorProvider();
for (int bufferSize = 1; bufferSize < resultSetSize * 2; bufferSize *= 2) {
- List>> futures = new ArrayList<>(TEST_RUNS);
+ List>> futures = new ArrayList<>(TEST_RUNS);
ExecutorService executor = createExecService(32);
for (int i = 0; i < TEST_RUNS; i++) {
try (AsyncResultSet impl =
@@ -235,8 +235,8 @@ public Row apply(StructReader input) {
executor));
}
}
- List> lists = ApiFutures.allAsList(futures).get();
- for (ImmutableList list : lists) {
+ List> lists = ApiFutures.allAsList(futures).get();
+ for (List list : lists) {
assertThat(list).containsExactlyElementsIn(createExpectedRows());
}
executor.shutdown();
diff --git a/google-cloud-spanner/src/test/java/com/google/cloud/spanner/AsyncResultSetImplTest.java b/google-cloud-spanner/src/test/java/com/google/cloud/spanner/AsyncResultSetImplTest.java
index 9359dc6694..78da23ca43 100644
--- a/google-cloud-spanner/src/test/java/com/google/cloud/spanner/AsyncResultSetImplTest.java
+++ b/google-cloud-spanner/src/test/java/com/google/cloud/spanner/AsyncResultSetImplTest.java
@@ -27,8 +27,8 @@
import com.google.cloud.spanner.AsyncResultSet.CursorState;
import com.google.cloud.spanner.AsyncResultSet.ReadyCallback;
import com.google.common.base.Function;
-import com.google.common.collect.ImmutableList;
import com.google.common.collect.Range;
+import java.util.List;
import java.util.concurrent.BlockingDeque;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.ExecutionException;
@@ -117,7 +117,7 @@ public void toList() {
when(delegate.getCurrentRowAsStruct()).thenReturn(mock(Struct.class));
try (AsyncResultSetImpl rs =
new AsyncResultSetImpl(simpleProvider, delegate, AsyncResultSetImpl.DEFAULT_BUFFER_SIZE)) {
- ImmutableList