From 4ab61bd4d454c92af3804bba2d3c92cf3bb01c8f Mon Sep 17 00:00:00 2001 From: Mark Paluch Date: Fri, 17 May 2019 14:40:28 +0200 Subject: [PATCH] DATAMONGO-2081 - Polishing. Tweak Javadoc. Refactor conditional assignment to if style for improved readability. Original pull request: #749. --- .../data/mongodb/core/index/IndexInfo.java | 14 +++++++++----- .../mongodb/core/index/IndexInfoUnitTests.java | 2 +- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/index/IndexInfo.java b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/index/IndexInfo.java index 8f05f6e5d..001605d8e 100644 --- a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/index/IndexInfo.java +++ b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/index/IndexInfo.java @@ -32,6 +32,8 @@ import org.springframework.util.NumberUtils; import org.springframework.util.ObjectUtils; /** + * Index information for a MongoDB index. + * * @author Mark Pollack * @author Oliver Gierke * @author Christoph Strobl @@ -117,9 +119,13 @@ public class IndexInfo { IndexInfo info = new IndexInfo(indexFields, name, unique, sparse, language); info.partialFilterExpression = partialFilter; info.collation = sourceDocument.get("collation", Document.class); - info.expireAfter = !sourceDocument.containsKey("expireAfterSeconds") ? null - : Duration.ofSeconds( - NumberUtils.convertNumberToTargetClass(sourceDocument.get("expireAfterSeconds", Number.class), Long.class)); + + if (sourceDocument.containsKey("expireAfterSeconds")) { + + Number expireAfterSeconds = sourceDocument.get("expireAfterSeconds", Number.class); + info.expireAfter = Duration.ofSeconds(NumberUtils.convertNumberToTargetClass(expireAfterSeconds, Long.class)); + } + return info; } @@ -261,11 +267,9 @@ public class IndexInfo { if (!ObjectUtils.nullSafeEquals(partialFilterExpression, other.partialFilterExpression)) { return false; } - if (!ObjectUtils.nullSafeEquals(collation, other.collation)) { return false; } - if (!ObjectUtils.nullSafeEquals(expireAfter, other.expireAfter)) { return false; } diff --git a/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/index/IndexInfoUnitTests.java b/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/index/IndexInfoUnitTests.java index 01c56fca6..ef0b48030 100644 --- a/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/index/IndexInfoUnitTests.java +++ b/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/index/IndexInfoUnitTests.java @@ -60,7 +60,7 @@ public class IndexInfoUnitTests { @Test // DATAMONGO-2081 public void expireAfterIsParsedCorrectly() { - assertThat(getIndexInfo(INDEX_WITH_EXPIRATION_TIME).getExpireAfter()).contains(Duration.ofSeconds(3600)); + assertThat(getIndexInfo(INDEX_WITH_EXPIRATION_TIME).getExpireAfter()).contains(Duration.ofHours(1)); } @Test // DATAMONGO-2081