Package com.google.common.collect
Interface MapConstraint<K,V>
-
@GwtCompatible @Beta public interface MapConstraint<K,V>
A constraint on the keys and values that may be added to aMap
orMultimap
. 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.
- Since:
- 3.0
- See Also:
MapConstraints
,Constraint
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
checkKeyValue(K key, V value)
Throws a suitableRuntimeException
if the specified key or value is illegal.String
toString()
Returns a brief human readable description of this constraint, such as "Not null".
-
-
-
Method Detail
-
checkKeyValue
void checkKeyValue(@Nullable K key, @Nullable V value)
Throws a suitableRuntimeException
if the specified key or value is illegal. Typically this is either aNullPointerException
, anIllegalArgumentException
, or aClassCastException
, though an application-specific exception class may be used if appropriate.
-
-