From 8d72c9cfc506193e115150778089ff074301136c Mon Sep 17 00:00:00 2001 From: Andrea Cavalli Date: Sun, 19 Jun 2022 17:22:26 +0200 Subject: [PATCH] Fix orElse --- .../it/cavallium/data/generator/TypedNullable.java | 4 +++- .../data/generator/nativedata/NullableInt52.java | 9 --------- .../data/generator/nativedata/NullableString.java | 10 ---------- 3 files changed, 3 insertions(+), 20 deletions(-) diff --git a/src/main/java/it/cavallium/data/generator/TypedNullable.java b/src/main/java/it/cavallium/data/generator/TypedNullable.java index c0429be..56d5dcd 100644 --- a/src/main/java/it/cavallium/data/generator/TypedNullable.java +++ b/src/main/java/it/cavallium/data/generator/TypedNullable.java @@ -1,5 +1,6 @@ package it.cavallium.data.generator; +import java.util.Objects; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -25,7 +26,8 @@ public interface TypedNullable extends NativeNullable { default @NotNull T orElse(@NotNull T defaultValue) { var value = getNullable(); if (value == null) { - throw new NullPointerException(); + Objects.requireNonNull(defaultValue, "default value must not be null"); + return defaultValue; } else { return value; } diff --git a/src/main/java/it/cavallium/data/generator/nativedata/NullableInt52.java b/src/main/java/it/cavallium/data/generator/nativedata/NullableInt52.java index 474edbd..8ed3e3f 100644 --- a/src/main/java/it/cavallium/data/generator/nativedata/NullableInt52.java +++ b/src/main/java/it/cavallium/data/generator/nativedata/NullableInt52.java @@ -64,15 +64,6 @@ public class NullableInt52 implements Serializable, IGenericNullable, TypedNulla } } - @Override - public @NotNull Int52 orElse(@NotNull Int52 defaultValue) { - if (value == null) { - return defaultValue; - } else { - return value; - } - } - @Override public @NotNull NullableInt52 or(@NotNull NativeNullable fallback) { if (value == null) { diff --git a/src/main/java/it/cavallium/data/generator/nativedata/NullableString.java b/src/main/java/it/cavallium/data/generator/nativedata/NullableString.java index f79ccbf..58d2b09 100644 --- a/src/main/java/it/cavallium/data/generator/nativedata/NullableString.java +++ b/src/main/java/it/cavallium/data/generator/nativedata/NullableString.java @@ -76,16 +76,6 @@ public class NullableString implements Serializable, IGenericNullable, TypedNull } } - @Override - @NotNull - public String orElse(@NotNull String defaultValue) { - if (value == null) { - return defaultValue; - } else { - return value; - } - } - @Override public @NotNull NullableString or(@NotNull NativeNullable fallback) { if (value == null) {