Class IPv6NetworkMask

  • All Implemented Interfaces:
    java.io.Serializable

    public final class IPv6NetworkMask
    extends java.lang.Object
    implements java.io.Serializable
    Immutable representation of an IPv6 network mask. A network mask is nothing more than an IPv6 address with a continuous range of 1 bits starting from the most significant bit. A network mask can also be represented as a prefix length, which is the count of these 1 bits.
    See Also:
    Serialized Form
    • Field Detail

      • prefixLength

        private final int prefixLength
    • Constructor Detail

      • IPv6NetworkMask

        IPv6NetworkMask​(int prefixLength)
        Construct an IPv6 network mask from a prefix length. The prefix length should be in the interval ]0, 128].
        Parameters:
        prefixLength - prefix length
        Throws:
        java.lang.IllegalArgumentException - if the prefix length is not in the interval ]0, 128]
    • Method Detail

      • fromAddress

        public static IPv6NetworkMask fromAddress​(IPv6Address iPv6Address)
        Construct an IPv6 network mask from an IPv6 address. The address should be a valid network mask.
        Parameters:
        iPv6Address - address to use as network mask
        Returns:
        ipv6 network mask
        Throws:
        java.lang.IllegalArgumentException - if the address is not a valid network mask
      • fromPrefixLength

        public static IPv6NetworkMask fromPrefixLength​(int prefixLength)
        Construct an IPv6 network mask from a prefix length. The prefix length should be in the interval ]0, 128].
        Parameters:
        prefixLength - prefix length
        Returns:
        ipv6 network mask
        Throws:
        java.lang.IllegalArgumentException - if the prefix length is not in the interval ]0, 128]
      • validateNetworkMask

        private static void validateNetworkMask​(IPv6Address addressToValidate)
      • asPrefixLength

        public int asPrefixLength()
      • equals

        public boolean equals​(java.lang.Object o)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object