Merge "Remove AndroidFuture from AppSearch." into sc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
1ddbd46377
@@ -30,8 +30,6 @@ import android.os.ParcelFileDescriptor;
|
|||||||
import android.os.RemoteException;
|
import android.os.RemoteException;
|
||||||
import android.util.ArraySet;
|
import android.util.ArraySet;
|
||||||
|
|
||||||
import com.android.internal.infra.AndroidFuture;
|
|
||||||
|
|
||||||
import java.io.Closeable;
|
import java.io.Closeable;
|
||||||
import java.io.DataInputStream;
|
import java.io.DataInputStream;
|
||||||
import java.io.DataOutputStream;
|
import java.io.DataOutputStream;
|
||||||
@@ -43,6 +41,7 @@ import java.io.IOException;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
import java.util.concurrent.CompletableFuture;
|
||||||
import java.util.concurrent.ExecutionException;
|
import java.util.concurrent.ExecutionException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -95,7 +94,7 @@ public class AppSearchMigrationHelper implements Closeable {
|
|||||||
File queryFile = File.createTempFile(/*prefix=*/"appsearch", /*suffix=*/null);
|
File queryFile = File.createTempFile(/*prefix=*/"appsearch", /*suffix=*/null);
|
||||||
try (ParcelFileDescriptor fileDescriptor =
|
try (ParcelFileDescriptor fileDescriptor =
|
||||||
ParcelFileDescriptor.open(queryFile, MODE_WRITE_ONLY)) {
|
ParcelFileDescriptor.open(queryFile, MODE_WRITE_ONLY)) {
|
||||||
AndroidFuture<AppSearchResult<Void>> androidFuture = new AndroidFuture<>();
|
CompletableFuture<AppSearchResult<Void>> future = new CompletableFuture<>();
|
||||||
mService.writeQueryResultsToFile(mPackageName, mDatabaseName,
|
mService.writeQueryResultsToFile(mPackageName, mDatabaseName,
|
||||||
fileDescriptor,
|
fileDescriptor,
|
||||||
/*queryExpression=*/ "",
|
/*queryExpression=*/ "",
|
||||||
@@ -106,11 +105,11 @@ public class AppSearchMigrationHelper implements Closeable {
|
|||||||
mUserId,
|
mUserId,
|
||||||
new IAppSearchResultCallback.Stub() {
|
new IAppSearchResultCallback.Stub() {
|
||||||
@Override
|
@Override
|
||||||
public void onResult(AppSearchResult result) throws RemoteException {
|
public void onResult(AppSearchResult result) {
|
||||||
androidFuture.complete(result);
|
future.complete(result);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
AppSearchResult<Void> result = androidFuture.get();
|
AppSearchResult<Void> result = future.get();
|
||||||
if (!result.isSuccess()) {
|
if (!result.isSuccess()) {
|
||||||
throw new AppSearchException(result.getResultCode(), result.getErrorMessage());
|
throw new AppSearchException(result.getResultCode(), result.getErrorMessage());
|
||||||
}
|
}
|
||||||
@@ -142,15 +141,15 @@ public class AppSearchMigrationHelper implements Closeable {
|
|||||||
}
|
}
|
||||||
try (ParcelFileDescriptor fileDescriptor =
|
try (ParcelFileDescriptor fileDescriptor =
|
||||||
ParcelFileDescriptor.open(mMigratedFile, MODE_READ_ONLY)) {
|
ParcelFileDescriptor.open(mMigratedFile, MODE_READ_ONLY)) {
|
||||||
AndroidFuture<AppSearchResult<List<Bundle>>> androidFuture = new AndroidFuture<>();
|
CompletableFuture<AppSearchResult<List<Bundle>>> future = new CompletableFuture<>();
|
||||||
mService.putDocumentsFromFile(mPackageName, mDatabaseName, fileDescriptor, mUserId,
|
mService.putDocumentsFromFile(mPackageName, mDatabaseName, fileDescriptor, mUserId,
|
||||||
new IAppSearchResultCallback.Stub() {
|
new IAppSearchResultCallback.Stub() {
|
||||||
@Override
|
@Override
|
||||||
public void onResult(AppSearchResult result) throws RemoteException {
|
public void onResult(AppSearchResult result) {
|
||||||
androidFuture.complete(result);
|
future.complete(result);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
AppSearchResult<List<Bundle>> result = androidFuture.get();
|
AppSearchResult<List<Bundle>> result = future.get();
|
||||||
if (!result.isSuccess()) {
|
if (!result.isSuccess()) {
|
||||||
return AppSearchResult.newFailedResult(result);
|
return AppSearchResult.newFailedResult(result);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -28,7 +28,6 @@ import android.util.ArrayMap;
|
|||||||
import android.util.ArraySet;
|
import android.util.ArraySet;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
|
|
||||||
import com.android.internal.infra.AndroidFuture;
|
|
||||||
import com.android.internal.util.Preconditions;
|
import com.android.internal.util.Preconditions;
|
||||||
|
|
||||||
import java.io.Closeable;
|
import java.io.Closeable;
|
||||||
@@ -37,6 +36,7 @@ import java.util.List;
|
|||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
import java.util.concurrent.CompletableFuture;
|
||||||
import java.util.concurrent.Executor;
|
import java.util.concurrent.Executor;
|
||||||
import java.util.function.Consumer;
|
import java.util.function.Consumer;
|
||||||
|
|
||||||
@@ -708,8 +708,8 @@ public final class AppSearchSession implements Closeable {
|
|||||||
try {
|
try {
|
||||||
// Migration process
|
// Migration process
|
||||||
// 1. Validate and retrieve all active migrators.
|
// 1. Validate and retrieve all active migrators.
|
||||||
AndroidFuture<AppSearchResult<GetSchemaResponse>> getSchemaFuture =
|
CompletableFuture<AppSearchResult<GetSchemaResponse>> getSchemaFuture =
|
||||||
new AndroidFuture<>();
|
new CompletableFuture<>();
|
||||||
getSchema(callbackExecutor, getSchemaFuture::complete);
|
getSchema(callbackExecutor, getSchemaFuture::complete);
|
||||||
AppSearchResult<GetSchemaResponse> getSchemaResult = getSchemaFuture.get();
|
AppSearchResult<GetSchemaResponse> getSchemaResult = getSchemaFuture.get();
|
||||||
if (!getSchemaResult.isSuccess()) {
|
if (!getSchemaResult.isSuccess()) {
|
||||||
@@ -733,7 +733,8 @@ public final class AppSearchSession implements Closeable {
|
|||||||
|
|
||||||
// 2. SetSchema with forceOverride=false, to retrieve the list of
|
// 2. SetSchema with forceOverride=false, to retrieve the list of
|
||||||
// incompatible/deleted types.
|
// incompatible/deleted types.
|
||||||
AndroidFuture<AppSearchResult<Bundle>> setSchemaFuture = new AndroidFuture<>();
|
CompletableFuture<AppSearchResult<Bundle>> setSchemaFuture =
|
||||||
|
new CompletableFuture<>();
|
||||||
mService.setSchema(
|
mService.setSchema(
|
||||||
mPackageName,
|
mPackageName,
|
||||||
mDatabaseName,
|
mDatabaseName,
|
||||||
@@ -781,8 +782,8 @@ public final class AppSearchSession implements Closeable {
|
|||||||
// failed.
|
// failed.
|
||||||
if (!setSchemaResponse.getIncompatibleTypes().isEmpty()
|
if (!setSchemaResponse.getIncompatibleTypes().isEmpty()
|
||||||
|| !setSchemaResponse.getDeletedTypes().isEmpty()) {
|
|| !setSchemaResponse.getDeletedTypes().isEmpty()) {
|
||||||
AndroidFuture<AppSearchResult<Bundle>> setSchema2Future =
|
CompletableFuture<AppSearchResult<Bundle>> setSchema2Future =
|
||||||
new AndroidFuture<>();
|
new CompletableFuture<>();
|
||||||
// only trigger second setSchema() call if the first one is fail.
|
// only trigger second setSchema() call if the first one is fail.
|
||||||
mService.setSchema(
|
mService.setSchema(
|
||||||
mPackageName,
|
mPackageName,
|
||||||
|
|||||||
@@ -17,14 +17,9 @@ package android.app.appsearch;
|
|||||||
|
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
|
|
||||||
import android.app.appsearch.AppSearchBatchResult;
|
|
||||||
import android.app.appsearch.AppSearchResult;
|
|
||||||
import android.app.appsearch.IAppSearchBatchResultCallback;
|
import android.app.appsearch.IAppSearchBatchResultCallback;
|
||||||
import android.app.appsearch.IAppSearchResultCallback;
|
import android.app.appsearch.IAppSearchResultCallback;
|
||||||
import android.os.ParcelFileDescriptor;
|
import android.os.ParcelFileDescriptor;
|
||||||
import com.android.internal.infra.AndroidFuture;
|
|
||||||
|
|
||||||
parcelable SearchResults;
|
|
||||||
|
|
||||||
/** {@hide} */
|
/** {@hide} */
|
||||||
interface IAppSearchManager {
|
interface IAppSearchManager {
|
||||||
|
|||||||
Reference in New Issue
Block a user