public class SimpleBindings extends Object implements Bindings
A simple implementation of Bindings backed by a HashMap
or some other specified Map
.
Map.Entry<K,V>
public SimpleBindings(Map<String,Object> m)
Constructor uses an existing Map
to store the values.
m
- The Map
backing this SimpleBindings
.NullPointerException
- if m is nullpublic SimpleBindings()
Default constructor uses a HashMap
.
public Object put(String name, Object value)
Sets the specified key/value in the underlying map
field.
put
in interface Map<String,Object>
put
in interface Bindings
name
- Name of valuevalue
- Value to set.NullPointerException
- if the name is null.IllegalArgumentException
- if the name is empty.public void putAll(Map<? extends String,? extends Object> toMerge)
putAll
is implemented using Map.putAll
.
putAll
in interface Map<String,Object>
putAll
in interface Bindings
toMerge
- The Map
of values to add.NullPointerException
- if toMerge map is null or if some key in the map is null.IllegalArgumentException
- if some key in the map is an empty String.public void clear()
Removes all of the mappings from this map (optional operation). The map will be empty after this call returns.
public boolean containsKey(Object key)
Returns true
if this map contains a mapping for the specified key. More formally, returns true
if and only if this map contains a mapping for a key k
such that (key==null ? k==null : key.equals(k))
. (There can be at most one such mapping.)
containsKey
in interface Map<String,Object>
containsKey
in interface Bindings
key
- key whose presence in this map is to be tested.true
if this map contains a mapping for the specified key.NullPointerException
- if key is nullClassCastException
- if key is not StringIllegalArgumentException
- if key is empty Stringpublic boolean containsValue(Object value)
Returns true
if this map maps one or more keys to the specified value. More formally, returns true
if and only if this map contains at least one mapping to a value v
such that (value==null ? v==null : value.equals(v))
. This operation will probably require time linear in the map size for most implementations of the Map
interface.
containsValue
in interface Map<String,Object>
value
- value whose presence in this map is to be testedtrue
if this map maps one or more keys to the specified valuepublic Set<Map.Entry<String,Object>> entrySet()
Returns a Set
view of the mappings contained in this map. The set is backed by the map, so changes to the map are reflected in the set, and vice-versa. If the map is modified while an iteration over the set is in progress (except through the iterator's own remove
operation, or through the setValue
operation on a map entry returned by the iterator) the results of the iteration are undefined. The set supports element removal, which removes the corresponding mapping from the map, via the Iterator.remove
, Set.remove
, removeAll
, retainAll
and clear
operations. It does not support the add
or addAll
operations.
entrySet
in interface Map<String,Object>
public Object get(Object key)
Returns the value to which this map maps the specified key. Returns null
if the map contains no mapping for this key. A return value of null
does not necessarily indicate that the map contains no mapping for the key; it's also possible that the map explicitly maps the key to null
. The containsKey
operation may be used to distinguish these two cases.
More formally, if this map contains a mapping from a key k
to a value v
such that (key==null ? k==null : key.equals(k))
, then this method returns v
; otherwise it returns null
. (There can be at most one such mapping.)
get
in interface Map<String,Object>
get
in interface Bindings
key
- key whose associated value is to be returned.null
if the map contains no mapping for this key.NullPointerException
- if key is nullClassCastException
- if key is not StringIllegalArgumentException
- if key is empty Stringpublic boolean isEmpty()
Returns true
if this map contains no key-value mappings.
isEmpty
in interface Map<String,Object>
true
if this map contains no key-value mappingspublic Set<String> keySet()
Returns a Set
view of the keys contained in this map. The set is backed by the map, so changes to the map are reflected in the set, and vice-versa. If the map is modified while an iteration over the set is in progress (except through the iterator's own remove
operation), the results of the iteration are undefined. The set supports element removal, which removes the corresponding mapping from the map, via the Iterator.remove
, Set.remove
, removeAll
, retainAll
, and clear
operations. It does not support the add
or addAll
operations.
keySet
in interface Map<String,Object>
public Object remove(Object key)
Removes the mapping for this key from this map if it is present (optional operation). More formally, if this map contains a mapping from key k
to value v
such that (key==null ? k==null : key.equals(k))
, that mapping is removed. (The map can contain at most one such mapping.)
Returns the value to which the map previously associated the key, or null
if the map contained no mapping for this key. (A null
return can also indicate that the map previously associated null
with the specified key if the implementation supports null
values.) The map will not contain a mapping for the specified key once the call returns.
remove
in interface Map<String,Object>
remove
in interface Bindings
key
- key whose mapping is to be removed from the map.null
if there was no mapping for key.NullPointerException
- if key is nullClassCastException
- if key is not StringIllegalArgumentException
- if key is empty Stringpublic int size()
Returns the number of key-value mappings in this map. If the map contains more than Integer.MAX_VALUE
elements, returns Integer.MAX_VALUE
.
size
in interface Map<String,Object>
public Collection<Object> values()
Returns a Collection
view of the values contained in this map. The collection is backed by the map, so changes to the map are reflected in the collection, and vice-versa. If the map is modified while an iteration over the collection is in progress (except through the iterator's own remove
operation), the results of the iteration are undefined. The collection supports element removal, which removes the corresponding mapping from the map, via the Iterator.remove
, Collection.remove
, removeAll
, retainAll
and clear
operations. It does not support the add
or addAll
operations.
values
in interface Map<String,Object>
© 1993–2017, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.