From 41dc3d1accd4114fb74a34cae588cbabefbe343d Mon Sep 17 00:00:00 2001 From: Sadiq Ahmed Killedar <125464939+Er-Sadiq@users.noreply.github.com> Date: Wed, 28 Aug 2024 15:37:00 +0530 Subject: [PATCH] Updated Documents Function and fixed issued:#769 --- .../java/com/meilisearch/sdk/Documents.java | 23 ++++++++----------- 1 file changed, 9 insertions(+), 14 deletions(-) diff --git a/src/main/java/com/meilisearch/sdk/Documents.java b/src/main/java/com/meilisearch/sdk/Documents.java index a56c87d8..7516057d 100644 --- a/src/main/java/com/meilisearch/sdk/Documents.java +++ b/src/main/java/com/meilisearch/sdk/Documents.java @@ -150,27 +150,22 @@ String getRawDocuments(String uid, DocumentsQuery param) throws MeilisearchExcep } /** - * Adds/Replaces a document at the specified index uid + * Updates documents in the specified index using a function * - * @param uid Partial index identifier for the document - * @param document String containing the document to add - * @param primaryKey PrimaryKey of the document - * @param csvDelimiter CSV delimiter of the document + * @param uid Partial index identifier for the documents + * @param updateFunction Map containing the function to update documents * @return Meilisearch's TaskInfo API response * @throws MeilisearchException if the client request causes an error */ - TaskInfo addDocuments(String uid, String document, String primaryKey, String csvDelimiter) - throws MeilisearchException { - URLBuilder urlb = documentPath(uid); - if (primaryKey != null) { - urlb.addParameter("primaryKey", primaryKey); + TaskInfo updateDocumentsByFunction(String uid, Map updateFunction) throws MeilisearchException { + if (updateFunction == null || updateFunction.isEmpty()) { + throw new MeilisearchException("Update function cannot be null or empty"); } - if (csvDelimiter != null) { - urlb.addParameter("csvDelimiter", csvDelimiter); - } - return httpClient.post(urlb.getURL(), document, TaskInfo.class); + URLBuilder urlb = documentPath(uid).addSubroute("edit"); + return httpClient.post(urlb.getURL(), updateFunction, TaskInfo.class); } + /** * Replaces a document at the specified index uid *