Package org.spongepowered.api.data
Interface KeyValueMatcher<V>
- 
- Type Parameters:
 V- The value type
- All Superinterfaces:
 DataSerializable
public interface KeyValueMatcher<V> extends DataSerializable
Represents a matcher forKeyvalues.This matcher can only be serialized if the underlying value
KeyValueMatchercan also be serialized. 
- 
- 
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interfaceKeyValueMatcher.Builder<V>A builder to createKeyValueMatchers.static classKeyValueMatcher.OperatorRepresents a operator to match the values of a key query. 
- 
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description static KeyValueMatcher.Builder<?>builder()Constructs a newKeyValueMatcher.Builderto createKeyValueMatchers.Key<? extends Value<V>>key()Gets theKeythat is being used to match key and matcher values.booleanmatches(@Nullable V value)Checks whether the given value is matched by this matcher.default booleanmatchesContainer(ValueContainer valueContainer)Checks whether the value of theValueContaineris matched by this matcher.static <V> KeyValueMatcher<V>of(Key<? extends Value<V>> key, V value)Creates aKeyValueMatcherfrom the given key and value.static <V> KeyValueMatcher<V>of(Key<? extends Value<V>> key, V value, KeyValueMatcher.Operator operator)Creates aKeyValueMatcherfrom the given key, value and operator.KeyValueMatcher.Operatoroperator()Gets the operator of the matcher.Optional<V>value()Gets the value of the query.- 
Methods inherited from interface org.spongepowered.api.data.persistence.DataSerializable
contentVersion, toContainer 
 - 
 
 - 
 
- 
- 
Method Detail
- 
of
static <V> KeyValueMatcher<V> of(Key<? extends Value<V>> key, V value)
Creates aKeyValueMatcherfrom the given key and value. The default operatorKeyValueMatcher.Operator.EQUALwill be used.- Type Parameters:
 V- The value type- Parameters:
 key- The key of which the value should be matchedvalue- The matcher value that key values will be matched against- Returns:
 - The key value matcher
 
 
- 
of
static <V> KeyValueMatcher<V> of(Key<? extends Value<V>> key, V value, KeyValueMatcher.Operator operator)
Creates aKeyValueMatcherfrom the given key, value and operator.- Type Parameters:
 V- The value type- Parameters:
 key- The key of which the value should be matchedvalue- The matcher value that key values will be matched againstoperator- The operator how the value should be matched- Returns:
 - The key value matcher
 
 
- 
builder
static KeyValueMatcher.Builder<?> builder()
Constructs a newKeyValueMatcher.Builderto createKeyValueMatchers.- Returns:
 - The builder
 
 
- 
key
Key<? extends Value<V>> key()
Gets theKeythat is being used to match key and matcher values.- Returns:
 - The key
 
 
- 
operator
KeyValueMatcher.Operator operator()
Gets the operator of the matcher.- Returns:
 - The operator
 
 
- 
value
Optional<V> value()
Gets the value of the query. A empty optional represents the property not being present.- Returns:
 - The value
 
 
- 
matchesContainer
default boolean matchesContainer(ValueContainer valueContainer)
Checks whether the value of theValueContaineris matched by this matcher.- Parameters:
 valueContainer- The value container to get the key value from- Returns:
 - Whether this matcher matches the key value
 
 
- 
matches
boolean matches(@Nullable V value)
Checks whether the given value is matched by this matcher.- Parameters:
 value- The key value, a null value represents that the key doesn't exist- Returns:
 - Whether this matcher matches the key value
 
 
 - 
 
 -