Class JniPingResponse

  • All Implemented Interfaces:
    EchoPacket, org.opennms.protocols.rt.Response, org.opennms.protocols.rt.ResponseWithId<JniPingRequestId>

    public final class JniPingResponse
    extends Object
    implements org.opennms.protocols.rt.ResponseWithId<JniPingRequestId>, EchoPacket

    This class is use to encapsulate an ICMP reply that conforms to the packetclass. The reply must be of type ICMP Echo Reply and be the correct length.

    When constructed by the create method the returned reply encapsulates the sender's address and the received packet as final, non-mutable values for the instance.

    • Constructor Detail

      • JniPingResponse

        public JniPingResponse​(InetAddress addr,
                               org.opennms.protocols.icmp.ICMPEchoPacket pkt)
        Constructs a new reply with the passed address and packet as the contents of the reply.
        Parameters:
        addr - The address of the ICMP sender.
        pkt - The received packet.
    • Method Detail

      • getAddress

        public InetAddress getAddress()
        Returns the internet address of the host that sent the reply.
        Returns:
        a InetAddress object.
      • getRequestId

        public JniPingRequestId getRequestId()

        getRequestId

        Specified by:
        getRequestId in interface org.opennms.protocols.rt.ResponseWithId<JniPingRequestId>
        Returns:
        a org.opennms.netmgt.icmp.spi.PingRequestId object.
      • isEchoReply

        public boolean isEchoReply()
        Returns true if the recovered packet is an echo reply.
        Specified by:
        isEchoReply in interface EchoPacket
        Returns:
        a boolean.
      • elapsedTime

        public double elapsedTime​(TimeUnit timeUnit)
        Description copied from interface: EchoPacket
        Returns the round trip time in the requested TimeUnit (note that a fractional value will be returned if necessary)
        Specified by:
        elapsedTime in interface EchoPacket