You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by bt...@apache.org on 2019/11/19 02:43:44 UTC
[james-project] 42/43: JAMES-2964 simplify quota limit domain
object to better represent the domain
This is an automated email from the ASF dual-hosted git repository.
btellier pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/james-project.git
commit 8f91b92a995eaaa6820777793e6224ec613d5a73
Author: RĂ©mi KOWALSKI <rk...@linagora.com>
AuthorDate: Thu Nov 7 15:06:48 2019 +0100
JAMES-2964 simplify quota limit domain object to better represent the domain
---
.../apache/james/core/quota/QuotaCountLimit.java | 18 --------
.../apache/james/core/quota/QuotaLimitValue.java | 7 +---
.../apache/james/core/quota/QuotaSizeLimit.java | 18 --------
.../james/core/quota/QuotaLimitValueTest.java | 48 ++--------------------
4 files changed, 5 insertions(+), 86 deletions(-)
diff --git a/core/src/main/java/org/apache/james/core/quota/QuotaCountLimit.java b/core/src/main/java/org/apache/james/core/quota/QuotaCountLimit.java
index 1867e83..40add28 100644
--- a/core/src/main/java/org/apache/james/core/quota/QuotaCountLimit.java
+++ b/core/src/main/java/org/apache/james/core/quota/QuotaCountLimit.java
@@ -56,19 +56,6 @@ public class QuotaCountLimit implements QuotaLimitValue<QuotaCountLimit> {
}
@Override
- public QuotaCountLimit add(long additionalValue) {
- return new QuotaCountLimit(value.map(x -> x + additionalValue));
- }
-
- @Override
- public QuotaCountLimit add(QuotaCountLimit additionalValue) {
- if (additionalValue.isUnlimited()) {
- return unlimited();
- }
- return new QuotaCountLimit(value.map(x -> x + additionalValue.asLong()));
- }
-
- @Override
public String toString() {
return MoreObjects.toStringHelper(this)
.add("value", value.map(String::valueOf).orElse("unlimited"))
@@ -76,11 +63,6 @@ public class QuotaCountLimit implements QuotaLimitValue<QuotaCountLimit> {
}
@Override
- public boolean isGreaterThan(QuotaCountLimit other) {
- return value.orElse(Long.MAX_VALUE) > other.value.orElse(Long.MAX_VALUE);
- }
-
- @Override
public final boolean equals(Object o) {
if (o instanceof QuotaCountLimit) {
QuotaCountLimit that = (QuotaCountLimit) o;
diff --git a/core/src/main/java/org/apache/james/core/quota/QuotaLimitValue.java b/core/src/main/java/org/apache/james/core/quota/QuotaLimitValue.java
index ff32575..89de7a9 100644
--- a/core/src/main/java/org/apache/james/core/quota/QuotaLimitValue.java
+++ b/core/src/main/java/org/apache/james/core/quota/QuotaLimitValue.java
@@ -23,7 +23,7 @@ import java.util.Optional;
public interface QuotaLimitValue<T extends QuotaLimitValue<T>> {
static boolean isValidValue(Optional<Long> value) {
- return !value.isPresent() || value.get() >= 0;
+ return value.map(longValue -> longValue >= 0).orElse(true);
}
long asLong();
@@ -34,9 +34,4 @@ public interface QuotaLimitValue<T extends QuotaLimitValue<T>> {
return !isLimited();
}
- T add(long additionalValue);
-
- T add(T additionalValue);
-
- boolean isGreaterThan(T other);
}
diff --git a/core/src/main/java/org/apache/james/core/quota/QuotaSizeLimit.java b/core/src/main/java/org/apache/james/core/quota/QuotaSizeLimit.java
index d8997ae..968a11b 100644
--- a/core/src/main/java/org/apache/james/core/quota/QuotaSizeLimit.java
+++ b/core/src/main/java/org/apache/james/core/quota/QuotaSizeLimit.java
@@ -58,24 +58,6 @@ public class QuotaSizeLimit implements QuotaLimitValue<QuotaSizeLimit> {
}
@Override
- public QuotaSizeLimit add(long additionalValue) {
- return new QuotaSizeLimit(value.map(x -> x + additionalValue));
- }
-
- @Override
- public QuotaSizeLimit add(QuotaSizeLimit additionalValue) {
- if (additionalValue.isUnlimited()) {
- return unlimited();
- }
- return new QuotaSizeLimit(value.map(x -> x + additionalValue.asLong()));
- }
-
- @Override
- public boolean isGreaterThan(QuotaSizeLimit other) {
- return value.orElse(Long.MAX_VALUE) > other.value.orElse(Long.MAX_VALUE);
- }
-
- @Override
public String toString() {
return MoreObjects.toStringHelper(this)
.add("value", value.map(String::valueOf).orElse("unlimited"))
diff --git a/core/src/test/java/org/apache/james/core/quota/QuotaLimitValueTest.java b/core/src/test/java/org/apache/james/core/quota/QuotaLimitValueTest.java
index 8a8e28f..09a3ce7 100644
--- a/core/src/test/java/org/apache/james/core/quota/QuotaLimitValueTest.java
+++ b/core/src/test/java/org/apache/james/core/quota/QuotaLimitValueTest.java
@@ -18,58 +18,18 @@
****************************************************************/
package org.apache.james.core.quota;
-import static org.assertj.core.api.Assertions.assertThat;
+import static org.assertj.core.api.Assertions.assertThatThrownBy;
import org.junit.jupiter.api.Test;
public interface QuotaLimitValueTest<T extends QuotaLimitValue<T>> {
- T instance(long i);
+ T instance(long value);
T unlimited();
@Test
- default void greaterThanShouldReturnFalseWhenFirstEqualToSecond() {
- assertThat(instance(1).isGreaterThan(instance(1))).isFalse();
- }
-
- @Test
- default void greaterThanShouldReturnFalseWhenFirstSmallerThanSecond() {
- assertThat(instance(1).isGreaterThan(instance(2))).isFalse();
- }
-
- @Test
- default void greaterThanShouldReturnTrueWhenFirstGreaterThanSecond() {
- assertThat(instance(2).isGreaterThan(instance(1))).isTrue();
- }
-
- @Test
- default void greaterThanShouldReturnFalseWhenFirstIsLimitedAndSecondUnlimited() {
- assertThat(instance(1).isGreaterThan(unlimited())).isFalse();
- }
-
- @Test
- default void greaterThanShouldReturnFalseWhenBothAreUnlimited() {
- assertThat(unlimited().isGreaterThan(unlimited())).isFalse();
- }
-
- @Test
- default void greaterThanShouldReturnTrueWhenFirstIsUnlimitedAndSecondLimited() {
- assertThat(unlimited().isGreaterThan(instance(1))).isTrue();
- }
-
- @Test
- default void addShouldReturnUnlimitedWhenThisIsUnlimited() {
- assertThat(unlimited().add(2)).isEqualTo(unlimited());
- }
-
- @Test
- default void addShouldReturnUnlimitedWhenBothAre() {
- assertThat(unlimited().add(unlimited())).isEqualTo(unlimited());
- }
-
- @Test
- default void addShouldReturnSumResult() {
- assertThat(instance(12).add(instance(23))).isEqualTo(instance(35));
+ default void creatingANegativeQuotaLimitShouldFail() {
+ assertThatThrownBy(() -> instance(-1)).isInstanceOf(IllegalArgumentException.class);
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org