Class RecurrenceRule


  • public class RecurrenceRule
    extends java.lang.Object
    Recurrence Rule Object
    • Constructor Summary

      Constructors 
      Constructor Description
      RecurrenceRule​(GenericValue rule)
      Creates a new RecurrenceRule object from a RecurrenceInfo entity.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      long getCount()
      Get the number of times this recurrence will run (-1 until end time).
      long getEndTime()
      Gets the end time of the recurrence rule or 0 if none.
      int getFrequency()
      Returns the frequency of this recurrence.
      java.lang.String getFrequencyName()
      Returns the frequency name of the recurrence.
      long getInterval()
      Returns the interval of the frequency.
      int getIntervalInt()
      Returns the interval of the frequency as an int.
      void init()
      Initializes the rules for this RecurrenceInfo object.
      boolean isValid​(long startTime, long dateTime)
      Tests the date to see if it falls within the rules
      boolean isValid​(java.util.Date startDate, java.util.Date date)
      Tests the date to see if it falls within the rules
      static RecurrenceRule makeRule​(Delegator delegator, int frequency, int interval, int count)  
      static RecurrenceRule makeRule​(Delegator delegator, int frequency, int interval, int count, long endTime)  
      static RecurrenceRule makeRule​(Delegator delegator, int frequency, int interval, long endTime)  
      long next​(long startTime, long fromTime, long currentCount)
      Returns the next recurrence of this rule.
      java.lang.String primaryKey()  
      void remove()
      Removes this rule from the persistant store.
      long validCurrent​(long startTime, long checkTime, long currentCount)
      Gets the current recurrence (current for the checkTime) of this rule and returns it if it is valid.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Method Detail

      • getEndTime

        public long getEndTime()
        Gets the end time of the recurrence rule or 0 if none.
        Returns:
        long The timestamp of the end time for this rule or 0 for none.
      • getCount

        public long getCount()
        Get the number of times this recurrence will run (-1 until end time).
        Returns:
        long The number of time this recurrence will run.
      • getFrequencyName

        public java.lang.String getFrequencyName()
        Returns the frequency name of the recurrence.
        Returns:
        String The name of this frequency.
      • getFrequency

        public int getFrequency()
        Returns the frequency of this recurrence.
        Returns:
        int The reference value for the frequency
      • getInterval

        public long getInterval()
        Returns the interval of the frequency.
        Returns:
        long Interval value
      • getIntervalInt

        public int getIntervalInt()
        Returns the interval of the frequency as an int.
        Returns:
        The interval of this frequency as an integer.
      • next

        public long next​(long startTime,
                         long fromTime,
                         long currentCount)
        Returns the next recurrence of this rule.
        Parameters:
        startTime - The time this recurrence first began.
        fromTime - The time to base the next recurrence on.
        currentCount - The total number of times the recurrence has run.
        Returns:
        long The next recurrence as a long.
      • validCurrent

        public long validCurrent​(long startTime,
                                 long checkTime,
                                 long currentCount)
        Gets the current recurrence (current for the checkTime) of this rule and returns it if it is valid. If the current recurrence is not valid, doesn't try to find a valid one, instead returns 0.
        Parameters:
        startTime - The time this recurrence first began.
        checkTime - The time to base the current recurrence on.
        currentCount - The total number of times the recurrence has run.
        Returns:
        long The current recurrence as long if valid. If next recurrence is not valid, returns 0.
      • isValid

        public boolean isValid​(java.util.Date startDate,
                               java.util.Date date)
        Tests the date to see if it falls within the rules
        Parameters:
        startDate - date object to test
        Returns:
        True if the date is within the rules
      • isValid

        public boolean isValid​(long startTime,
                               long dateTime)
        Tests the date to see if it falls within the rules
        Parameters:
        startTime - date object to test
        Returns:
        True if the date is within the rules
      • primaryKey

        public java.lang.String primaryKey()