public abstract class Assert extends Object
For example, if the contract of a public method states it does not allow null
arguments, Assert can be used to validate that contract. Doing this clearly indicates a contract
violation when it occurs and protects the class's invariants.
Typically used to validate method arguments rather than configuration properties, to check for cases that are usually programmer errors rather than configuration errors. In contrast to config initialization code, there is usally no point in falling back to defaults in such methods.
This class is similar to JUnit's assertion library. If an argument value is deemed invalid, an
IllegalArgumentException
is thrown (typically). For example:
Assert.notNull(clazz, "The class must not be null"); Assert.isTrue(i > 0, "The value must be greater than zero");
Constructor and Description |
---|
Assert() |
Modifier and Type | Method and Description |
---|---|
static <T> T |
argumentNotNull(T object,
String argName) |
static void |
doesNotContain(String textToSearch,
String substring)
Assert that the given text does not contain the given substring.
|
static void |
doesNotContain(String textToSearch,
String substring,
String message)
Assert that the given text does not contain the given substring.
|
static void |
hasLength(String text)
Assert that a string is not empty; that is, it must not be
null and not empty. |
static void |
hasLength(String text,
String message)
Assert that a string is not empty; that is, it must not be
null and not empty. |
static void |
hasText(String text)
Assert that a string has valid text content; that is, it must not be
null and
must contain at least one non-whitespace character. |
static void |
hasText(String text,
String message)
Assert that a string has valid text content; that is, it must not be
null and
must contain at least one non-whitespace character. |
static void |
isAssignable(Class superType,
Class subType)
Assert that
superType.isAssignableFrom(subType) is true . |
static void |
isAssignable(Class superType,
Class subType,
String message)
Assert that
superType.isAssignableFrom(subType) is true . |
static void |
isInstanceOf(Class clazz,
Object obj)
Assert that the provided object is an instance of the provided class.
|
static void |
isInstanceOf(Class clazz,
Object obj,
String message)
Assert that the provided object is an instance of the provided class.
|
static void |
isNull(Object object)
Assert that an object is
null . |
static void |
isNull(Object object,
String message)
Assert that an object is
null . |
static void |
isTrue(boolean expression)
Assert a boolean expression, throwing
IllegalArgumentException if the test
result is false . |
static void |
isTrue(boolean expression,
String message)
Assert a boolean expression, throwing
IllegalArgumentException if the test
result is false . |
static void |
notEmpty(Collection collection)
Assert that a collection has elements; that is, it must not be
null and must
have at least one element. |
static void |
notEmpty(Collection collection,
String message)
Assert that a collection has elements; that is, it must not be
null and must
have at least one element. |
static void |
notEmpty(Map map)
Assert that a Map has entries; that is, it must not be
null and must have at
least one entry. |
static void |
notEmpty(Map map,
String message)
Assert that a Map has entries; that is, it must not be
null and must have at
least one entry. |
static void |
notEmpty(Object[] array)
Assert that an array has elements; that is, it must not be
null and must have at
least one element. |
static void |
notEmpty(Object[] array,
String message)
Assert that an array has elements; that is, it must not be
null and must have at
least one element. |
static void |
notNull(Object object)
Assert that an object is not
null . |
static void |
notNull(Object object,
String message)
Assert that an object is not
null . |
static void |
state(boolean expression)
Assert a boolean expression, throwing
IllegalStateException if the test result is
false . |
static void |
state(boolean expression,
String message)
Assert a boolean expression, throwing
IllegalStateException if the test result
is false . |
public static void isTrue(boolean expression, String message)
IllegalArgumentException
if the test
result is false
. Assert.isTrue(i > 0, "The value must be greater than zero");
expression
- a boolean expressionmessage
- the exception message to use if the assertion failsIllegalArgumentException
- if expression is false
public static void isTrue(boolean expression)
IllegalArgumentException
if the test
result is false
. Assert.isTrue(i > 0);
expression
- a boolean expressionIllegalArgumentException
- if expression is false
public static void isNull(Object object, String message)
null
. Assert.isNull(value, "The value must be null");
object
- the object to checkmessage
- the exception message to use if the assertion failsIllegalArgumentException
- if the object is not null
public static void isNull(Object object)
null
. Assert.isNull(value);
object
- the object to checkIllegalArgumentException
- if the object is not null
public static void notNull(Object object, String message)
null
. Assert.notNull(clazz, "The class must not be null");
object
- the object to checkmessage
- the exception message to use if the assertion failsIllegalArgumentException
- if the object is null
public static <T> T argumentNotNull(T object, String argName)
public static void notNull(Object object)
null
. Assert.notNull(clazz);
object
- the object to checkIllegalArgumentException
- if the object is null
public static void hasLength(String text, String message)
null
and not empty.
Assert.hasLength(name, "Name must not be empty");
text
- the string to checkmessage
- the exception message to use if the assertion failsStringUtils.hasLength(java.lang.String)
public static void hasLength(String text)
null
and not empty.
Assert.hasLength(name);
text
- the string to checkStringUtils.hasLength(java.lang.String)
public static void hasText(String text, String message)
null
and
must contain at least one non-whitespace character. Assert.hasText(name, "Name must not be empty");
text
- the string to checkmessage
- the exception message to use if the assertion failsStringUtils.hasText(java.lang.String)
public static void hasText(String text)
null
and
must contain at least one non-whitespace character. Assert.hasText(name, "Name must not be empty");
text
- the string to checkStringUtils.hasText(java.lang.String)
public static void doesNotContain(String textToSearch, String substring, String message)
Assert.doesNotContain(name, "rod", "Name must not contain 'rod'");
textToSearch
- the text to searchsubstring
- the substring to find within the textmessage
- the exception message to use if the assertion failspublic static void doesNotContain(String textToSearch, String substring)
Assert.doesNotContain(name, "rod");
textToSearch
- the text to searchsubstring
- the substring to find within the textpublic static void notEmpty(Object[] array, String message)
null
and must have at
least one element. Assert.notEmpty(array, "The array must have elements");
array
- the array to checkmessage
- the exception message to use if the assertion failsIllegalArgumentException
- if the object array is null
or has no elementspublic static void notEmpty(Object[] array)
null
and must have at
least one element. Assert.notEmpty(array);
array
- the array to checkIllegalArgumentException
- if the object array is null
or has no elementspublic static void notEmpty(Collection collection, String message)
null
and must
have at least one element. Assert.notEmpty(collection, "Collection must have elements");
collection
- the collection to checkmessage
- the exception message to use if the assertion failsIllegalArgumentException
- if the collection is null
or has no elementspublic static void notEmpty(Collection collection)
null
and must
have at least one element. Assert.notEmpty(collection, "Collection must have elements");
collection
- the collection to checkIllegalArgumentException
- if the collection is null
or has no elementspublic static void notEmpty(Map map, String message)
null
and must have at
least one entry. Assert.notEmpty(map, "Map must have entries");
map
- the map to checkmessage
- the exception message to use if the assertion failsIllegalArgumentException
- if the map is null
or has no entriespublic static void notEmpty(Map map)
null
and must have at
least one entry. Assert.notEmpty(map);
map
- the map to checkIllegalArgumentException
- if the map is null
or has no entriespublic static void isInstanceOf(Class clazz, Object obj)
Assert.instanceOf(Foo.class, foo);
clazz
- the required classobj
- the object to checkIllegalArgumentException
- if the object is not an instance of clazzClass.isInstance(java.lang.Object)
public static void isInstanceOf(Class clazz, Object obj, String message)
Assert.instanceOf(Foo.class, foo);
clazz
- the required classobj
- the object to checkmessage
- a message which will be prepended to the message produced by the function
itself, and which may be used to provide context. It should normally end in a
": " or ". " so that the function generate message looks ok when prepended to
it.IllegalArgumentException
- if the object is not an instance of clazzClass.isInstance(java.lang.Object)
public static void isAssignable(Class superType, Class subType)
superType.isAssignableFrom(subType)
is true
. Assert.isAssignable(Number.class, myClass);
superType
- the super type to checksubType
- the sub type to checkIllegalArgumentException
- if the classes are not assignablepublic static void isAssignable(Class superType, Class subType, String message)
superType.isAssignableFrom(subType)
is true
. Assert.isAssignable(Number.class, myClass);
superType
- the super type to checksubType
- the sub type to checkmessage
- a message which will be prepended to the message produced by the function
itself, and which may be used to provide context. It should normally end in
a ": " or ". " so that the function generate message looks ok when prepended
to it.IllegalArgumentException
- if the classes are not assignablepublic static void state(boolean expression, String message)
IllegalStateException
if the test result
is false
. Call isTrue if you wish to throw IllegalArgumentException on an
assertion failure. Assert.state(id == null, "The id property must not already be initialized");
expression
- a boolean expressionmessage
- the exception message to use if the assertion failsIllegalStateException
- if expression is false
public static void state(boolean expression)
IllegalStateException
if the test result is
false
. Call isTrue(boolean)
if you wish to throw IllegalArgumentException
on an assertion failure.
Assert.state(id == null);
expression
- a boolean expressionIllegalStateException
- if the supplied expression is false
Copyright © GigaSpaces.