diff options
author | Tim Barron <tjbarron@google.com> | 2021-01-14 22:53:02 +0000 |
---|---|---|
committer | Tim Barron <tjbarron@google.com> | 2021-01-15 17:12:02 +0000 |
commit | bef3c12e4486a2ebf5dcb305ce399085f0d1200a (patch) | |
tree | a109f230607d17edee61beac8e5b4139a5eb1b74 /java | |
parent | 7384fa7cc8b6b3a3d9c7512d7f296a4c8f7acfce (diff) | |
parent | a34db390d80f862bfaaa49dea3605c5fec3bca3d (diff) | |
download | icing-bef3c12e4486a2ebf5dcb305ce399085f0d1200a.tar.gz |
Merge remote-tracking branch 'aosp/upstream-master' into androidx-mainandroidx-leanback-release
* aosp/upstream-master:
Update Icing from upstream.
Change-Id: Ia8a7f7f41f14ea9cf149d9ee58cdfca68439bd65
Diffstat (limited to 'java')
-rw-r--r-- | java/src/com/google/android/icing/IcingSearchEngine.java | 15 | ||||
-rw-r--r-- | java/tests/instrumentation/src/com/google/android/icing/IcingSearchEngineTest.java | 19 |
2 files changed, 23 insertions, 11 deletions
diff --git a/java/src/com/google/android/icing/IcingSearchEngine.java b/java/src/com/google/android/icing/IcingSearchEngine.java index f4d8312..88d0578 100644 --- a/java/src/com/google/android/icing/IcingSearchEngine.java +++ b/java/src/com/google/android/icing/IcingSearchEngine.java @@ -24,6 +24,7 @@ import com.google.android.icing.proto.DocumentProto; import com.google.android.icing.proto.GetAllNamespacesResultProto; import com.google.android.icing.proto.GetOptimizeInfoResultProto; import com.google.android.icing.proto.GetResultProto; +import com.google.android.icing.proto.GetResultSpecProto; import com.google.android.icing.proto.GetSchemaResultProto; import com.google.android.icing.proto.GetSchemaTypeResultProto; import com.google.android.icing.proto.IcingSearchEngineOptions; @@ -84,7 +85,9 @@ public final class IcingSearchEngine implements Closeable { @Override public void close() { - throwIfClosed(); + if (closed) { + return; + } if (nativePointer != 0) { nativeDestroy(this); @@ -95,8 +98,8 @@ public final class IcingSearchEngine implements Closeable { @Override protected void finalize() throws Throwable { - super.finalize(); close(); + super.finalize(); } @NonNull @@ -217,10 +220,11 @@ public final class IcingSearchEngine implements Closeable { } @NonNull - public GetResultProto get(@NonNull String namespace, @NonNull String uri) { + public GetResultProto get( + @NonNull String namespace, @NonNull String uri, @NonNull GetResultSpecProto getResultSpec) { throwIfClosed(); - byte[] getResultBytes = nativeGet(this, namespace, uri); + byte[] getResultBytes = nativeGet(this, namespace, uri, getResultSpec.toByteArray()); if (getResultBytes == null) { Log.e(TAG, "Received null GetResultProto from native."); return GetResultProto.newBuilder() @@ -533,7 +537,8 @@ public final class IcingSearchEngine implements Closeable { private static native byte[] nativePut(IcingSearchEngine instance, byte[] documentBytes); - private static native byte[] nativeGet(IcingSearchEngine instance, String namespace, String uri); + private static native byte[] nativeGet( + IcingSearchEngine instance, String namespace, String uri, byte[] getResultSpecBytes); private static native byte[] nativeReportUsage( IcingSearchEngine instance, byte[] usageReportBytes); diff --git a/java/tests/instrumentation/src/com/google/android/icing/IcingSearchEngineTest.java b/java/tests/instrumentation/src/com/google/android/icing/IcingSearchEngineTest.java index 6f07e1a..56edaf1 100644 --- a/java/tests/instrumentation/src/com/google/android/icing/IcingSearchEngineTest.java +++ b/java/tests/instrumentation/src/com/google/android/icing/IcingSearchEngineTest.java @@ -25,6 +25,7 @@ import com.google.android.icing.proto.DocumentProto; import com.google.android.icing.proto.GetAllNamespacesResultProto; import com.google.android.icing.proto.GetOptimizeInfoResultProto; import com.google.android.icing.proto.GetResultProto; +import com.google.android.icing.proto.GetResultSpecProto; import com.google.android.icing.proto.GetSchemaResultProto; import com.google.android.icing.proto.GetSchemaTypeResultProto; import com.google.android.icing.proto.IcingSearchEngineOptions; @@ -163,7 +164,8 @@ public final class IcingSearchEngineTest { PutResultProto putResultProto = icingSearchEngine.put(emailDocument); assertStatusOk(putResultProto.getStatus()); - GetResultProto getResultProto = icingSearchEngine.get("namespace", "uri"); + GetResultProto getResultProto = + icingSearchEngine.get("namespace", "uri", GetResultSpecProto.getDefaultInstance()); assertStatusOk(getResultProto.getStatus()); assertThat(getResultProto.getDocument()).isEqualTo(emailDocument); } @@ -281,7 +283,8 @@ public final class IcingSearchEngineTest { DeleteResultProto deleteResultProto = icingSearchEngine.delete("namespace", "uri"); assertStatusOk(deleteResultProto.getStatus()); - GetResultProto getResultProto = icingSearchEngine.get("namespace", "uri"); + GetResultProto getResultProto = + icingSearchEngine.get("namespace", "uri", GetResultSpecProto.getDefaultInstance()); assertThat(getResultProto.getStatus().getCode()).isEqualTo(StatusProto.Code.NOT_FOUND); } @@ -305,7 +308,8 @@ public final class IcingSearchEngineTest { icingSearchEngine.deleteByNamespace("namespace"); assertStatusOk(deleteByNamespaceResultProto.getStatus()); - GetResultProto getResultProto = icingSearchEngine.get("namespace", "uri"); + GetResultProto getResultProto = + icingSearchEngine.get("namespace", "uri", GetResultSpecProto.getDefaultInstance()); assertThat(getResultProto.getStatus().getCode()).isEqualTo(StatusProto.Code.NOT_FOUND); } @@ -329,7 +333,8 @@ public final class IcingSearchEngineTest { icingSearchEngine.deleteBySchemaType(EMAIL_TYPE); assertStatusOk(deleteBySchemaTypeResultProto.getStatus()); - GetResultProto getResultProto = icingSearchEngine.get("namespace", "uri"); + GetResultProto getResultProto = + icingSearchEngine.get("namespace", "uri", GetResultSpecProto.getDefaultInstance()); assertThat(getResultProto.getStatus().getCode()).isEqualTo(StatusProto.Code.NOT_FOUND); } @@ -377,9 +382,11 @@ public final class IcingSearchEngineTest { DeleteByQueryResultProto deleteResultProto = icingSearchEngine.deleteByQuery(searchSpec); assertStatusOk(deleteResultProto.getStatus()); - GetResultProto getResultProto = icingSearchEngine.get("namespace", "uri1"); + GetResultProto getResultProto = + icingSearchEngine.get("namespace", "uri1", GetResultSpecProto.getDefaultInstance()); assertThat(getResultProto.getStatus().getCode()).isEqualTo(StatusProto.Code.NOT_FOUND); - getResultProto = icingSearchEngine.get("namespace", "uri2"); + getResultProto = + icingSearchEngine.get("namespace", "uri2", GetResultSpecProto.getDefaultInstance()); assertStatusOk(getResultProto.getStatus()); } |