@GwtCompatible @Beta public interface MapConstraint<K,V>
Map
or
Multimap
. For example, MapConstraints.notNull()
, which
prevents a map from including any null keys or values, could be implemented
like this: public void checkKeyValue(Object key, Object value) {
if (key == null || value == null) {
throw new NullPointerException();
}
}
In order to be effective, constraints should be deterministic; that is, they should not depend on state that can change (such as external state, random variables, and time) and should only depend on the value of the passed-in key and value. A non-deterministic constraint cannot reliably enforce that all the collection's elements meet the constraint, since the constraint is only enforced when elements are added.
MapConstraints
,
Constraint
Modifier and Type | Method and Description |
---|---|
void |
checkKeyValue(K key,
V value)
Throws a suitable
RuntimeException if the specified key or value is
illegal. |
String |
toString()
Returns a brief human readable description of this constraint, such as
"Not null".
|
void checkKeyValue(@Nullable K key, @Nullable V value)
RuntimeException
if the specified key or value is
illegal. Typically this is either a NullPointerException
, an
IllegalArgumentException
, or a ClassCastException
, though
an application-specific exception class may be used if appropriate.Copyright © 2010-2013. All Rights Reserved.