The ISO 8601 standard mentions 4 ways to specify intervals, one of which is <duration>/<end>.
From the spec, it appears that <end> identifies end of the interval.
When testing this in Activiti, I expected this to identify the end of the interval in which the timer would fire.
Once we are past the end date (due date), it would no longer fire. However that is not what I am seeing.
I created a simple test case that specified a timerEventDefinition as
<boundaryEvent id="timer" attachedToRef="task" cancelActivity="false">
<timerEventDefinition>
<timeCycle>R/PT15S/${EndDate}</timeCycle>
</timerEventDefinition>
</boundaryEvent>
The timer fires as expected every 15 seconds up until the end date. At that time the duration changes to some other value. SOmetimes it is 1 second, sometimes 5….it varies. I expected the timer to stop firing, but not only is it not stopped, but it continues to fire at a different interval.
My question is this….
When <duration>/<end> is specified, should the <end> indicate the end date (ie timer should not fire anymore).?
If not can you explain what the current behavior so I can get a better understanding.
I have included a simple test case to reproduce.
Thanks for any help!