Package javax.cim
Class CIMDateTimeInterval
- java.lang.Object
-
- javax.cim.CIMDateTime
-
- javax.cim.CIMDateTimeInterval
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.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
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:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description CIMDateTimeInterval(int pDays, int pHours, int pMinutes, int pSeconds, int pMicroseconds)
Constructs aCIMDateTimeInterval
using the individual values of the interval (day, hours, minutes, seconds and microseconds).CIMDateTimeInterval(long pMilliseconds)
Constructs aCIMDateTimeInterval
using a milliseconds value.CIMDateTimeInterval(java.lang.String pIntervalString)
Creates aCIMDateTimeInterval
object using a string.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
compareTo(CIMDateTime pObj)
Compares theCIMDateTimeInterval
object with this one.java.lang.String
getDateTimeString()
Gets the internal string representation of this object.int
getDays()
Returns days value of this interval.int
getHours()
Returns hours value of this interval.int
getMicroseconds()
Returns microseconds value of this interval.int
getMinutes()
Returns minutes value of this interval.int
getSeconds()
Returns seconds value of this interval.long
getTotalMilliseconds()
Returns the total length of the interval in milliseconds.int
hashCode()
Returns the hash code for this object.java.lang.String
toString()
Returns aString
representation of theCIMDateTimeInterval
.-
Methods inherited from class javax.cim.CIMDateTime
equals
-
-
-
-
Constructor Detail
-
CIMDateTimeInterval
public CIMDateTimeInterval(int pDays, int pHours, int pMinutes, int pSeconds, int pMicroseconds) throws java.lang.IllegalArgumentException
Constructs aCIMDateTimeInterval
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:
java.lang.IllegalArgumentException
- If any value is not valid.
-
CIMDateTimeInterval
public CIMDateTimeInterval(long pMilliseconds) throws java.lang.IllegalArgumentException
Constructs aCIMDateTimeInterval
using a milliseconds value.- Parameters:
pMilliseconds
- Number of milliseconds in the interval (0 - 8639999999999999).- Throws:
java.lang.IllegalArgumentException
-
CIMDateTimeInterval
public CIMDateTimeInterval(java.lang.String pIntervalString) throws java.lang.IllegalArgumentException
Creates aCIMDateTimeInterval
object using a string.- Parameters:
pIntervalString
- A string in the format of ddddddddHHMMSS.mmmmmm:000.- Throws:
java.lang.IllegalArgumentException
- If string is not in the correct format ornull
.
-
-
Method Detail
-
compareTo
public int compareTo(CIMDateTime pObj) throws java.lang.IllegalArgumentException
Compares theCIMDateTimeInterval
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:
java.lang.IllegalArgumentException
- If the object passed in is not an instance ofCIMDataTimeInterval
.
-
getDateTimeString
public java.lang.String getDateTimeString()
Gets the internal string representation of this object.- Specified by:
getDateTimeString
in classCIMDateTime
- 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 classCIMDateTime
- Returns:
- A hash code value for this object.
- See Also:
Object.hashCode()
-
toString
public java.lang.String toString()
Returns aString
representation of theCIMDateTimeInterval
. 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 benull
.- Overrides:
toString
in classjava.lang.Object
- Returns:
- String representation of this datetime.
-
-