From cc018a6dac1dcd8bfa7d93e21c08fa21e7a6015f Mon Sep 17 00:00:00 2001 From: gbrodman Date: Wed, 2 Oct 2019 12:53:22 -0400 Subject: [PATCH] Don't crash on a null completion timestamp (#296) * Don't crash on a null completion timestamp * optional --- .../java/google/registry/schema/domain/RegistryLock.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/core/src/main/java/google/registry/schema/domain/RegistryLock.java b/core/src/main/java/google/registry/schema/domain/RegistryLock.java index ec099026d..80e32d6f8 100644 --- a/core/src/main/java/google/registry/schema/domain/RegistryLock.java +++ b/core/src/main/java/google/registry/schema/domain/RegistryLock.java @@ -21,7 +21,9 @@ import static google.registry.util.PreconditionsUtils.checkArgumentNotNull; import google.registry.model.Buildable; import google.registry.model.ImmutableObject; +import google.registry.util.DateTimeUtils; import java.time.ZonedDateTime; +import java.util.Optional; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.EnumType; @@ -149,8 +151,9 @@ public final class RegistryLock extends ImmutableObject implements Buildable { return toJodaDateTime(creationTimestamp); } - public DateTime getCompletionTimestamp() { - return toJodaDateTime(completionTimestamp); + /** Returns the completion timestamp, or empty if this lock has not been completed yet. */ + public Optional getCompletionTimestamp() { + return Optional.ofNullable(completionTimestamp).map(DateTimeUtils::toJodaDateTime); } public String getVerificationCode() {