public class TagMap extends java.util.AbstractMap<java.lang.String,java.lang.String> implements java.io.Serializable
AbstractPrimitive.keys.
It offers good performance for few keys.
It uses copy on write, so there cannot be a ConcurrentModificationException while iterating through it.| Modifier and Type | Class and Description |
|---|---|
private static class |
TagMap.TagEntryInterator
An iterator that iterates over the tags in this map.
|
private static class |
TagMap.TagEntrySet
This is the entry set of this map.
|
| Modifier and Type | Field and Description |
|---|---|
private static java.lang.String[] |
EMPTY_TAGS
We use this array every time we want to represent an empty map.
|
(package private) static long |
serialVersionUID |
private java.lang.String[] |
tags
The tags field.
|
| Constructor and Description |
|---|
TagMap()
Creates a new, empty tag map.
|
TagMap(java.util.Collection<Tag> tags)
Creates a new map using the given list of tags.
|
TagMap(java.util.Map<java.lang.String,java.lang.String> tags)
Create a new tag map and load it from the other map.
|
TagMap(java.lang.String... tags)
Creates a new read only tag map using a key/value/key/value/...
|
TagMap(TagMap tagMap)
Copy constructor.
|
| Modifier and Type | Method and Description |
|---|---|
void |
clear() |
boolean |
containsKey(java.lang.Object key) |
boolean |
containsValue(java.lang.Object value) |
java.util.Set<java.util.Map.Entry<java.lang.String,java.lang.String>> |
entrySet() |
java.lang.String |
get(java.lang.Object key) |
java.util.List<Tag> |
getTags()
Gets a list of all tags contained in this map.
|
(package private) java.lang.String[] |
getTagsArray()
Gets the backing tags array.
|
private static int |
indexOfKey(java.lang.String[] tags,
java.lang.Object key)
Finds a key in an array that is structured like the
tags array and returns the position. |
java.lang.String |
put(java.lang.String key,
java.lang.String value) |
java.lang.String |
remove(java.lang.Object key) |
int |
size() |
java.lang.String |
toString() |
clone, equals, hashCode, isEmpty, keySet, putAll, valuesstatic final long serialVersionUID
private static final java.lang.String[] EMPTY_TAGS
private volatile java.lang.String[] tags
public TagMap()
public TagMap(java.util.Map<java.lang.String,java.lang.String> tags)
tags - The map to load from.public TagMap(TagMap tagMap)
tagMap - The map to copy from.public TagMap(java.lang.String... tags)
The array that is passed as parameter may not be modified after passing it to this map.
tags - The tags array. It is not modified by this map.public java.util.Set<java.util.Map.Entry<java.lang.String,java.lang.String>> entrySet()
entrySet in interface java.util.Map<java.lang.String,java.lang.String>entrySet in class java.util.AbstractMap<java.lang.String,java.lang.String>public boolean containsKey(java.lang.Object key)
containsKey in interface java.util.Map<java.lang.String,java.lang.String>containsKey in class java.util.AbstractMap<java.lang.String,java.lang.String>public java.lang.String get(java.lang.Object key)
get in interface java.util.Map<java.lang.String,java.lang.String>get in class java.util.AbstractMap<java.lang.String,java.lang.String>public boolean containsValue(java.lang.Object value)
containsValue in interface java.util.Map<java.lang.String,java.lang.String>containsValue in class java.util.AbstractMap<java.lang.String,java.lang.String>public java.lang.String put(java.lang.String key, java.lang.String value)
put in interface java.util.Map<java.lang.String,java.lang.String>put in class java.util.AbstractMap<java.lang.String,java.lang.String>public java.lang.String remove(java.lang.Object key)
remove in interface java.util.Map<java.lang.String,java.lang.String>remove in class java.util.AbstractMap<java.lang.String,java.lang.String>public void clear()
clear in interface java.util.Map<java.lang.String,java.lang.String>clear in class java.util.AbstractMap<java.lang.String,java.lang.String>public int size()
size in interface java.util.Map<java.lang.String,java.lang.String>size in class java.util.AbstractMap<java.lang.String,java.lang.String>public java.util.List<Tag> getTags()
private static int indexOfKey(java.lang.String[] tags, java.lang.Object key)
tags array and returns the position.
We allow the parameter to be passed to allow for better synchronization.
tags - The tags array to search through.key - The key to search.public java.lang.String toString()
toString in class java.util.AbstractMap<java.lang.String,java.lang.String>java.lang.String[] getTagsArray()