Class ImmutableValueMap
java.lang.Object
org.apache.sling.testing.mock.sling.builder.ImmutableValueMap
@ProviderType
public final class ImmutableValueMap
extends Object
implements org.apache.sling.api.resource.ValueMap
ValueMap
that 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 -
Field Summary
Fields inherited from interface org.apache.sling.api.resource.ValueMap
EMPTY
-
Method Summary
Modifier and TypeMethodDescriptionstatic @NotNull ImmutableValueMap.Builder
builder()
Returns a new builder.void
clear()
Deprecated.Unsupported operationboolean
containsKey
(Object key) boolean
containsValue
(Object value) static @NotNull ImmutableValueMap
Returns an immutable map containing the same entries asmap
.entrySet()
boolean
<T> T
<T> T
int
hashCode()
boolean
isEmpty()
keySet()
static @NotNull ImmutableValueMap
of()
Returns the empty map.static @NotNull ImmutableValueMap
Returns an immutable map containing a single entry.static @NotNull ImmutableValueMap
Returns an immutable map containing the given entries, in order.static @NotNull ImmutableValueMap
of
(@NotNull String k1, @NotNull Object v1, @NotNull String k2, @NotNull Object v2, @NotNull String k3, @NotNull Object v3) Returns an immutable map containing the given entries, in order.static @NotNull ImmutableValueMap
of
(@NotNull String k1, @NotNull Object v1, @NotNull String k2, @NotNull Object v2, @NotNull String k3, @NotNull Object v3, @NotNull String k4, @NotNull Object v4) Returns an immutable map containing the given entries, in order.static ImmutableValueMap
of
(@NotNull String k1, @NotNull Object v1, @NotNull String k2, @NotNull Object v2, @NotNull String k3, @NotNull Object v3, @NotNull String k4, @NotNull Object v4, @NotNull String k5, @NotNull Object v5) Returns an immutable map containing the given entries, in order.Deprecated.Unsupported operationvoid
Deprecated.Unsupported operationDeprecated.Unsupported operationint
size()
toString()
values()
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.util.Map
compute, computeIfAbsent, computeIfPresent, forEach, getOrDefault, merge, putIfAbsent, remove, replace, replace, replaceAll
-
Method Details
-
get
- Specified by:
get
in interfaceorg.apache.sling.api.resource.ValueMap
-
get
- Specified by:
get
in interfaceorg.apache.sling.api.resource.ValueMap
-
size
public int size() -
isEmpty
public boolean isEmpty() -
containsKey
- Specified by:
containsKey
in interfaceMap<String,
Object>
-
containsValue
- Specified by:
containsValue
in interfaceMap<String,
Object>
-
get
-
keySet
-
values
-
entrySet
-
hashCode
public int hashCode() -
equals
-
toString
-
put
Deprecated.Unsupported operation -
remove
Deprecated.Unsupported operation -
putAll
Deprecated.Unsupported operation -
clear
Deprecated.Unsupported operation -
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 String k1, @NotNull @NotNull 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 String k1, @NotNull @NotNull Object v1, @NotNull @NotNull String k2, @NotNull @NotNull 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:
IllegalArgumentException
- if duplicate keys are provided
-
of
@NotNull public static @NotNull ImmutableValueMap of(@NotNull @NotNull String k1, @NotNull @NotNull Object v1, @NotNull @NotNull String k2, @NotNull @NotNull Object v2, @NotNull @NotNull String k3, @NotNull @NotNull 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:
IllegalArgumentException
- if duplicate keys are provided
-
of
@NotNull public static @NotNull ImmutableValueMap of(@NotNull @NotNull String k1, @NotNull @NotNull Object v1, @NotNull @NotNull String k2, @NotNull @NotNull Object v2, @NotNull @NotNull String k3, @NotNull @NotNull Object v3, @NotNull @NotNull String k4, @NotNull @NotNull 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:
IllegalArgumentException
- if duplicate keys are provided
-
of
public static ImmutableValueMap of(@NotNull @NotNull String k1, @NotNull @NotNull Object v1, @NotNull @NotNull String k2, @NotNull @NotNull Object v2, @NotNull @NotNull String k3, @NotNull @NotNull Object v3, @NotNull @NotNull String k4, @NotNull @NotNull Object v4, @NotNull @NotNull String k5, @NotNull @NotNull 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:
IllegalArgumentException
- if duplicate keys are provided
-
builder
Returns a new builder. The generated builder is equivalent to the builder created by theImmutableValueMap.Builder
constructor.- Returns:
- Builder
-
copyOf
Returns an immutable map containing the same entries asmap
. Ifmap
somehow contains entries with duplicate keys (for example, if it is aSortedMap
whose 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:
NullPointerException
- if any key or value inmap
is null
-