Class ImmutableSetMultimap<K,V>

java.lang.Object
com.atlassian.bamboo.utils.collection.multimap.ImmutableSetMultimap<K,V>
All Implemented Interfaces:
ImmutableMultimap<K,V>

public final class ImmutableSetMultimap<K,V> extends Object implements ImmutableMultimap<K,V>
  • Method Details

    • create

      public static <K, V> ImmutableSetMultimap<K,V> create()
    • of

      public static <K, V> ImmutableSetMultimap<K,V> of(Collection<Pair<K,V>> input)
    • of

      public static <K, V> ImmutableSetMultimap<K,V> of(K key, V value)
    • get

      public Collection<V> get(K key)
      Description copied from interface: ImmutableMultimap
      Retrieves the collection of values associated with the specified key in this multimap.
      Specified by:
      get in interface ImmutableMultimap<K,V>
      Parameters:
      key - the key whose associated values are to be returned
      Returns:
      the collection of values associated with the specified key, or an empty collection if no values are associated with the key
    • keySet

      public Set<K> keySet()
      Description copied from interface: ImmutableMultimap
      Returns the set of keys contained in this multimap.
      Specified by:
      keySet in interface ImmutableMultimap<K,V>
      Returns:
      the set of keys contained in this multimap
    • containsKey

      public boolean containsKey(K key)
      Description copied from interface: ImmutableMultimap
      Returns true if this multimap contains one or more keys to the specified value.
      Specified by:
      containsKey in interface ImmutableMultimap<K,V>
      Parameters:
      key - key whose presence in this multimap is to be tested
      Returns:
      true if this multimap contains a mapping for the specified key
    • values

      public Collection<V> values()
      Description copied from interface: ImmutableMultimap
      Returns a collection view of all values associated with keys in this multimap.
      Specified by:
      values in interface ImmutableMultimap<K,V>
      Returns:
      a collection view of all values contained in this multimap
    • isEmpty

      public boolean isEmpty()
      Description copied from interface: ImmutableMultimap
      Returns true if this multimap contains no key-value mappings.
      Specified by:
      isEmpty in interface ImmutableMultimap<K,V>
      Returns:
      true if this multimap contains no key-value mappings
    • asMap

      public Map<K,Collection<V>> asMap()
      Description copied from interface: ImmutableMultimap
      Returns a view of the mappings contained in this multimap as a map from each key to its corresponding values.
      Specified by:
      asMap in interface ImmutableMultimap<K,V>
      Returns:
      a map view of the mappings contained in this multimap
    • entries

      public Collection<Map.Entry<K,V>> entries()
      Description copied from interface: ImmutableMultimap
      Returns a collection view of all key-value pairs contained in this multimap. Each key-value pair is represented as a Map.Entry. If the multimap allows duplicate values, a separate Map.Entry will be included for each duplicate value.
      Specified by:
      entries in interface ImmutableMultimap<K,V>
      Returns:
      a collection view of all key-value pairs contained in this multimap
    • size

      public int size()
      Description copied from interface: ImmutableMultimap
      Returns the total number of key-value pairs in the multimap.
      Specified by:
      size in interface ImmutableMultimap<K,V>
      Returns:
      the total number of key-value pairs
    • copy

      public ImmutableMultimap<K,V> copy()
      Description copied from interface: ImmutableMultimap
      Creates a deep copy of this multimap.
      Specified by:
      copy in interface ImmutableMultimap<K,V>
      Returns:
      a new multimap instance containing the same key-value mappings as this multimap
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • inverse

      public ImmutableSetMultimap<V,K> inverse()
      Description copied from interface: ImmutableMultimap
      Creates an inverse view of this multimap. In the inverse multimap, each value in the original multimap becomes a key in the new multimap, and each key in the original becomes part of the set of values associated with the new key. The inverse multimap is also immutable.
      Specified by:
      inverse in interface ImmutableMultimap<K,V>
      Returns:
      a new ImmutableMultimap instance where the roles of keys and values are swapped