Class EffectiveInstancesIterator
java.lang.Object
org.dmfs.rfc5545.iterable.instanceiterator.EffectiveInstancesIterator
- All Implemented Interfaces:
InstanceIterator
An iterator for recurrence sets. It takes a number of
InstanceIterators for instances and exceptions and iterates all resulting instances
(i.e. only the instances, not the exceptions).-
Constructor Summary
ConstructorsConstructorDescriptionEffectiveInstancesIterator(InstanceIterator instances, InstanceIterator exceptions) Create a new recurrence iterator for specific lists of instances and exceptions. -
Method Summary
Modifier and TypeMethodDescriptionvoidfastForward(long until) Fast-forward to the next instance at or after the given date.booleanhasNext()Check if there is at least one more instance to iterate.longnext()Get the next instance of this set.
-
Constructor Details
-
EffectiveInstancesIterator
Create a new recurrence iterator for specific lists of instances and exceptions.- Parameters:
instances- The instances, must not benullor empty.exceptions- The exceptions, may be null.
-
-
Method Details
-
hasNext
public boolean hasNext()Check if there is at least one more instance to iterate.- Specified by:
hasNextin interfaceInstanceIterator- Returns:
trueif the next call tonext()will return another instance,falseotherwise.
-
next
public long next()Get the next instance of this set. Do not call this ifhasNext()returnsfalse.- Specified by:
nextin interfaceInstanceIterator- Returns:
- The time in milliseconds since the epoch of the next instance.
- Throws:
ArrayIndexOutOfBoundsException- if there are no more instances.
-
fastForward
public void fastForward(long until) Fast-forward to the next instance at or after the given date.- Specified by:
fastForwardin interfaceInstanceIterator- Parameters:
until- The date to fast-forward to in milliseconds since the epoch.
-