Package net.sourceforge.pmd.util
Class AssertionUtil
- java.lang.Object
-
- net.sourceforge.pmd.util.AssertionUtil
-
public final class AssertionUtil extends Object
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static voidassertValidJavaBinaryName(CharSequence name)static voidassertValidJavaBinaryNameNoArray(CharSequence name)static voidassertValidStringRange(CharSequence string, int startInclusive, int endExclusive)LikevalidateStringRange(CharSequence, int, int)but eliminated at runtime if running without assertions.static @NonNull ContextedAssertionErrorcontexted(AssertionError e)static @NonNull org.apache.commons.lang3.exception.ContextedRuntimeExceptioncontexted(RuntimeException e)static @NonNull ContextedStackOverflowErrorcontexted(StackOverflowError e)static booleanisJavaIdentifier(CharSequence name)Returns true if the charsequence is a valid java identifier.static booleanisValidJavaPackageName(CharSequence name)static RuntimeExceptionmustBe(String name, Object value, String condition)static <E extends RuntimeException>
EmustBe(String name, Object value, String condition, Function<String,E> exceptionMaker)static voidrequireContainsNoNullValue(String name, Collection<?> c)static intrequireIndexNonNegative(String name, int value)static intrequireInExclusiveRange(String name, int value, int minValue, int maxValue)static intrequireInInclusiveRange(String name, int value, int minValue, int maxValue)static intrequireInNonNegativeRange(String name, int value, int maxValue)static intrequireInPositiveRange(String name, int value, int maxValue)static intrequireInRange(String name, int value, int minValue, int maxValue, boolean inclusive)static intrequireNonNegative(String name, int value)static voidrequireNotEmpty(String name, Collection<?> c)static intrequireOver1(String name, int value)static <T> @NonNull TrequireParamNotNull(String paramName, T obj)static @NonNull AssertionErrorshouldNotReachHere(String message)static voidvalidateState(boolean condition, String failed)ThrowsIllegalStateExceptionif the condition is false.static voidvalidateStringRange(CharSequence string, int startInclusive, int endExclusive)
-
-
-
Method Detail
-
requireContainsNoNullValue
public static void requireContainsNoNullValue(String name, Collection<?> c)
- Throws:
NullPointerException- if any item is null
-
requireNotEmpty
public static void requireNotEmpty(String name, Collection<?> c)
- Throws:
IllegalArgumentException- if empty
-
isValidJavaPackageName
public static boolean isValidJavaPackageName(CharSequence name)
-
assertValidJavaBinaryName
public static void assertValidJavaBinaryName(CharSequence name)
- Throws:
IllegalArgumentException- if the name is not a binary name
-
assertValidJavaBinaryNameNoArray
public static void assertValidJavaBinaryNameNoArray(CharSequence name)
- Throws:
IllegalArgumentException- if the name is not a binary name
-
validateState
public static void validateState(boolean condition, String failed)ThrowsIllegalStateExceptionif the condition is false.
-
validateStringRange
public static void validateStringRange(CharSequence string, int startInclusive, int endExclusive)
- Throws:
IllegalArgumentException- if [startInclusive,endExclusive[ is not a valid substring range for the given string
-
assertValidStringRange
public static void assertValidStringRange(CharSequence string, int startInclusive, int endExclusive)
LikevalidateStringRange(CharSequence, int, int)but eliminated at runtime if running without assertions.
-
isJavaIdentifier
public static boolean isJavaIdentifier(CharSequence name)
Returns true if the charsequence is a valid java identifier.- Parameters:
name- Name (non-null)- Throws:
NullPointerException- If the name is null
-
requireOver1
public static int requireOver1(String name, int value)
-
requireNonNegative
public static int requireNonNegative(String name, int value)
- Throws:
IllegalArgumentException- Ifvalue < 0
-
requireIndexNonNegative
public static int requireIndexNonNegative(String name, int value)
- Throws:
IndexOutOfBoundsException- Ifvalue < 0
-
requireInNonNegativeRange
public static int requireInNonNegativeRange(String name, int value, int maxValue)
- Throws:
IndexOutOfBoundsException- Ifvalue < 0 || value >= maxValue
-
requireInPositiveRange
public static int requireInPositiveRange(String name, int value, int maxValue)
- Throws:
IndexOutOfBoundsException- Ifvalue < 1 || value >= maxValue
-
requireInInclusiveRange
public static int requireInInclusiveRange(String name, int value, int minValue, int maxValue)
- Throws:
IndexOutOfBoundsException- Ifvalue < minValue || value > maxValue
-
requireInExclusiveRange
public static int requireInExclusiveRange(String name, int value, int minValue, int maxValue)
- Throws:
IndexOutOfBoundsException- Ifvalue < minValue || value > maxValue
-
requireInRange
public static int requireInRange(String name, int value, int minValue, int maxValue, boolean inclusive)
-
mustBe
public static RuntimeException mustBe(String name, Object value, String condition)
-
mustBe
public static <E extends RuntimeException> E mustBe(String name, Object value, String condition, Function<String,E> exceptionMaker)
-
requireParamNotNull
public static <T> @NonNull T requireParamNotNull(String paramName, T obj)
-
shouldNotReachHere
public static @NonNull AssertionError shouldNotReachHere(String message)
-
contexted
public static @NonNull ContextedAssertionError contexted(AssertionError e)
-
contexted
public static @NonNull ContextedStackOverflowError contexted(StackOverflowError e)
-
contexted
public static @NonNull org.apache.commons.lang3.exception.ContextedRuntimeException contexted(RuntimeException e)
-
-