Class MapConstraints

    • Method Detail

      • constrainedMap

        public static <K,​V> Map<K,​V> constrainedMap​(Map<K,​V> map,
                                                                MapConstraint<? super K,​? super V> constraint)
        Returns a constrained view of the specified map, using the specified constraint. Any operations that add new mappings will call the provided constraint. However, this method does not verify that existing mappings satisfy the constraint.

        The returned map is not serializable.

        Parameters:
        map - the map to constrain
        constraint - the constraint that validates added entries
        Returns:
        a constrained view of the specified map
      • constrainedMultimap

        public static <K,​V> Multimap<K,​V> constrainedMultimap​(Multimap<K,​V> multimap,
                                                                          MapConstraint<? super K,​? super V> constraint)
        Returns a constrained view of the specified multimap, using the specified constraint. Any operations that add new mappings will call the provided constraint. However, this method does not verify that existing mappings satisfy the constraint.

        Note that the generated multimap's Multimap.removeAll(java.lang.Object) and Multimap.replaceValues(K, java.lang.Iterable<? extends V>) methods return collections that are not constrained.

        The returned multimap is not serializable.

        Parameters:
        multimap - the multimap to constrain
        constraint - the constraint that validates added entries
        Returns:
        a constrained view of the multimap
      • constrainedListMultimap

        public static <K,​V> ListMultimap<K,​V> constrainedListMultimap​(ListMultimap<K,​V> multimap,
                                                                                  MapConstraint<? super K,​? super V> constraint)
        Returns a constrained view of the specified list multimap, using the specified constraint. Any operations that add new mappings will call the provided constraint. However, this method does not verify that existing mappings satisfy the constraint.

        Note that the generated multimap's Multimap.removeAll(java.lang.Object) and Multimap.replaceValues(K, java.lang.Iterable<? extends V>) methods return collections that are not constrained.

        The returned multimap is not serializable.

        Parameters:
        multimap - the multimap to constrain
        constraint - the constraint that validates added entries
        Returns:
        a constrained view of the specified multimap
      • constrainedSetMultimap

        public static <K,​V> SetMultimap<K,​V> constrainedSetMultimap​(SetMultimap<K,​V> multimap,
                                                                                MapConstraint<? super K,​? super V> constraint)
        Returns a constrained view of the specified set multimap, using the specified constraint. Any operations that add new mappings will call the provided constraint. However, this method does not verify that existing mappings satisfy the constraint.

        Note that the generated multimap's Multimap.removeAll(java.lang.Object) and Multimap.replaceValues(K, java.lang.Iterable<? extends V>) methods return collections that are not constrained.

        The returned multimap is not serializable.

        Parameters:
        multimap - the multimap to constrain
        constraint - the constraint that validates added entries
        Returns:
        a constrained view of the specified multimap
      • constrainedSortedSetMultimap

        public static <K,​V> SortedSetMultimap<K,​V> constrainedSortedSetMultimap​(SortedSetMultimap<K,​V> multimap,
                                                                                            MapConstraint<? super K,​? super V> constraint)
        Returns a constrained view of the specified sorted-set multimap, using the specified constraint. Any operations that add new mappings will call the provided constraint. However, this method does not verify that existing mappings satisfy the constraint.

        Note that the generated multimap's Multimap.removeAll(java.lang.Object) and Multimap.replaceValues(K, java.lang.Iterable<? extends V>) methods return collections that are not constrained.

        The returned multimap is not serializable.

        Parameters:
        multimap - the multimap to constrain
        constraint - the constraint that validates added entries
        Returns:
        a constrained view of the specified multimap
      • constrainedBiMap

        public static <K,​V> BiMap<K,​V> constrainedBiMap​(BiMap<K,​V> map,
                                                                    MapConstraint<? super K,​? super V> constraint)
        Returns a constrained view of the specified bimap, using the specified constraint. Any operations that modify the bimap will have the associated keys and values verified with the constraint.

        The returned bimap is not serializable.

        Parameters:
        map - the bimap to constrain
        constraint - the constraint that validates added entries
        Returns:
        a constrained view of the specified bimap