Package org.apache.commons.net.util

# Class SubnetUtils.SubnetInfo

java.lang.Object
org.apache.commons.net.util.SubnetUtils.SubnetInfo

Enclosing class:
  `SubnetUtils`

public final class SubnetUtils.SubnetInfo extends Object
Contains subnet summary information.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `int`
  `asInteger(String address)`
  Converts a dotted decimal format address to a packed integer format.
  `String`
  `getAddress()`
  Gets this instance's address into a dotted decimal String.
  `int`
  `getAddressCount()`
  Deprecated.
  (3.4) use `getAddressCountLong()` instead
  `long`
  `getAddressCountLong()`
  Gets the count of available addresses.
  `String[]`
  `getAllAddresses()`
  Gets all addresses in this subnet, the return array could be huge.
  `String`
  `getBroadcastAddress()`
  Gets the broadcast address for this subnet.
  `String`
  `getCidrSignature()`
  Gets the CIDR signature for this subnet.
  `String`
  `getHighAddress()`
  Gets the high address as a dotted IP address.
  `String`
  `getLowAddress()`
  Gets the low address as a dotted IP address.
  `String`
  `getNetmask()`
  Gets the network mask for this subnet.
  `String`
  `getNetworkAddress()`
  Gets the network address for this subnet.
  `String`
  `getNextAddress()`
  Gets the next address for this subnet.
  `String`
  `getPreviousAddress()`
  Gets the previous address for this subnet.
  `boolean`
  `isInRange(int address)`
  Tests if the parameter `address` is in the range of usable endpoint addresses for this subnet.
  `boolean`
  `isInRange(String address)`
  Tests if the parameter `address` is in the range of usable endpoint addresses for this subnet.
  `Iterable<String>`
  `iterableAddressStrings()`
  Creates a new Iterable of address Strings.
  `Stream<String>`
  `streamAddressStrings()`
  Creates a new Stream of address Strings.
  `String`
  `toString()`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- ## Method Details

  - ### asInteger

    public int asInteger(String address)
    Converts a dotted decimal format address to a packed integer format.
    Parameters:
      `address` - a dotted decimal format address.
    Returns:
      packed integer formatted int.

  - ### getAddress

    public String getAddress()
    Gets this instance's address into a dotted decimal String.
    Returns:
      a dotted decimal String.

  - ### getAddressCount

    @Deprecated public int getAddressCount()
    Deprecated.
    (3.4) use `getAddressCountLong()` instead
    Gets the count of available addresses. Will be zero for CIDR/31 and CIDR/32 if the inclusive flag is false.
    Returns:
      the count of addresses, may be zero.
    Throws:
      `RuntimeException` - if the correct count is greater than `Integer.MAX_VALUE`

  - ### getAddressCountLong

    public long getAddressCountLong()
    Gets the count of available addresses. Will be zero for CIDR/31 and CIDR/32 if the inclusive flag is false.
    Returns:
      the count of addresses, may be zero.
    Since:
      3.4

  - ### getAllAddresses

    public String[] getAllAddresses()
    Gets all addresses in this subnet, the return array could be huge.

    For large ranges, you can iterate or stream over the addresses instead using `iterableAddressStrings()` or `streamAddressStrings()`.

    Returns:
      all addresses in this subnet.
    See Also:
      - `iterableAddressStrings()`
      - `streamAddressStrings()`

  - ### getBroadcastAddress

    public String getBroadcastAddress()
    Gets the broadcast address for this subnet.
    Returns:
      the broadcast address for this subnet.

  - ### getCidrSignature

    public String getCidrSignature()
    Gets the CIDR signature for this subnet.
    Returns:
      the CIDR signature for this subnet.

  - ### getHighAddress

    public String getHighAddress()
    Gets the high address as a dotted IP address. Will be zero for CIDR/31 and CIDR/32 if the inclusive flag is false.
    Returns:
      the IP address in dotted format, may be "0.0.0.0" if there is no valid address

  - ### getLowAddress

    public String getLowAddress()
    Gets the low address as a dotted IP address. Will be zero for CIDR/31 and CIDR/32 if the inclusive flag is false.
    Returns:
      the IP address in dotted format, may be "0.0.0.0" if there is no valid address

  - ### getNetmask

    public String getNetmask()
    Gets the network mask for this subnet.
    Returns:
      the network mask for this subnet.

  - ### getNetworkAddress

    public String getNetworkAddress()
    Gets the network address for this subnet.
    Returns:
      the network address for this subnet.

  - ### getNextAddress

    public String getNextAddress()
    Gets the next address for this subnet.
    Returns:
      the next address for this subnet.

  - ### getPreviousAddress

    public String getPreviousAddress()
    Gets the previous address for this subnet.
    Returns:
      the previous address for this subnet.

  - ### isInRange

    public boolean isInRange(int address)
    Tests if the parameter `address` is in the range of usable endpoint addresses for this subnet. This excludes the network and broadcast addresses by default. Use `SubnetUtils.setInclusiveHostCount(boolean)` to change this.
    Parameters:
      `address` - the address to check
    Returns:
      true if it is in range
    Since:
      3.4 (made public)

  - ### isInRange

    public boolean isInRange(String address)
    Tests if the parameter `address` is in the range of usable endpoint addresses for this subnet. This excludes the network and broadcast addresses. Use `SubnetUtils.setInclusiveHostCount(boolean)` to change this.
    Parameters:
      `address` - A dot-delimited IPv4 address, e.g. "192.168.0.1"
    Returns:
      True if in range, false otherwise

  - ### iterableAddressStrings

    public Iterable<String> iterableAddressStrings()
    Creates a new Iterable of address Strings.
    Returns:
      a new Iterable of address Strings
    Since:
      3.12.0
    See Also:
      - `getAllAddresses()`
      - `streamAddressStrings()`

  - ### streamAddressStrings

    public Stream<String> streamAddressStrings()
    Creates a new Stream of address Strings.
    Returns:
      a new Stream of address Strings.
    Since:
      3.12.0
    See Also:
      - `getAllAddresses()`
      - `iterableAddressStrings()`

  - ### toString

    public String toString()
    Overrides:
      `toString` in class `Object`
    Since:
      2.2