Class AbstractNetworkIF

java.lang.Object
oshi.hardware.common.AbstractNetworkIF
All Implemented Interfaces:
NetworkIF
Direct Known Subclasses:
AixNetworkIF, BsdNetworkIF, LinuxNetworkIF, MacNetworkIF, NetBsdNetworkIF, SolarisNetworkIF, WindowsNetworkIfJNA

@ThreadSafe public abstract class AbstractNetworkIF extends Object implements NetworkIF
Network interfaces implementation.
  • Constructor Details

  • Method Details

    • getNetworkInterfaces

      protected static List<NetworkInterface> getNetworkInterfaces(boolean includeLocalInterfaces)
      Returns network interfaces on this machine.
      Parameters:
      includeLocalInterfaces - include local interfaces in the result
      Returns:
      A list of network interfaces
    • queryNetworkInterface

      public NetworkInterface queryNetworkInterface()
      Description copied from interface: NetworkIF
      Gets the NetworkInterface object.
      Specified by:
      queryNetworkInterface in interface NetworkIF
      Returns:
      the network interface, an instance of NetworkInterface.
    • getName

      public String getName()
      Description copied from interface: NetworkIF
      Interface name.
      Specified by:
      getName in interface NetworkIF
      Returns:
      The interface name.
    • getIndex

      public int getIndex()
      Description copied from interface: NetworkIF
      Interface index.
      Specified by:
      getIndex in interface NetworkIF
      Returns:
      The index of the network interface.
    • getDisplayName

      public String getDisplayName()
      Description copied from interface: NetworkIF
      Interface description.
      Specified by:
      getDisplayName in interface NetworkIF
      Returns:
      The description of the network interface. On some platforms, this is identical to the name.
    • getMTU

      public long getMTU()
      Description copied from interface: NetworkIF
      The interface Maximum Transmission Unit (MTU).
      Specified by:
      getMTU in interface NetworkIF
      Returns:
      The MTU of the network interface.

      The value is a 32-bit integer which may be unsigned on some operating systems. On Windows, some non-physical interfaces (e.g., loopback) may return a value of -1 which is equivalent to the maximum unsigned integer value.

      This value is set when the NetworkIF is instantiated and may not be up to date.

    • getMacaddr

      public String getMacaddr()
      Description copied from interface: NetworkIF
      The Media Access Control (MAC) address.
      Specified by:
      getMacaddr in interface NetworkIF
      Returns:
      The MAC Address.

      This value is set when the NetworkIF is instantiated and may not be up to date.

    • getIPv4addr

      public String[] getIPv4addr()
      Description copied from interface: NetworkIF
      The Internet Protocol (IP) v4 address.
      Specified by:
      getIPv4addr in interface NetworkIF
      Returns:
      An array of IPv4 Addresses.

      This value is set when the NetworkIF is instantiated and may not be up to date.

    • getSubnetMasks

      public Short[] getSubnetMasks()
      Description copied from interface: NetworkIF
      The Internet Protocol (IP) v4 subnet masks.
      Specified by:
      getSubnetMasks in interface NetworkIF
      Returns:
      An array of IPv4 subnet mask lengths, corresponding to the IPv4 addresses from NetworkIF.getIPv4addr(). Ranges between 0-32.

      This value is set when the NetworkIF is instantiated and may not be up to date.

    • getIPv6addr

      public String[] getIPv6addr()
      Description copied from interface: NetworkIF
      The Internet Protocol (IP) v6 address.
      Specified by:
      getIPv6addr in interface NetworkIF
      Returns:
      An array of IPv6 Addresses.

      This value is set when the NetworkIF is instantiated and may not be up to date.

    • getPrefixLengths

      public Short[] getPrefixLengths()
      Description copied from interface: NetworkIF
      The Internet Protocol (IP) v6 address.
      Specified by:
      getPrefixLengths in interface NetworkIF
      Returns:
      The IPv6 address prefix lengths, corresponding to the IPv6 addresses from NetworkIF.getIPv6addr(). Ranges between 0-128.

      This value is set when the NetworkIF is instantiated and may not be up to date.

    • isKnownVmMacAddr

      public boolean isKnownVmMacAddr()
      Description copied from interface: NetworkIF
      Determines if the MAC address on this interface corresponds to a known Virtual Machine.
      Specified by:
      isKnownVmMacAddr in interface NetworkIF
      Returns:
      true if the MAC address corresponds to a known virtual machine.
    • getBytesRecv

      public long getBytesRecv()
      Description copied from interface: NetworkIF

      Getter for the field bytesRecv.

      Specified by:
      getBytesRecv in interface NetworkIF
      Returns:
      The Bytes Received.

      This value is set when the NetworkIF is instantiated and may not be up to date. To update this value, execute the NetworkIF.updateAttributes() method

    • getBytesSent

      public long getBytesSent()
      Description copied from interface: NetworkIF

      Getter for the field bytesSent.

      Specified by:
      getBytesSent in interface NetworkIF
      Returns:
      The Bytes Sent.

      This value is set when the NetworkIF is instantiated and may not be up to date. To update this value, execute the NetworkIF.updateAttributes() method

    • getPacketsRecv

      public long getPacketsRecv()
      Description copied from interface: NetworkIF

      Getter for the field packetsRecv.

      Specified by:
      getPacketsRecv in interface NetworkIF
      Returns:
      The Packets Received.

      This value is set when the NetworkIF is instantiated and may not be up to date. To update this value, execute the NetworkIF.updateAttributes() method

    • getPacketsSent

      public long getPacketsSent()
      Description copied from interface: NetworkIF

      Getter for the field packetsSent.

      Specified by:
      getPacketsSent in interface NetworkIF
      Returns:
      The Packets Sent.

      This value is set when the NetworkIF is instantiated and may not be up to date. To update this value, execute the NetworkIF.updateAttributes() method

    • getInErrors

      public long getInErrors()
      Description copied from interface: NetworkIF

      Getter for the field inErrors.

      Specified by:
      getInErrors in interface NetworkIF
      Returns:
      Input Errors.

      This value is set when the NetworkIF is instantiated and may not be up to date. To update this value, execute the NetworkIF.updateAttributes() method

    • getOutErrors

      public long getOutErrors()
      Description copied from interface: NetworkIF

      Getter for the field outErrors.

      Specified by:
      getOutErrors in interface NetworkIF
      Returns:
      The Output Errors.

      This value is set when the NetworkIF is instantiated and may not be up to date. To update this value, execute the NetworkIF.updateAttributes() method

    • getInDrops

      public long getInDrops()
      Description copied from interface: NetworkIF

      Getter for the field inDrops.

      Specified by:
      getInDrops in interface NetworkIF
      Returns:
      Incoming/Received dropped packets. On Windows, returns discarded incoming packets.

      This value is set when the NetworkIF is instantiated and may not be up to date. To update this value, execute the NetworkIF.updateAttributes() method

    • getCollisions

      public long getCollisions()
      Description copied from interface: NetworkIF

      Getter for the field collisions.

      Specified by:
      getCollisions in interface NetworkIF
      Returns:
      Packet collisions. On Windows, returns discarded outgoing packets.

      This value is set when the NetworkIF is instantiated and may not be up to date. To update this value, execute the NetworkIF.updateAttributes() method

    • getSpeed

      public long getSpeed()
      Description copied from interface: NetworkIF

      Getter for the field speed.

      Specified by:
      getSpeed in interface NetworkIF
      Returns:
      The speed of the network interface in bits per second.

      This value is set when the NetworkIF is instantiated and may not be up to date. To update this value, execute the NetworkIF.updateAttributes() method

    • getTimeStamp

      public long getTimeStamp()
      Description copied from interface: NetworkIF

      Getter for the field timeStamp.

      Specified by:
      getTimeStamp in interface NetworkIF
      Returns:
      Returns the timeStamp.
    • setBytesRecv

      protected void setBytesRecv(long bytesRecv)
      Sets the bytes received.
      Parameters:
      bytesRecv - the bytes received
    • setBytesSent

      protected void setBytesSent(long bytesSent)
      Sets the bytes sent.
      Parameters:
      bytesSent - the bytes sent
    • setPacketsRecv

      protected void setPacketsRecv(long packetsRecv)
      Sets the packets received.
      Parameters:
      packetsRecv - the packets received
    • setPacketsSent

      protected void setPacketsSent(long packetsSent)
      Sets the packets sent.
      Parameters:
      packetsSent - the packets sent
    • setInErrors

      protected void setInErrors(long inErrors)
      Sets the input errors.
      Parameters:
      inErrors - the input errors
    • setOutErrors

      protected void setOutErrors(long outErrors)
      Sets the output errors.
      Parameters:
      outErrors - the output errors
    • setInDrops

      protected void setInDrops(long inDrops)
      Sets the input drops.
      Parameters:
      inDrops - the input drops
    • setCollisions

      protected void setCollisions(long collisions)
      Sets the collisions.
      Parameters:
      collisions - the collisions
    • setSpeed

      protected void setSpeed(long speed)
      Sets the speed.
      Parameters:
      speed - the speed in bits per second
    • setTimeStamp

      protected void setTimeStamp(long timeStamp)
      Sets the timestamp.
      Parameters:
      timeStamp - the timestamp
    • toString

      public String toString()
      Overrides:
      toString in class Object