Package javax.cim

Class CIMDateTimeInterval

java.lang.Object
javax.cim.CIMDateTime
javax.cim.CIMDateTimeInterval
All Implemented Interfaces:
Serializable, Comparable<CIMDateTime>

public class CIMDateTimeInterval extends CIMDateTime
This class represents the datetime data type when used as a time value as specified by the Distributed Management Task Force (DMTF) CIM Infrastructure Specification (DSP004). It is in the format ddddddddHHMMSS.mmmmmm:000 where:
  • dddddddd - is the days in interval
  • HH - is the hours in interval
  • MM - is the minutes in interval
  • SS - is the seconds in interval
  • mmmmmm - is the microseconds in interval
For example, an elapsed time of 1 day, 13 hours, 23 minutes, 12 seconds would be: 00000001132312.000000:000. A UTC offset of zero is always used for interval properties.
Fields that are not significant MUST be replaced with asterisk ("*") characters. Not significant fields are those that are beyond the resolution of the data source. This is used to indicate the precision of the value and can only be done for an adjacent set of fields, starting with the least significant field (mmmmmm), and continuing to more significant fields. The granularity of using asterisks is always the entire field, except for the mmmmmm field where the granularity is single digits. The UTC offset field MUST NOT contain asterisks.
For example, if an interval of 1 day, 13 hours, 23 minutes, 12 seconds, and 125 milliseconds was measured with a precision of 1 millisecond, the format would be: 00000001132312.125***:000.
See Also:
  • Constructor Summary

    Constructors
    Constructor
    Description
    CIMDateTimeInterval(int pDays, int pHours, int pMinutes, int pSeconds, int pMicroseconds)
    Constructs a CIMDateTimeInterval using the individual values of the interval (day, hours, minutes, seconds and microseconds).
    CIMDateTimeInterval(long pMilliseconds)
    Constructs a CIMDateTimeInterval using a milliseconds value.
    CIMDateTimeInterval(String pIntervalString)
    Creates a CIMDateTimeInterval object using a string.
  • Method Summary

    Modifier and Type
    Method
    Description
    int
    Compares the CIMDateTimeInterval object with this one.
    Gets the internal string representation of this object.
    int
    Returns days value of this interval.
    int
    Returns hours value of this interval.
    int
    Returns microseconds value of this interval.
    int
    Returns minutes value of this interval.
    int
    Returns seconds value of this interval.
    long
    Returns the total length of the interval in milliseconds.
    int
    Returns the hash code for this object.
    Returns a String representation of the CIMDateTimeInterval.

    Methods inherited from class javax.cim.CIMDateTime

    equals

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • CIMDateTimeInterval

      public CIMDateTimeInterval(int pDays, int pHours, int pMinutes, int pSeconds, int pMicroseconds) throws IllegalArgumentException
      Constructs a CIMDateTimeInterval using the individual values of the interval (day, hours, minutes, seconds and microseconds). Any property that has a -1 will make that field "not significant" (i.e. that field has asterisks in the datetime string).
      Parameters:
      pDays - Number of days in the interval (-1 - 99999999).
      pHours - Number of hours in the interval (-1 - 23).
      pMinutes - Number of minutes in the interval (-1 - 59).
      pSeconds - Number of seconds in the interval (-1 - 59).
      pMicroseconds - Number of microseconds in the interval (-1 - 999999).
      Throws:
      IllegalArgumentException - If any value is not valid.
    • CIMDateTimeInterval

      public CIMDateTimeInterval(long pMilliseconds) throws IllegalArgumentException
      Constructs a CIMDateTimeInterval using a milliseconds value.
      Parameters:
      pMilliseconds - Number of milliseconds in the interval (0 - 8639999999999999).
      Throws:
      IllegalArgumentException
    • CIMDateTimeInterval

      public CIMDateTimeInterval(String pIntervalString) throws IllegalArgumentException
      Creates a CIMDateTimeInterval object using a string.
      Parameters:
      pIntervalString - A string in the format of ddddddddHHMMSS.mmmmmm:000.
      Throws:
      IllegalArgumentException - If string is not in the correct format or null.
  • Method Details

    • compareTo

      public int compareTo(CIMDateTime pObj) throws IllegalArgumentException
      Compares the CIMDateTimeInterval object with this one. If either interval has "Not Significant" fields then we only compare the significant fields.
      Parameters:
      pObj - The CIMDateTimeInterval to be compared with this one.
      Returns:
      -1, zero, or 1 as this interval is less than, equal to, or greater than the specified interval.
      Throws:
      IllegalArgumentException - If the object passed in is not an instance of CIMDataTimeInterval.
    • getDateTimeString

      public String getDateTimeString()
      Gets the internal string representation of this object.
      Specified by:
      getDateTimeString in class CIMDateTime
      Returns:
      The internal representation of the CIMDateTimeInterval object.
    • getDays

      public int getDays()
      Returns days value of this interval.
      Returns:
      If days field "not significant" this returns -1, otherwise returns number of days in the interval.
    • getHours

      public int getHours()
      Returns hours value of this interval.
      Returns:
      If hours field "not significant" this returns -1, otherwise returns number of hours in the interval.
    • getMicroseconds

      public int getMicroseconds()
      Returns microseconds value of this interval.
      Returns:
      If microseconds field "not significant" this returns -1, otherwise returns number of microseconds in the interval.
    • getMinutes

      public int getMinutes()
      Returns minutes value of this interval.
      Returns:
      If minutes field "not significant" this returns -1, otherwise returns number of minutes in the interval.
    • getSeconds

      public int getSeconds()
      Returns seconds value of this interval.
      Returns:
      If seconds field "not significant" this returns -1, otherwise returns number of seconds in the interval.
    • getTotalMilliseconds

      public long getTotalMilliseconds()
      Returns the total length of the interval in milliseconds.
      Returns:
      The length of the interval in milliseconds.
    • hashCode

      public int hashCode()
      Returns the hash code for this object.
      Specified by:
      hashCode in class CIMDateTime
      Returns:
      A hash code value for this object.
      See Also:
    • toString

      public String toString()
      Returns a String representation of the CIMDateTimeInterval. This method is intended to be used only for debugging purposes, and the format of the returned string may vary between implementations. The returned string may be empty but may not be null.
      Overrides:
      toString in class Object
      Returns:
      String representation of this datetime.