Package org.simpleframework.xml.util
Class Dictionary<T extends Entry>
- java.lang.Object
-
- java.util.AbstractCollection<E>
-
- java.util.AbstractSet<T>
-
- org.simpleframework.xml.util.Dictionary<T>
-
- All Implemented Interfaces:
java.lang.Iterable<T>,java.util.Collection<T>,java.util.Set<T>
public class Dictionary<T extends Entry> extends java.util.AbstractSet<T>TheDictionaryobject represents a mapped set of entry objects that can be serialized and deserialized. This is used when there is a need to load a list of objects that can be mapped using a name attribute. Using this object avoids the need to implement a commonly required pattern of building a map of XML element objects.<dictionary> <entry name="example"> <element>example text</element> </entry> <entry name="example"> <element>example text</element> </entry> </dictionary>This can contain implementations of theEntryobject which contains a required "name" attribute. Implementations of the entry object can add further XML attributes an elements. This must be annotated with theElementListannotation in order to be serialized and deserialized as an object field.- See Also:
Entry
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classDictionary.Table<T>TheTableobject is used to represent a map of entries mapped to a string name.
-
Field Summary
Fields Modifier and Type Field Description protected Dictionary.Table<T>mapUsed to map the entries to their configured names.
-
Constructor Summary
Constructors Constructor Description Dictionary()Constructor for theDictionaryobject.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanadd(T item)This method is used to add the provided entry to this set.Tget(java.lang.String name)This is used to acquire anEntryfrom the set by its name.java.util.Iterator<T>iterator()Returns an iterator ofEntryobjects which can be used to remove items from this set.Tremove(java.lang.String name)This is used to remove anEntryfrom the set by its name.intsize()This returns the number ofEntryobjects within the dictionary.-
Methods inherited from class java.util.AbstractCollection
addAll, clear, contains, containsAll, isEmpty, remove, retainAll, toArray, toArray, toString
-
-
-
-
Field Detail
-
map
protected final Dictionary.Table<T extends Entry> map
Used to map the entries to their configured names.
-
-
Method Detail
-
add
public boolean add(T item)
This method is used to add the provided entry to this set. If an entry of the same name already existed within the set then it is replaced with the specifiedEntryobject.
-
size
public int size()
This returns the number ofEntryobjects within the dictionary. This will use the internal map to acquire the number of entry objects that have been inserted to the map.
-
iterator
public java.util.Iterator<T> iterator()
Returns an iterator ofEntryobjects which can be used to remove items from this set. This will use the internal map object and return the iterator for the map values.- Specified by:
iteratorin interfacejava.util.Collection<T extends Entry>- Specified by:
iteratorin interfacejava.lang.Iterable<T extends Entry>- Specified by:
iteratorin interfacejava.util.Set<T extends Entry>- Specified by:
iteratorin classjava.util.AbstractCollection<T extends Entry>- Returns:
- this returns an iterator for the entry objects
-
get
public T get(java.lang.String name)
This is used to acquire anEntryfrom the set by its name. This uses the internal map to look for the entry, if the entry exists it is returned, if not this returns null.- Parameters:
name- this is the name of the entry object to retrieve- Returns:
- this returns the entry mapped to the specified name
-
remove
public T remove(java.lang.String name)
This is used to remove anEntryfrom the set by its name. This uses the internal map to look for the entry, if the entry exists it is returned and removed from the map.- Parameters:
name- this is the name of the entry object to remove- Returns:
- this returns the entry mapped to the specified name
-
-