alvinalexander.com | career | drupal | java | mac | mysql | perl | scala | uml | unix  

Commons Net example source code file (NtpV3Packet.java)

This example Commons Net source code file (NtpV3Packet.java) is included in the DevDaily.com "Java Source Code Warehouse" project. The intent of this project is to help you "Learn Java by Example" TM.

Java - Commons Net tags/keywords

datagrampacket, icmp, li_alarm_condition, mode_broadcast, mode_reserved, mode_symmetric_passive, net, network, ntp_maxclock, ntp_minclock, rfc-792, rfc-868, string, string, timestamp, timestamp

The Commons Net NtpV3Packet.java source code

package org.apache.commons.net.ntp;
/*
 * Licensed to the Apache Software Foundation (ASF) under one or more
 * contributor license agreements.  See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
 * The ASF licenses this file to You under the Apache License, Version 2.0
 * (the "License"); you may not use this file except in compliance with
 * the License.  You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */


import java.net.DatagramPacket;

/**
 * Interface for a NtpV3Packet with get/set methods corresponding to the fields
 * in the NTP Data Message Header described in RFC 1305.
 *
 * @author Naz Irizarry, MITRE Corp
 * @author Jason Mathews, MITRE Corp
 * @version $Revision: 489397 $ $Date: 2006-12-21 16:28:51 +0000 (Thu, 21 Dec 2006) $
 */
public interface NtpV3Packet
{

    /**
     * Standard NTP UDP port
     */
    public static final int NTP_PORT = 123;

    public static final int LI_NO_WARNING = 0;
    public static final int LI_LAST_MINUTE_HAS_61_SECONDS = 1;
    public static final int LI_LAST_MINUTE_HAS_59_SECONDS = 2;
    public static final int LI_ALARM_CONDITION = 3;

    /* mode options */
    public static final int MODE_RESERVED = 0;
    public static final int MODE_SYMMETRIC_ACTIVE = 1;
    public static final int MODE_SYMMETRIC_PASSIVE = 2;
    public static final int MODE_CLIENT = 3;
    public static final int MODE_SERVER = 4;
    public static final int MODE_BROADCAST = 5;
    public static final int MODE_CONTROL_MESSAGE = 6;
    public static final int MODE_PRIVATE = 7;

    public static final int NTP_MINPOLL = 4;  // 16 seconds
    public static final int NTP_MAXPOLL = 14; // 16284 seconds

    public static final int NTP_MINCLOCK = 1;
    public static final int NTP_MAXCLOCK = 10;

    public static final int VERSION_3 = 3;
    public static final int VERSION_4 = 4;

    /* possible getType values such that other time-related protocols can
     * have its information represented as NTP packets
     */
    public static final String TYPE_NTP = "NTP";         // RFC-1305/2030
    public static final String TYPE_ICMP = "ICMP";       // RFC-792
    public static final String TYPE_TIME = "TIME";       // RFC-868
    public static final String TYPE_DAYTIME = "DAYTIME"; // RFC-867

    /**
     * @return a datagram packet with the NTP parts already filled in
     */
    public DatagramPacket getDatagramPacket();

    /**
     * Set the contents of this object from the datagram packet
     */
    public void setDatagramPacket(DatagramPacket dp);

    /**
     * @return leap indicator as defined in RFC-1305
     */
    public int getLeapIndicator();

    /**
     * Set leap indicator.
     * @param li - leap indicator code
     */
    public void setLeapIndicator(int li);

    /**
     * @return mode as defined in RFC-1305
     */
    public int getMode();

    /**
     * @return mode as human readable string; e.g. 3=Client
     */
    public String getModeName();

    /**
     * Set mode as defined in RFC-1305
     */
    public void setMode(int mode);

    /**
     * @return poll interval as defined in RFC-1305.
     * Field range between NTP_MINPOLL and NTP_MAXPOLL.
     */
    public int getPoll();

    /**
     * Set poll interval as defined in RFC-1305.
     * Field range between NTP_MINPOLL and NTP_MAXPOLL.
     */
    public void setPoll(int poll);

    /**
     * @return precision as defined in RFC-1305
     */
    public int getPrecision();

    /**
     * @return root delay as defined in RFC-1305
     */
    public int getRootDelay();

    /**
     * @return root delay in milliseconds
     */
    public double getRootDelayInMillisDouble();

    /**
     * @return root dispersion as defined in RFC-1305
     */
    public int getRootDispersion();

    /**
     * @return root dispersion in milliseconds
     */
    public long getRootDispersionInMillis();

    /**
     * @return root dispersion in milliseconds
     */
    public double getRootDispersionInMillisDouble();

    /**
     * @return version as defined in RFC-1305
     */
    public int getVersion();

    /**
     * Set version as defined in RFC-1305
     */
    public void setVersion(int mode);

    /**
     * @return stratum as defined in RFC-1305
     */
    public int getStratum();

    /**
     * Set stratum as defined in RFC-1305
     */
    public void setStratum(int stratum);

    /**
     * @return the reference id string
     */
    public String getReferenceIdString();

    /**
     * @return the reference id (32-bit code) as defined in RFC-1305
     */
    public int getReferenceId();

    /**
     * Set reference clock identifier field.
     * @param refId
     */
    public void setReferenceId(int refId);

    /**
     * @return the transmit timestamp as defined in RFC-1305
     */
    public TimeStamp getTransmitTimeStamp();

    /**
     * @return the reference time as defined in RFC-1305
     */
    public TimeStamp getReferenceTimeStamp();

    /**
     * @return the originate time as defined in RFC-1305
     */
    public TimeStamp getOriginateTimeStamp();

    /**
     * @return the receive time as defined in RFC-1305
     */
    public TimeStamp getReceiveTimeStamp();

    /**
     * Set the transmit timestamp given NTP TimeStamp object.
     * @param ts - timestamp
     */
    public void setTransmitTime(TimeStamp ts);

    /**
     * Set the reference timestamp given NTP TimeStamp object.
     * @param ts - timestamp
     */
    public void setReferenceTime(TimeStamp ts);

    /**
     * Set originate timestamp given NTP TimeStamp object.
     * @param ts - timestamp
     */
    public void setOriginateTimeStamp(TimeStamp ts);

    /**
     * Set receive timestamp given NTP TimeStamp object.
     * @param ts - timestamp
     */
    public void setReceiveTimeStamp(TimeStamp ts);

    /**
     * Return type of time packet. The values (e.g. NTP, TIME, ICMP, ...)
     * correspond to the protocol used to obtain the timing information.
     *
     * @return packet type string identifier
     */
    public String getType();

}

Other Commons Net examples (source code examples)

Here is a short list of links related to this Commons Net NtpV3Packet.java source code file:

... this post is sponsored by my books ...

#1 New Release!

FP Best Seller

 

new blog posts

 

Copyright 1998-2021 Alvin Alexander, alvinalexander.com
All Rights Reserved.

A percentage of advertising revenue from
pages under the /java/jwarehouse URI on this website is
paid back to open source projects.