Class TimeUDPClient


public final class TimeUDPClient extends DatagramSocketClient
The TimeUDPClient class is a UDP implementation of a client for the Time protocol described in RFC 868. To use the class, merely open a local datagram socket with open and call getTime or getDate to retrieve the time. Then call close to close the connection properly. Unlike TimeTCPClient , successive calls to getTime or getDate are permitted without re-establishing a connection. That is because UDP is a connectionless protocol and the Time protocol is stateless.

Author:
Daniel F. Savarese
See Also:
  • Field Details

    • DEFAULT_PORT

      public static final int DEFAULT_PORT
      The default time port. It is set to 37 according to RFC 868.
      See Also:
    • SECONDS_1900_TO_1970

      public static final long SECONDS_1900_TO_1970
      The number of seconds between 00:00 1 January 1900 and 00:00 1 January 1970. This value can be useful for converting time values to other formats.
      See Also:
  • Constructor Details

    • TimeUDPClient

      public TimeUDPClient()
  • Method Details

    • getTime

      public long getTime(InetAddress host, int port) throws IOException
      Retrieves the time from the specified server and port and returns it. The time is the number of seconds since 00:00 (midnight) 1 January 1900 GMT, as specified by RFC 868. This method reads the raw 32-bit big-endian unsigned integer from the server, converts it to a Java long, and returns the value.

      Parameters:
      host - The address of the server.
      port - The port of the service.
      Returns:
      The time value retrieved from the server.
      Throws:
      IOException - If an error occurs while retrieving the time.
    • getTime

      public long getTime(InetAddress host) throws IOException
      Same as getTime(host, DEFAULT_PORT);
      Throws:
      IOException
    • getDate

      public Date getDate(InetAddress host, int port) throws IOException
      Retrieves the time from the server and returns a Java Date containing the time converted to the local timezone.

      Parameters:
      host - The address of the server.
      port - The port of the service.
      Returns:
      A Date value containing the time retrieved from the server converted to the local timezone.
      Throws:
      IOException - If an error occurs while fetching the time.
    • getDate

      public Date getDate(InetAddress host) throws IOException
      Same as getTime(host, DEFAULT_PORT);
      Throws:
      IOException