Package com.oss.asn1

Class ISO8601TimeOfDay

All Implemented Interfaces:
com.oss.asn1.Comparable, ISO8601TimeInterface, Serializable, Cloneable

public class ISO8601TimeOfDay extends AbstractISO8601Time
The ISO8601TimeOfDay class represents the ASN.1 TIME-OF-DAY type
Since:
ASN.1/Java 6.0
See Also:
  • Constructor Details

    • ISO8601TimeOfDay

      public ISO8601TimeOfDay()
      The default constructor.
    • ISO8601TimeOfDay

      public ISO8601TimeOfDay(String value) throws BadTimeFormatException
      Constructs time of day value from a string. String should be in the "HH:MM:SS" format, where HH is a two-digit hour, MM is a two-digit minute and SS is a two-digit second.
      Parameters:
      value - a string containing time of day value.
      Throws:
      BadTimeFormatException - if value has invalid format.
    • ISO8601TimeOfDay

      public ISO8601TimeOfDay(int hour, int minute, int second)
      Constructs time of day value hour, minute and second components.
      Parameters:
      hour - hour value
      minute - minute value
      second - second value
  • Method Details

    • clone

      public ISO8601TimeOfDay clone()
      Clone 'this' object.
      Returns:
      deep copy of 'this' object.
    • setValue

      public void setValue(String value) throws BadTimeFormatException
      Set an instance of this class from a String containing value notation of the TIME-OF-DAY.
      Specified by:
      setValue in class AbstractISO8601Time
      Parameters:
      value - a string containing time value.
      Throws:
      BadTimeFormatException - if value has invalid format
    • getHour

      public final int getHour()
      Get the hour component of 'this' object.
      Returns:
      int value indicating the hour.
    • getMinute

      public final int getMinute()
      Get the minutes component of 'this' object.
      Returns:
      int value indicating the minute.
    • getSecond

      public final int getSecond()
      Get the seconds component of 'this' object.
      Returns:
      int value indicating the second.
    • setHour

      public final void setHour(int hour)
      Set the hour component of 'this' object.
      Parameters:
      hour - the hour to set.
    • setMinute

      public final void setMinute(int minute)
      Set the minutes component of 'this' object.
      Parameters:
      minute - the minute to set.
    • setSecond

      public final void setSecond(int second)
      Set the seconds component of 'this' object.
      Parameters:
      second - the second to set.
    • get

      public int get(int field)
      Get field value.
      Parameters:
      field - field designator.
      Returns:
      field value.
    • set

      public void set(int field, int value)
      Set field value.
      Parameters:
      field - field designator.
      value - field value.
    • clear

      public void clear()
      Clears all the fields so they are set to UNDEFINED value.
    • equalTo

      public final boolean equalTo(ISO8601TimeOfDay that)
      Compare 'this' object to another ISO8601TimeOfDay object to see if their contents are the same.
      Parameters:
      that - the ISO8601TimeOfDay object to compare 'this' object to.
      Returns:
      true if contents of both objects are the same.
    • toFormattedString

      public final String toFormattedString(boolean isBer) throws com.oss.util.BadTimeValueException
      Converts this instance of ISO8601TimeInterface to the formatted string, suitable for the encoding. The string returned has the following format:
              HHMMSS
          or
              HH:MM:SS
          
      where HH, MM and SS mean hour, minute and second correspondingly. First form used to represent BER format. Second form means that the time is a value notation.
      Specified by:
      toFormattedString in class AbstractISO8601Time
      Parameters:
      isBer - set to true if the time value is to be BER format
      Returns:
      string that contain the value, formatted accordingly to the ISO8601TimeOfDay format
      Throws:
      com.oss.util.BadTimeValueException - if the the value contains invalid components that make the formatting impossible
    • parseTime

      public ISO8601TimeInterface parseTime(String str, boolean isBer) throws BadTimeFormatException
      Takes formatted string that contains the value of ISO8601TimeOfDay, splits the string to the components and initializes this instance of the ISO8601TimeOfDay class. If the string has invalid format, a BadTimeFormatException exception is thrown. The method expects that the string has the format, specified in the description of the toFormattedString method.
      Specified by:
      parseTime in class AbstractISO8601Time
      Parameters:
      str - formatted string that contains the value of ISO8601TimeOfDay
      isBer - set to true if the time value is to be BER format
      Returns:
      reference to this object
      Throws:
      BadTimeFormatException - if str has invalid format
    • hashCode

      public int hashCode()
      Returns a hash code for this object
      Overrides:
      hashCode in class AbstractData
      Returns:
      a hash code for this object
    • getTypeName

      public String getTypeName()
      Returns the name of ASN.1 type this java class represents.
      Overrides:
      getTypeName in class AbstractData
      Returns:
      the name of the ASN.1 type.