Package org.apache.camel.util
Class CollectionHelper
- java.lang.Object
-
- org.apache.camel.util.CollectionHelper
-
public final class CollectionHelper extends Object
A number of helper methods for working with collections
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static void
appendValue(Map<String,Object> map, String key, Object value)
Sets the value of the entry in the map for the given key, though if the map already contains a value for the given key then the value is appended to a list of values.static String
collectionAsCommaDelimitedString(Collection<?> col)
static <T> Set<T>
createSetContaining(T... contents)
static Map<String,Object>
flattenKeysInMap(Map<String,Object> map, String separator)
Traverses the given map recursively and flattern the keys by combining them with the optional separator.static <K,V>
Map<K,V>immutableMapOf(Supplier<Map<K,V>> creator, K key, V value, Object... keyVals)
Build an immutable map from varargs.static <K,V>
Map<K,V>immutableMapOf(K key, V value, Object... keyVals)
Build an immutable map from varargs.static <K,V>
Map<K,V>mapOf(Supplier<Map<K,V>> creator, K key, V value, Object... keyVals)
Build a map from varargs.static <K,V>
Map<K,V>mapOf(K key, V value, Object... keyVals)
Build a map from varargs.static <K,V>
Map<K,V>mergeMaps(Map<K,V> map, Map<K,V>... maps)
Build a new map that is the result of merging the given list of maps.static Properties
propertiesOf(String key, String value, String... keyVals)
Build aProperties
from varargs.static Integer
size(Object value)
Returns the size of the collection if it can be determined to be a collectionstatic <K,V>
Map<K,V>unmodifiableMap(Map<K,V> map)
Build an unmodifiable map on top of a given map.
-
-
-
Method Detail
-
size
public static Integer size(Object value)
Returns the size of the collection if it can be determined to be a collection- Parameters:
value
- the collection- Returns:
- the size, or null if not a collection
-
appendValue
public static void appendValue(Map<String,Object> map, String key, Object value)
Sets the value of the entry in the map for the given key, though if the map already contains a value for the given key then the value is appended to a list of values.- Parameters:
map
- the map to add the entry tokey
- the key in the mapvalue
- the value to put in the map
-
createSetContaining
@SafeVarargs public static <T> Set<T> createSetContaining(T... contents)
-
collectionAsCommaDelimitedString
public static String collectionAsCommaDelimitedString(Collection<?> col)
-
flattenKeysInMap
public static Map<String,Object> flattenKeysInMap(Map<String,Object> map, String separator)
Traverses the given map recursively and flattern the keys by combining them with the optional separator.- Parameters:
map
- the mapseparator
- optional separator to use in key name, for example a hyphen or dot.- Returns:
- the map with flattern keys
-
unmodifiableMap
public static <K,V> Map<K,V> unmodifiableMap(Map<K,V> map)
Build an unmodifiable map on top of a given map. Note tha thew given map is copied if not null.- Parameters:
map
- a map- Returns:
- an unmodifiable map.
-
mapOf
public static <K,V> Map<K,V> mapOf(Supplier<Map<K,V>> creator, K key, V value, Object... keyVals)
Build a map from varargs.
-
immutableMapOf
public static <K,V> Map<K,V> immutableMapOf(Supplier<Map<K,V>> creator, K key, V value, Object... keyVals)
Build an immutable map from varargs.
-
mapOf
public static <K,V> Map<K,V> mapOf(K key, V value, Object... keyVals)
Build a map from varargs.
-
immutableMapOf
public static <K,V> Map<K,V> immutableMapOf(K key, V value, Object... keyVals)
Build an immutable map from varargs.
-
propertiesOf
public static Properties propertiesOf(String key, String value, String... keyVals)
Build aProperties
from varargs.
-
mergeMaps
@SafeVarargs public static <K,V> Map<K,V> mergeMaps(Map<K,V> map, Map<K,V>... maps)
Build a new map that is the result of merging the given list of maps.
-
-