From 0498ef54e270c1d174955cb7e303f4cf7c2df986 Mon Sep 17 00:00:00 2001 From: Michele Rastelli Date: Wed, 7 Sep 2022 17:09:41 +0200 Subject: [PATCH] deprecated fulltext index (DE-375) --- .../java/com/arangodb/ArangoCollection.java | 2 ++ .../arangodb/async/ArangoCollectionAsync.java | 2 ++ .../internal/ArangoCollectionAsyncImpl.java | 1 + .../java/com/arangodb/entity/IndexType.java | 27 ++++++++++++++++++- .../internal/ArangoCollectionImpl.java | 1 + .../internal/InternalArangoCollection.java | 1 + .../arangodb/model/FulltextIndexOptions.java | 2 ++ .../com/arangodb/model/OptionsBuilder.java | 1 + 8 files changed, 36 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/arangodb/ArangoCollection.java b/src/main/java/com/arangodb/ArangoCollection.java index 40a5cdfd7..f74dd4681 100644 --- a/src/main/java/com/arangodb/ArangoCollection.java +++ b/src/main/java/com/arangodb/ArangoCollection.java @@ -519,7 +519,9 @@ MultiDocumentEntity> deleteDocuments( * @throws ArangoDBException * @see API * Documentation + * @deprecated since ArangoDB 3.10, use ArangoSearch view instead. */ + @Deprecated IndexEntity ensureFulltextIndex(Iterable fields, FulltextIndexOptions options) throws ArangoDBException; /** diff --git a/src/main/java/com/arangodb/async/ArangoCollectionAsync.java b/src/main/java/com/arangodb/async/ArangoCollectionAsync.java index c54a7c8e1..4e39bb6b1 100644 --- a/src/main/java/com/arangodb/async/ArangoCollectionAsync.java +++ b/src/main/java/com/arangodb/async/ArangoCollectionAsync.java @@ -487,7 +487,9 @@ CompletableFuture ensurePersistentIndex( * @return information about the index * @see API * Documentation + * @deprecated since ArangoDB 3.10, use ArangoSearch view instead. */ + @Deprecated CompletableFuture ensureFulltextIndex( final Iterable fields, final FulltextIndexOptions options); diff --git a/src/main/java/com/arangodb/async/internal/ArangoCollectionAsyncImpl.java b/src/main/java/com/arangodb/async/internal/ArangoCollectionAsyncImpl.java index 036f16da2..108f62f7b 100644 --- a/src/main/java/com/arangodb/async/internal/ArangoCollectionAsyncImpl.java +++ b/src/main/java/com/arangodb/async/internal/ArangoCollectionAsyncImpl.java @@ -291,6 +291,7 @@ public CompletableFuture ensureGeoIndex(final Iterable fiel return executor.execute(createGeoIndexRequest(fields, options), IndexEntity.class); } + @Deprecated @Override public CompletableFuture ensureFulltextIndex( final Iterable fields, diff --git a/src/main/java/com/arangodb/entity/IndexType.java b/src/main/java/com/arangodb/entity/IndexType.java index 062f35ff1..26a048cb0 100644 --- a/src/main/java/com/arangodb/entity/IndexType.java +++ b/src/main/java/com/arangodb/entity/IndexType.java @@ -25,5 +25,30 @@ * @author Heiko Kernbach */ public enum IndexType { - primary, hash, skiplist, persistent, geo, geo1, geo2, fulltext, edge, ttl, zkd + + primary, + + hash, + + skiplist, + + persistent, + + geo, + + geo1, + + geo2, + + /** + * @deprecated since ArangoDB 3.10, use ArangoSearch view instead. + */ + @Deprecated + fulltext, + + edge, + + ttl, + + zkd } diff --git a/src/main/java/com/arangodb/internal/ArangoCollectionImpl.java b/src/main/java/com/arangodb/internal/ArangoCollectionImpl.java index ef362803b..21aa94475 100644 --- a/src/main/java/com/arangodb/internal/ArangoCollectionImpl.java +++ b/src/main/java/com/arangodb/internal/ArangoCollectionImpl.java @@ -285,6 +285,7 @@ public IndexEntity ensureGeoIndex(final Iterable fields, final GeoIndexO return executor.execute(createGeoIndexRequest(fields, options), IndexEntity.class); } + @Deprecated @Override public IndexEntity ensureFulltextIndex(final Iterable fields, final FulltextIndexOptions options) throws ArangoDBException { diff --git a/src/main/java/com/arangodb/internal/InternalArangoCollection.java b/src/main/java/com/arangodb/internal/InternalArangoCollection.java index a30525543..9a03f510b 100644 --- a/src/main/java/com/arangodb/internal/InternalArangoCollection.java +++ b/src/main/java/com/arangodb/internal/InternalArangoCollection.java @@ -582,6 +582,7 @@ protected Request createGeoIndexRequest(final Iterable fields, final Geo return request; } + @Deprecated protected Request createFulltextIndexRequest(final Iterable fields, final FulltextIndexOptions options) { final Request request = request(db.dbName(), RequestType.POST, PATH_API_INDEX); request.putQueryParam(COLLECTION, name); diff --git a/src/main/java/com/arangodb/model/FulltextIndexOptions.java b/src/main/java/com/arangodb/model/FulltextIndexOptions.java index 9bf8f82a5..447c237b8 100644 --- a/src/main/java/com/arangodb/model/FulltextIndexOptions.java +++ b/src/main/java/com/arangodb/model/FulltextIndexOptions.java @@ -26,7 +26,9 @@ * @author Mark Vollmary * @see API * Documentation + * @deprecated since ArangoDB 3.10, use ArangoSearch view instead. */ +@Deprecated public class FulltextIndexOptions extends IndexOptions { private Iterable fields; diff --git a/src/main/java/com/arangodb/model/OptionsBuilder.java b/src/main/java/com/arangodb/model/OptionsBuilder.java index ab99ad37f..8bb82985e 100644 --- a/src/main/java/com/arangodb/model/OptionsBuilder.java +++ b/src/main/java/com/arangodb/model/OptionsBuilder.java @@ -67,6 +67,7 @@ public static GeoIndexOptions build(final GeoIndexOptions options, final Iterabl return options.fields(fields); } + @Deprecated public static FulltextIndexOptions build(final FulltextIndexOptions options, final Iterable fields) { return options.fields(fields); }