Class Timing.Repeat

  • All Implemented Interfaces:
    Visitable
    Enclosing class:
    Timing

    public static class Timing.Repeat
    extends BackboneElement
    A set of rules that describe when the event is scheduled.
    • Method Detail

      • getBounds

        public Element getBounds()
        Either a duration for the length of the timing schedule, a range of possible length, or outer bounds for start and/or end limits of the timing schedule.
        Returns:
        An immutable object of type Element that may be null.
      • getCount

        public PositiveInt getCount()
        A total count of the desired number of repetitions across the duration of the entire timing specification. If countMax is present, this element indicates the lower bound of the allowed range of count values.
        Returns:
        An immutable object of type PositiveInt that may be null.
      • getCountMax

        public PositiveInt getCountMax()
        If present, indicates that the count is a range - so to perform the action between [count] and [countMax] times.
        Returns:
        An immutable object of type PositiveInt that may be null.
      • getDuration

        public Decimal getDuration()
        How long this thing happens for when it happens. If durationMax is present, this element indicates the lower bound of the allowed range of the duration.
        Returns:
        An immutable object of type Decimal that may be null.
      • getDurationMax

        public Decimal getDurationMax()
        If present, indicates that the duration is a range - so to perform the action between [duration] and [durationMax] time length.
        Returns:
        An immutable object of type Decimal that may be null.
      • getDurationUnit

        public UnitsOfTime getDurationUnit()
        The units of time for the duration, in UCUM units.
        Returns:
        An immutable object of type UnitsOfTime that may be null.
      • getFrequency

        public PositiveInt getFrequency()
        The number of times to repeat the action within the specified period. If frequencyMax is present, this element indicates the lower bound of the allowed range of the frequency.
        Returns:
        An immutable object of type PositiveInt that may be null.
      • getFrequencyMax

        public PositiveInt getFrequencyMax()
        If present, indicates that the frequency is a range - so to repeat between [frequency] and [frequencyMax] times within the period or period range.
        Returns:
        An immutable object of type PositiveInt that may be null.
      • getPeriod

        public Decimal getPeriod()
        Indicates the duration of time over which repetitions are to occur; e.g. to express "3 times per day", 3 would be the frequency and "1 day" would be the period. If periodMax is present, this element indicates the lower bound of the allowed range of the period length.
        Returns:
        An immutable object of type Decimal that may be null.
      • getPeriodMax

        public Decimal getPeriodMax()
        If present, indicates that the period is a range from [period] to [periodMax], allowing expressing concepts such as "do this once every 3-5 days.
        Returns:
        An immutable object of type Decimal that may be null.
      • getPeriodUnit

        public UnitsOfTime getPeriodUnit()
        The units of time for the period in UCUM units.
        Returns:
        An immutable object of type UnitsOfTime that may be null.
      • getDayOfWeek

        public List<DayOfWeek> getDayOfWeek()
        If one or more days of week is provided, then the action happens only on the specified day(s).
        Returns:
        An unmodifiable list containing immutable objects of type DayOfWeek that may be empty.
      • getTimeOfDay

        public List<Time> getTimeOfDay()
        Specified time of day for action to take place.
        Returns:
        An unmodifiable list containing immutable objects of type Time that may be empty.
      • getWhen

        public List<EventTiming> getWhen()
        An approximate time period during the day, potentially linked to an event of daily living that indicates when the action should occur.
        Returns:
        An unmodifiable list containing immutable objects of type EventTiming that may be empty.
      • getOffset

        public UnsignedInt getOffset()
        The number of minutes from the event. If the event code does not indicate whether the minutes is before or after the event, then the offset is assumed to be after the event.
        Returns:
        An immutable object of type UnsignedInt that may be null.
      • accept

        public void accept​(String elementName,
                           int elementIndex,
                           Visitor visitor)
        Description copied from interface: Visitable
        Accept a Visitor and invoke the appropriate visit methods. A typical implementation would look like this:
         if (visitor.preVisit(this)) {
             visitor.visitStart(elementName, elementIndex, this);
             if (visitor.visit(elementName, elementIndex, this)) {
                 // visit children
             }
             visitor.visitEnd(elementName, elementIndex, this);
             visitor.postVisit(this);
         }
         
        Specified by:
        accept in interface Visitable
        Specified by:
        accept in class AbstractVisitable
        Parameters:
        elementName - the name of the element in the context of this visit
        elementIndex - the index of the element in a list or -1 if it is not contained within a List
        visitor - the visitor to use
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object