Package org.restlet.util
Class Series<T extends NamedValue<String>>
java.lang.Object
org.restlet.util.WrapperList<T>
org.restlet.util.Series<T>
- Type Parameters:
T- The contained type
- All Implemented Interfaces:
Iterable<T>,Collection<T>,List<T>
- Direct Known Subclasses:
Form
Modifiable list of entries with many helper methods. Note that this class
uses the Parameter class as the template type. This allows you to use an
instance of this class as any other java.util.List, in particular all the
helper methods in java.util.Collections.
- Author:
- Jerome Louvel
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final ObjectA marker for empty values to differentiate from non existing values (null). -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleanCreates then adds a parameter at the end of the list.voidCopies the parameters whose name is a key in the given map.
If a matching parameter is found, its value is put in the map.
If multiple values are found, a list is created and set in the map.createEntry(String name, String value) Creates a new entry.Returns the first parameter found with the given name.Returns the first parameter found with the given name.getFirstValue(String name) Returns the value of the first parameter found with the given name.getFirstValue(String name, boolean ignoreCase) Returns the value of the first parameter found with the given name.getFirstValue(String name, boolean ignoreCase, String defaultValue) Returns the value of the first parameter found with the given name.getFirstValue(String name, String defaultValue) Returns the value of the first parameter found with the given name.getNames()Returns the set of parameter names (case-sensitive).Returns the values of the parameters with a given name.Returns the parameter values with a given name.String[]getValuesArray(String name) Returns an array of all the values associated to the given parameter name.String[]getValuesArray(String name, boolean ignoreCase) Returns an array of all the values associated to the given parameter name.String[]getValuesArray(String name, boolean ignoreCase, String defaultValue) Returns an array of all the values associated to the given parameter name.String[]getValuesArray(String name, String defaultValue) Returns an array of all the values associated to the given parameter name.Returns a map of name, value pairs.booleanRemoves all the parameters with a given name.booleanRemoves all the parameters with a given name.booleanremoveFirst(String name) Removes from this list the first entry whose name equals the specified name ignoring the case.booleanremoveFirst(String name, boolean ignoreCase) Removes from this list the first entry whose name equals the specified name ignoring the case or not.Replaces the value of the first parameter with the given name and removes all other parameters with the same name.Replaces the value of the first parameter with the given name and removes all other parameters with the same name.subList(int fromIndex, int toIndex) Returns a view of the portion of this list between the specified fromIndex, inclusive, and toIndex, exclusive.Returns a list of all the values associated to the parameter name.Returns a list of all the values associated to the parameter name.static Series<? extends NamedValue>unmodifiableSeries(Series<? extends NamedValue> series) Returns an unmodifiable view of the specified series.Methods inherited from class org.restlet.util.WrapperList
add, add, addAll, addAll, clear, contains, containsAll, equals, get, getDelegate, hashCode, indexOf, isEmpty, iterator, lastIndexOf, listIterator, listIterator, remove, remove, removeAll, retainAll, set, size, toArray, toArray, toStringMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface java.util.Collection
parallelStream, removeIf, stream, toArrayMethods inherited from interface java.util.List
replaceAll, sort, spliterator
-
Field Details
-
EMPTY_VALUE
A marker for empty values to differentiate from non existing values (null).
-
-
Constructor Details
-
Series
Constructor. -
Series
Constructor.- Parameters:
initialCapacity- The initial list capacity.
-
Series
Constructor.- Parameters:
delegate- The delegate list.
-
-
Method Details
-
unmodifiableSeries
Returns an unmodifiable view of the specified series. Attempts to call a modification method will throw an UnsupportedOperationException.- Parameters:
series- The series for which an unmodifiable view should be returned.- Returns:
- The unmodifiable view of the specified series.
-
add
Creates then adds a parameter at the end of the list.- Parameters:
name- The parameter name.value- The parameter value.- Returns:
- True (as per the general contract of the Collection.add method).
-
copyTo
Copies the parameters whose name is a key in the given map.
If a matching parameter is found, its value is put in the map.
If multiple values are found, a list is created and set in the map.- Parameters:
params- The map controlling the copy.
-
createEntry
Creates a new entry.- Parameters:
name- The name of the entry.value- The value of the entry.- Returns:
- A new entry.
-
getFirst
Returns the first parameter found with the given name.- Parameters:
name- The parameter name (case sensitive).- Returns:
- The first parameter found with the given name.
-
getFirst
Returns the first parameter found with the given name.- Parameters:
name- The parameter name.ignoreCase- Indicates if the name comparison is case insensitive.- Returns:
- The first parameter found with the given name.
-
getFirstValue
Returns the value of the first parameter found with the given name.- Parameters:
name- The parameter name (case-sensitive).- Returns:
- The value of the first parameter found with the given name.
-
getFirstValue
Returns the value of the first parameter found with the given name.- Parameters:
name- The parameter name.ignoreCase- Indicates if the name comparison is case-sensitive.- Returns:
- The value of the first parameter found with the given name.
-
getFirstValue
Returns the value of the first parameter found with the given name.- Parameters:
name- The parameter name.ignoreCase- Indicates if the name comparison is case sensitive.defaultValue- The default value to return if no matching parameter found or if the parameter has a null value.- Returns:
- The value of the first parameter found with the given name or the default value.
-
getFirstValue
Returns the value of the first parameter found with the given name.- Parameters:
name- The parameter name (case-sensitive).defaultValue- The default value to return if no matching parameter found or if the parameter has a null value.- Returns:
- The value of the first parameter found with the given name or the default value.
-
getNames
Returns the set of parameter names (case-sensitive).- Returns:
- The set of parameter names.
-
getValues
Returns the values of the parameters with a given name. If multiple parameters with the same name are found, all values are concatenated and separated by a comma (like for HTTP message headers).- Parameters:
name- The parameter name (case insensitive).- Returns:
- The values of the parameters with a given name.
-
getValues
Returns the parameter values with a given name. If multiple parameters with the same name are found, all values are concatenated and separated by the given separator.- Parameters:
name- The parameter name.separator- The separator character.ignoreCase- Indicates if the name comparison is case sensitive.- Returns:
- The sequence of values.
-
getValuesArray
Returns an array of all the values associated to the given parameter name.- Parameters:
name- The parameter name to match (case sensitive).- Returns:
- The array of values.
-
getValuesArray
Returns an array of all the values associated to the given parameter name.- Parameters:
name- The parameter name to match.ignoreCase- Indicates if the name comparison is case sensitive.- Returns:
- The array of values.
-
getValuesArray
Returns an array of all the values associated to the given parameter name.- Parameters:
name- The parameter name to match.ignoreCase- Indicates if the name comparison is case-sensitive.defaultValue- The default value to return if no matching parameter found or if the parameter has a null value.- Returns:
- The array of values.
-
getValuesArray
Returns an array of all the values associated to the given parameter name.- Parameters:
name- The parameter name to match.defaultValue- The default value to return if no matching parameter found or if the parameter has a null value.- Returns:
- The array of values.
-
getValuesMap
Returns a map of name, value pairs. The order of the map keys is respected based on the series order. When a name has multiple values, only the first one is put in the map.- Returns:
- The map of name, value pairs.
-
removeAll
Removes all the parameters with a given name.- Parameters:
name- The parameter name (case-sensitive).- Returns:
- True if the list changed.
-
removeAll
Removes all the parameters with a given name.- Parameters:
name- The parameter name.ignoreCase- Indicates if the name comparison is case-insensitive.- Returns:
- True if the list changed.
-
removeFirst
Removes from this list the first entry whose name equals the specified name ignoring the case.- Parameters:
name- The name of the entries to be removed (case-sensitive).- Returns:
- false if no entry has been removed, true otherwise.
-
removeFirst
Removes from this list the first entry whose name equals the specified name ignoring the case or not.- Parameters:
name- The name of the entries to be removed.ignoreCase- Indicates if the name comparison is case-insensitive.- Returns:
- false if no entry has been removed, true otherwise.
-
set
Replaces the value of the first parameter with the given name and removes all other parameters with the same name. The name matching is case-sensitive.- Parameters:
name- The parameter name.value- The value to set.- Returns:
- The parameter set or added.
-
set
Replaces the value of the first parameter with the given name and removes all other parameters with the same name.- Parameters:
name- The parameter name.value- The value to set.ignoreCase- Indicates if the name comparison is case-insensitive.- Returns:
- The parameter set or added.
-
subList
Returns a view of the portion of this list between the specified fromIndex, inclusive, and toIndex, exclusive.- Specified by:
subListin interfaceList<T extends NamedValue<String>>- Overrides:
subListin classWrapperList<T extends NamedValue<String>>- Parameters:
fromIndex- The start position.toIndex- The end position (exclusive).- Returns:
- The sub-list.
-
subList
Returns a list of all the values associated to the parameter name.- Parameters:
name- The parameter name (case-sensitive).- Returns:
- The list of values.
-
subList
Returns a list of all the values associated to the parameter name.- Parameters:
name- The parameter name.ignoreCase- Indicates if the name comparison is case-insensitive.- Returns:
- The list of values.
-