Package io.wcm.sling.commons.resource
Class ImmutableValueMap
- java.lang.Object
-
- io.wcm.sling.commons.resource.ImmutableValueMap
-
- All Implemented Interfaces:
java.util.Map<java.lang.String,java.lang.Object>,org.apache.sling.api.resource.ValueMap
@ProviderType public final class ImmutableValueMap extends java.lang.Object implements org.apache.sling.api.resource.ValueMapValueMapthat does not support changing its content.All methods that may change the content will throw a
UnsupportedOperationException.Static convenience methods provide similar behavior as Guava ImmutableMap variants.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classImmutableValueMap.BuilderBuilder interface forImmutableValueMap.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description static @NotNull ImmutableValueMap.Builderbuilder()Returns a new builder.voidclear()Deprecated.Unsupported operationbooleancontainsKey(java.lang.Object key)booleancontainsValue(java.lang.Object value)static @NotNull ImmutableValueMapcopyOf(@NotNull java.util.Map<java.lang.String,java.lang.Object> map)Returns an immutable map containing the same entries asmap.java.util.Set<java.util.Map.Entry<java.lang.String,java.lang.Object>>entrySet()booleanequals(java.lang.Object obj)<T> Tget(@NotNull java.lang.String name, @NotNull java.lang.Class<T> type)<T> Tget(@NotNull java.lang.String name, T defaultValue)java.lang.Objectget(java.lang.Object key)inthashCode()booleanisEmpty()java.util.Set<java.lang.String>keySet()static @NotNull ImmutableValueMapof()Returns the empty map.static @NotNull ImmutableValueMapof(@NotNull java.lang.String k1, @NotNull java.lang.Object v1)Returns an immutable map containing a single entry.static @NotNull ImmutableValueMapof(@NotNull java.lang.String k1, @NotNull java.lang.Object v1, @NotNull java.lang.String k2, @NotNull java.lang.Object v2)Returns an immutable map containing the given entries, in order.static @NotNull ImmutableValueMapof(@NotNull java.lang.String k1, @NotNull java.lang.Object v1, @NotNull java.lang.String k2, @NotNull java.lang.Object v2, @NotNull java.lang.String k3, @NotNull java.lang.Object v3)Returns an immutable map containing the given entries, in order.static @NotNull ImmutableValueMapof(@NotNull java.lang.String k1, @NotNull java.lang.Object v1, @NotNull java.lang.String k2, @NotNull java.lang.Object v2, @NotNull java.lang.String k3, @NotNull java.lang.Object v3, @NotNull java.lang.String k4, @NotNull java.lang.Object v4)Returns an immutable map containing the given entries, in order.static ImmutableValueMapof(@NotNull java.lang.String k1, @NotNull java.lang.Object v1, @NotNull java.lang.String k2, @NotNull java.lang.Object v2, @NotNull java.lang.String k3, @NotNull java.lang.Object v3, @NotNull java.lang.String k4, @NotNull java.lang.Object v4, @NotNull java.lang.String k5, @NotNull java.lang.Object v5)Returns an immutable map containing the given entries, in order.java.lang.Objectput(java.lang.String key, java.lang.Object value)Deprecated.Unsupported operationvoidputAll(java.util.Map<? extends java.lang.String,? extends java.lang.Object> m)Deprecated.Unsupported operationjava.lang.Objectremove(java.lang.Object key)Deprecated.Unsupported operationintsize()java.lang.StringtoString()java.util.Collection<java.lang.Object>values()
-
-
-
Method Detail
-
get
@Nullable public <T> T get(@NotNull @NotNull java.lang.String name, @NotNull @NotNull java.lang.Class<T> type)- Specified by:
getin interfaceorg.apache.sling.api.resource.ValueMap
-
get
@NotNull public <T> T get(@NotNull @NotNull java.lang.String name, @NotNull T defaultValue)- Specified by:
getin interfaceorg.apache.sling.api.resource.ValueMap
-
size
public int size()
- Specified by:
sizein interfacejava.util.Map<java.lang.String,java.lang.Object>
-
isEmpty
public boolean isEmpty()
- Specified by:
isEmptyin interfacejava.util.Map<java.lang.String,java.lang.Object>
-
containsKey
public boolean containsKey(java.lang.Object key)
- Specified by:
containsKeyin interfacejava.util.Map<java.lang.String,java.lang.Object>
-
containsValue
public boolean containsValue(java.lang.Object value)
- Specified by:
containsValuein interfacejava.util.Map<java.lang.String,java.lang.Object>
-
get
public java.lang.Object get(java.lang.Object key)
- Specified by:
getin interfacejava.util.Map<java.lang.String,java.lang.Object>
-
keySet
public java.util.Set<java.lang.String> keySet()
- Specified by:
keySetin interfacejava.util.Map<java.lang.String,java.lang.Object>
-
values
public java.util.Collection<java.lang.Object> values()
- Specified by:
valuesin interfacejava.util.Map<java.lang.String,java.lang.Object>
-
entrySet
public java.util.Set<java.util.Map.Entry<java.lang.String,java.lang.Object>> entrySet()
- Specified by:
entrySetin interfacejava.util.Map<java.lang.String,java.lang.Object>
-
hashCode
public int hashCode()
- Specified by:
hashCodein interfacejava.util.Map<java.lang.String,java.lang.Object>- Overrides:
hashCodein classjava.lang.Object
-
equals
public boolean equals(java.lang.Object obj)
- Specified by:
equalsin interfacejava.util.Map<java.lang.String,java.lang.Object>- Overrides:
equalsin classjava.lang.Object
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
put
@Deprecated public java.lang.Object put(java.lang.String key, java.lang.Object value)Deprecated.Unsupported operation- Specified by:
putin interfacejava.util.Map<java.lang.String,java.lang.Object>
-
remove
@Deprecated public java.lang.Object remove(java.lang.Object key)
Deprecated.Unsupported operation- Specified by:
removein interfacejava.util.Map<java.lang.String,java.lang.Object>
-
putAll
@Deprecated public void putAll(java.util.Map<? extends java.lang.String,? extends java.lang.Object> m)
Deprecated.Unsupported operation- Specified by:
putAllin interfacejava.util.Map<java.lang.String,java.lang.Object>
-
clear
@Deprecated public void clear()
Deprecated.Unsupported operation- Specified by:
clearin interfacejava.util.Map<java.lang.String,java.lang.Object>
-
of
@NotNull public static @NotNull ImmutableValueMap of()
Returns the empty map. This map behaves and performs comparably toCollections.emptyMap(), and is preferable mainly for consistency and maintainability of your code.- Returns:
- ImmutableValueMap
-
of
@NotNull public static @NotNull ImmutableValueMap of(@NotNull @NotNull java.lang.String k1, @NotNull @NotNull java.lang.Object v1)
Returns an immutable map containing a single entry. This map behaves and performs comparably toCollections.singletonMap(K, V)but will not accept a null key or value. It is preferable mainly for consistency and maintainability of your code.- Parameters:
k1- Key 1v1- Value 1- Returns:
- ImmutableValueMap
-
of
@NotNull public static @NotNull ImmutableValueMap of(@NotNull @NotNull java.lang.String k1, @NotNull @NotNull java.lang.Object v1, @NotNull @NotNull java.lang.String k2, @NotNull @NotNull java.lang.Object v2)
Returns an immutable map containing the given entries, in order.- Parameters:
k1- Key 1v1- Value 1k2- Key 2v2- Value 2- Returns:
- ImmutableValueMap
- Throws:
java.lang.IllegalArgumentException- if duplicate keys are provided
-
of
@NotNull public static @NotNull ImmutableValueMap of(@NotNull @NotNull java.lang.String k1, @NotNull @NotNull java.lang.Object v1, @NotNull @NotNull java.lang.String k2, @NotNull @NotNull java.lang.Object v2, @NotNull @NotNull java.lang.String k3, @NotNull @NotNull java.lang.Object v3)
Returns an immutable map containing the given entries, in order.- Parameters:
k1- Key 1v1- Value 1k2- Key 2v2- Value 2k3- Key 3v3- Value 3- Returns:
- ImmutableValueMap
- Throws:
java.lang.IllegalArgumentException- if duplicate keys are provided
-
of
@NotNull public static @NotNull ImmutableValueMap of(@NotNull @NotNull java.lang.String k1, @NotNull @NotNull java.lang.Object v1, @NotNull @NotNull java.lang.String k2, @NotNull @NotNull java.lang.Object v2, @NotNull @NotNull java.lang.String k3, @NotNull @NotNull java.lang.Object v3, @NotNull @NotNull java.lang.String k4, @NotNull @NotNull java.lang.Object v4)
Returns an immutable map containing the given entries, in order.- Parameters:
k1- Key 1v1- Value 1k2- Key 2v2- Value 2k3- Key 3v3- Value 3k4- Key 4v4- Value 4- Returns:
- ImmutableValueMap
- Throws:
java.lang.IllegalArgumentException- if duplicate keys are provided
-
of
public static ImmutableValueMap of(@NotNull @NotNull java.lang.String k1, @NotNull @NotNull java.lang.Object v1, @NotNull @NotNull java.lang.String k2, @NotNull @NotNull java.lang.Object v2, @NotNull @NotNull java.lang.String k3, @NotNull @NotNull java.lang.Object v3, @NotNull @NotNull java.lang.String k4, @NotNull @NotNull java.lang.Object v4, @NotNull @NotNull java.lang.String k5, @NotNull @NotNull java.lang.Object v5)
Returns an immutable map containing the given entries, in order.- Parameters:
k1- Key 1v1- Value 1k2- Key 2v2- Value 2k3- Key 3v3- Value 3k4- Key 4v4- Value 4k5- Key 5v5- Value 5- Returns:
- ImmutableValueMap
- Throws:
java.lang.IllegalArgumentException- if duplicate keys are provided
-
builder
@NotNull public static @NotNull ImmutableValueMap.Builder builder()
Returns a new builder. The generated builder is equivalent to the builder created by theImmutableValueMap.Builderconstructor.- Returns:
- Builder
-
copyOf
@NotNull public static @NotNull ImmutableValueMap copyOf(@NotNull @NotNull java.util.Map<java.lang.String,java.lang.Object> map)
Returns an immutable map containing the same entries asmap. Ifmapsomehow contains entries with duplicate keys (for example, if it is aSortedMapwhose comparator is not consistent with equals), the results of this method are undefined.Despite the method name, this method attempts to avoid actually copying the data when it is safe to do so. The exact circumstances under which a copy will or will not be performed are undocumented and subject to change.
- Parameters:
map- Map- Returns:
- ImmutableValueMap
- Throws:
java.lang.NullPointerException- if any key or value inmapis null
-
-