From 60a8fa03990ad99f01ec2fd9cc434f33ab5b1b33 Mon Sep 17 00:00:00 2001 From: Anthony Seure Date: Tue, 6 Aug 2019 14:32:31 +0200 Subject: [PATCH] fix(partialUpdate): correctly handle createIfNotExists option when partialUpdate is used for multiple objects Close https://github.com/algolia/algoliasearch-client-scala/pull/544 [changelog] --- src/main/scala/algolia/definitions/BatchDefinition.scala | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/main/scala/algolia/definitions/BatchDefinition.scala b/src/main/scala/algolia/definitions/BatchDefinition.scala index eb65fd14..c302dd89 100644 --- a/src/main/scala/algolia/definitions/BatchDefinition.scala +++ b/src/main/scala/algolia/definitions/BatchDefinition.scala @@ -112,8 +112,12 @@ case class BatchDefinition( case IndexingBatchDefinition(_, defs, _) => defs.flatMap(transform) - case PartialUpdateOneObjectDefinition(index, Some(obj), _, _) => - Traversable(PartialUpdateObjectOperation(Extraction.decompose(obj), Some(index))) + case PartialUpdateOneObjectDefinition(index, Some(obj), createIfNotExists, _) => + if (createIfNotExists) { + Traversable(PartialUpdateObjectOperation(Extraction.decompose(obj), Some(index))) + } else { + Traversable(PartialUpdateObjectNoCreateOperation(Extraction.decompose(obj), Some(index))) + } } } }