edu.stanford.nlp.time
Class SUTime.Duration

java.lang.Object
  extended by edu.stanford.nlp.time.SUTime.Temporal
      extended by edu.stanford.nlp.time.SUTime.Duration
All Implemented Interfaces:
FuzzyInterval.FuzzyComparable<SUTime.Duration>, java.lang.Cloneable, java.lang.Comparable<SUTime.Duration>
Direct Known Subclasses:
SUTime.DurationRange, SUTime.DurationWithFields, SUTime.DurationWithMillis
Enclosing class:
SUTime

public abstract static class SUTime.Duration
extends SUTime.Temporal
implements FuzzyInterval.FuzzyComparable<SUTime.Duration>

A Duration represents a period of time (without endpoints)
We have 3 types of durations:

  1. DurationWithFields - corresponds to JodaTime Period, where we have fields like hours, weeks, etc
  2. DurationWithMillis - corresponds to JodaTime Duration, where the duration is specified in millis this gets rid of certain ambiguities such as a month with can be 28, 30, or 31 days
  3. InexactDuration - duration that is under determined (like a few days)


Field Summary
 
Fields inherited from class edu.stanford.nlp.time.SUTime.Temporal
approx, mod, timeLabel
 
Constructor Summary
SUTime.Duration()
           
SUTime.Duration(SUTime.Duration d)
           
 
Method Summary
abstract  SUTime.Duration add(SUTime.Duration d)
           
 int compareTo(SUTime.Duration d)
           
abstract  SUTime.Duration divideBy(int m)
           
 org.joda.time.DateTimeFieldType[] getDateTimeFields()
           
 SUTime.Duration getDuration()
           
static SUTime.Duration getDuration(org.joda.time.Duration d)
           
static SUTime.Duration getDuration(org.joda.time.ReadablePeriod p)
           
static SUTime.Duration getInexactDuration(org.joda.time.Duration d)
           
static SUTime.Duration getInexactDuration(org.joda.time.ReadablePeriod p)
           
abstract  org.joda.time.Duration getJodaTimeDuration()
           
abstract  org.joda.time.Period getJodaTimePeriod()
           
 SUTime.Duration getPeriod()
           
 SUTime.Range getRange(int flags, SUTime.Duration granularity)
           
 SUTime.Time getTime()
           
 SUTime.TimexType getTimexType()
           
 SUTime.Duration intersect(SUTime.Duration d)
           
 SUTime.Temporal intersect(SUTime.Temporal t)
           
 boolean isComparable(SUTime.Duration d)
          Returns whether this object is comparable with another object
 boolean isGrounded()
           
 SUTime.InexactDuration makeInexact()
           
static SUTime.Duration max(SUTime.Duration d1, SUTime.Duration d2)
           
static SUTime.Duration min(SUTime.Duration d1, SUTime.Duration d2)
           
abstract  SUTime.Duration multiplyBy(int m)
           
 SUTime.Duration resolve(SUTime.Time refTime, int flags)
           
 SUTime.Duration subtract(SUTime.Duration d)
           
 java.lang.String toFormattedString(int flags)
           
 SUTime.Time toTime(SUTime.Time refTime)
           
 SUTime.Time toTime(SUTime.Time refTime, int flags)
           
 
Methods inherited from class edu.stanford.nlp.time.SUTime.Temporal
addMod, addModApprox, getGranularity, getMod, getRange, getRange, getStandardTemporalType, getTfid, getTfidString, getTid, getTidString, getTimeLabel, getTimexAttributes, getTimexValue, includeTimexAltValue, isApprox, isRef, next, prev, resolve, setTimeZone, setTimeZone, toISOString, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

SUTime.Duration

public SUTime.Duration()

SUTime.Duration

public SUTime.Duration(SUTime.Duration d)
Method Detail

getDuration

public static SUTime.Duration getDuration(org.joda.time.ReadablePeriod p)

getDuration

public static SUTime.Duration getDuration(org.joda.time.Duration d)

getInexactDuration

public static SUTime.Duration getInexactDuration(org.joda.time.ReadablePeriod p)

getInexactDuration

public static SUTime.Duration getInexactDuration(org.joda.time.Duration d)

makeInexact

public SUTime.InexactDuration makeInexact()

getDateTimeFields

public org.joda.time.DateTimeFieldType[] getDateTimeFields()

isGrounded

public boolean isGrounded()
Specified by:
isGrounded in class SUTime.Temporal

getTime

public SUTime.Time getTime()
Specified by:
getTime in class SUTime.Temporal

toTime

public SUTime.Time toTime(SUTime.Time refTime)

toTime

public SUTime.Time toTime(SUTime.Time refTime,
                          int flags)

getDuration

public SUTime.Duration getDuration()
Specified by:
getDuration in class SUTime.Temporal

getRange

public SUTime.Range getRange(int flags,
                             SUTime.Duration granularity)
Specified by:
getRange in class SUTime.Temporal

getTimexType

public SUTime.TimexType getTimexType()
Overrides:
getTimexType in class SUTime.Temporal

getJodaTimePeriod

public abstract org.joda.time.Period getJodaTimePeriod()

getJodaTimeDuration

public abstract org.joda.time.Duration getJodaTimeDuration()

toFormattedString

public java.lang.String toFormattedString(int flags)
Overrides:
toFormattedString in class SUTime.Temporal

getPeriod

public SUTime.Duration getPeriod()
Overrides:
getPeriod in class SUTime.Temporal

compareTo

public int compareTo(SUTime.Duration d)
Specified by:
compareTo in interface java.lang.Comparable<SUTime.Duration>

isComparable

public boolean isComparable(SUTime.Duration d)
Description copied from interface: FuzzyInterval.FuzzyComparable
Returns whether this object is comparable with another object

Specified by:
isComparable in interface FuzzyInterval.FuzzyComparable<SUTime.Duration>
Returns:
Returns true if two objects are comparable, false otherwise

add

public abstract SUTime.Duration add(SUTime.Duration d)

multiplyBy

public abstract SUTime.Duration multiplyBy(int m)

divideBy

public abstract SUTime.Duration divideBy(int m)

subtract

public SUTime.Duration subtract(SUTime.Duration d)

resolve

public SUTime.Duration resolve(SUTime.Time refTime,
                               int flags)
Specified by:
resolve in class SUTime.Temporal

intersect

public SUTime.Temporal intersect(SUTime.Temporal t)
Overrides:
intersect in class SUTime.Temporal

intersect

public SUTime.Duration intersect(SUTime.Duration d)

min

public static SUTime.Duration min(SUTime.Duration d1,
                                  SUTime.Duration d2)

max

public static SUTime.Duration max(SUTime.Duration d1,
                                  SUTime.Duration d2)


Stanford NLP Group