Class NetMaskSet


  • public class NetMaskSet
    extends java.lang.Object
    This class maintains a Set of NetMask objects and allows to check if a given IP address is matched by any of the NetMasks, making it easy to create Allow and Deny lists of CIDR networks and hosts.
    • Constructor Summary

      Constructors 
      Constructor Description
      NetMaskSet()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean add​(java.lang.String input)
      Creates a NetMask object from the input string and adds it to the set.
      boolean add​(NetMask netmask)
      Adds a NetMask object to the set if the set does not contain it
      java.util.List<java.lang.String> addAll​(java.lang.String input)
      Adds a NetMask list from a string input containing a comma-separated list of (hopefully valid) NetMasks.
      void clear()
      removes all entries from the set
      boolean contains​(java.lang.String ipAddress)
      Tests if the provided IP address matches any of the NetMasks in the set.
      boolean contains​(java.net.InetAddress inetAddress)
      Tests if the provided InetAddress matches any of the NetMasks in the set.
      boolean isEmpty()
      Tests if the set is empty.
      java.lang.String toString()
      Provides a string representation of this NetMaskSet.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • NetMaskSet

        public NetMaskSet()
    • Method Detail

      • contains

        public boolean contains​(java.net.InetAddress inetAddress)
        Tests if the provided InetAddress matches any of the NetMasks in the set.
        Parameters:
        inetAddress - An InetAddress to check
        Returns:
        true if the passed inetAddress is matched by any of the NetMasks in the set
      • contains

        public boolean contains​(java.lang.String ipAddress)
                         throws java.net.UnknownHostException
        Tests if the provided IP address matches any of the NetMasks in the set.
        Parameters:
        ipAddress - an IP address to check
        Returns:
        true if the passed IP address is matched by any of the NetMasks in the set
        Throws:
        java.net.UnknownHostException - if the passed input is not a valid IP address
      • add

        public boolean add​(NetMask netmask)
        Adds a NetMask object to the set if the set does not contain it
        Parameters:
        netmask - The NetMask to add
        Returns:
        true if the object was added
      • add

        public boolean add​(java.lang.String input)
        Creates a NetMask object from the input string and adds it to the set.
        Parameters:
        input - The string from which to construct the NetMask
        Returns:
        true if the object was added
        Throws:
        java.lang.IllegalArgumentException - if the input is not a valid CIDR format.
      • clear

        public void clear()
        removes all entries from the set
      • isEmpty

        public boolean isEmpty()
        Tests if the set is empty.
        Returns:
        true if the set is empty, otherwise false
      • addAll

        public java.util.List<java.lang.String> addAll​(java.lang.String input)
        Adds a NetMask list from a string input containing a comma-separated list of (hopefully valid) NetMasks.
        Parameters:
        input - The input string
        Returns:
        a list of processing error messages (empty when no errors)
      • toString

        public java.lang.String toString()
        Provides a string representation of this NetMaskSet. The format of the String is not guaranteed to remain fixed.
        Overrides:
        toString in class java.lang.Object
        Returns:
        a comma separated list of the NetMasks in this set