[SSHD-741] Added ValidateUtils#checkState that throws an IllegalStateException if state flag is FALSE
Project: http://git-wip-us.apache.org/repos/asf/mina-sshd/repo Commit: http://git-wip-us.apache.org/repos/asf/mina-sshd/commit/7f6563c2 Tree: http://git-wip-us.apache.org/repos/asf/mina-sshd/tree/7f6563c2 Diff: http://git-wip-us.apache.org/repos/asf/mina-sshd/diff/7f6563c2 Branch: refs/heads/master Commit: 7f6563c2a30ceddc5257d431f25a15d73d43dd92 Parents: 02f1d57 Author: Goldstein Lyor <[email protected]> Authored: Thu May 25 12:38:15 2017 +0300 Committer: Goldstein Lyor <[email protected]> Committed: Sun Jun 4 12:30:12 2017 +0300 ---------------------------------------------------------------------- .../apache/sshd/common/util/ValidateUtils.java | 40 +++++++++++++++++++- 1 file changed, 38 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/mina-sshd/blob/7f6563c2/sshd-core/src/main/java/org/apache/sshd/common/util/ValidateUtils.java ---------------------------------------------------------------------- diff --git a/sshd-core/src/main/java/org/apache/sshd/common/util/ValidateUtils.java b/sshd-core/src/main/java/org/apache/sshd/common/util/ValidateUtils.java index f5986ad..a55e5d6 100644 --- a/sshd-core/src/main/java/org/apache/sshd/common/util/ValidateUtils.java +++ b/sshd-core/src/main/java/org/apache/sshd/common/util/ValidateUtils.java @@ -21,6 +21,7 @@ package org.apache.sshd.common.util; import java.util.Collection; import java.util.Map; +import java.util.function.Function; /** * @author <a href="mailto:[email protected]">Apache MINA SSHD Project</a> @@ -174,7 +175,42 @@ public final class ValidateUtils { } } - public static void throwIllegalArgumentException(String message, Object... args) { - throw new IllegalArgumentException(String.format(message, args)); + public static void throwIllegalArgumentException(String format, Object... args) { + throw createFormattedException(IllegalArgumentException::new, format, args); } + + public static void checkState(boolean flag, String message) { + if (!flag) { + throwIllegalStateException(message, GenericUtils.EMPTY_OBJECT_ARRAY); + } + } + + public static void checkState(boolean flag, String message, long value) { + if (!flag) { + throwIllegalStateException(message, value); + } + } + + public static void checkState(boolean flag, String message, Object arg) { + if (!flag) { + throwIllegalStateException(message, arg); + } + } + + public static void checkState(boolean flag, String message, Object... args) { + if (!flag) { + throwIllegalStateException(message, args); + } + } + + public static void throwIllegalStateException(String format, Object... args) { + throw createFormattedException(IllegalStateException::new, format, args); + } + + public static <T extends Throwable> T createFormattedException( + Function<? super String, ? extends T> constructor, String format, Object... args) { + String message = String.format(format, args); + return constructor.apply(message); + } + }
