Module inet.ipaddr

Class AddressDivisionGrouping

java.lang.Object
inet.ipaddr.format.AddressDivisionGroupingBase
inet.ipaddr.format.standard.AddressDivisionGrouping
All Implemented Interfaces:
AddressDivisionSeries, AddressItem, AddressStringDivisionSeries, Serializable, Comparable<AddressItem>
Direct Known Subclasses:
IPAddressDivisionGrouping, MACAddressSection

public class AddressDivisionGrouping extends AddressDivisionGroupingBase
AddressDivisionGrouping objects consist of a series of AddressDivision objects, each division containing one or more segments.

AddressDivisionGrouping objects are immutable. This also makes them thread-safe.

AddressDivision objects use long to represent their values, so this places a cap on the size of the divisions in AddressDivisionGrouping.

Author:
sfoley
See Also:
  • Constructor Details

    • AddressDivisionGrouping

      public AddressDivisionGrouping(AddressDivision[] divisions)
    • AddressDivisionGrouping

      public AddressDivisionGrouping(AddressDivision[] divisions, boolean checkDivisions)
  • Method Details

    • getDivision

      public AddressDivision getDivision(int index)
      Specified by:
      getDivision in interface AddressDivisionSeries
      Specified by:
      getDivision in interface AddressStringDivisionSeries
      Overrides:
      getDivision in class AddressDivisionGroupingBase
      Returns:
      the given division in this series. The first is at index 0.
    • containsPrefixBlock

      public boolean containsPrefixBlock(int prefixLength)
      Returns whether the values of this division grouping contain the prefix block for the given prefix length
      Parameters:
      prefixLength -
      Returns:
    • containsSinglePrefixBlock

      public boolean containsSinglePrefixBlock(int prefixLength)
      Returns whether the values of this division grouping match the prefix block for the given prefix length
      Parameters:
      prefixLength -
      Returns:
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class AddressDivisionGroupingBase
    • equals

      public boolean equals(Object o)
      Description copied from class: AddressDivisionGroupingBase
      Two groupings are equal if: - they match type/version (ipv4, ipv6, mac, or a specific grouping class) - they match division counts - each division matches bit counts - each division matches their specific grouping class - each division matches values Prefix lengths, for those groupings and/or divisionsS that have them, are ignored.
      Overrides:
      equals in class AddressDivisionGroupingBase