Package io.jmix.bpm.engine.calendar
Class BpmBusinessCalendarAdapter
java.lang.Object
io.jmix.bpm.engine.calendar.BpmBusinessCalendarAdapter
- All Implemented Interfaces:
- org.flowable.common.engine.impl.calendar.BusinessCalendar
public class BpmBusinessCalendarAdapter
extends Object
implements org.flowable.common.engine.impl.calendar.BusinessCalendar
Adapter between Flowable 
BusinessCalendar and Jmix BusinessCalendar.
 Delegates calculating actual dueDate for UserTask or timer's triggering dateTime for
 TimerEventDefinition to certain BusinessCalendar.- 
Constructor SummaryConstructorsConstructorDescriptionBpmBusinessCalendarAdapter(String businessCalendarCode, BusinessCalendarRepository businessCalendarRepository) 
- 
Method SummaryModifier and TypeMethodDescriptionprotected booleanChecks ifdueDateDescriptionis period by ISO 8601 standard, like "PT10M"protected booleanisRepeatingInterval(String dueDateDescription) Checks ifdueDateDescriptionis recurring time duration by ISO 8601 standard, like R3/PT10H.resolveDuedate(String dueDateDescription) resolveDuedate(String dueDateDescription, int maxIterations) Using providedbusinessCalendarcalculates proper triggering time for timer or dueDate for userTask.resolveEndDate(String endDateString) validateDuedate(String dueDateDescription, int maxIterations, Date endDate, Date newTimer) 
- 
Constructor Details- 
BpmBusinessCalendarAdapterpublic BpmBusinessCalendarAdapter(String businessCalendarCode, BusinessCalendarRepository businessCalendarRepository) 
 
- 
- 
Method Details- 
resolveDuedate- Specified by:
- resolveDuedatein interface- org.flowable.common.engine.impl.calendar.BusinessCalendar
 
- 
resolveDuedateUsing providedbusinessCalendarcalculates proper triggering time for timer or dueDate for userTask.- Specified by:
- resolveDuedatein interface- org.flowable.common.engine.impl.calendar.BusinessCalendar
- Parameters:
- dueDateDescription- can represent ISO 8601 period, ISO 8601 repeating interval, fixed date or cron expression.
- maxIterations- maximum number of invocations for given timer.
- Returns:
- resolved dateTime regarding used businessCalendar.
 
- 
validateDuedatepublic Boolean validateDuedate(String dueDateDescription, int maxIterations, @Nullable Date endDate, Date newTimer) - Specified by:
- validateDuedatein interface- org.flowable.common.engine.impl.calendar.BusinessCalendar
 
- 
resolveEndDate- Specified by:
- resolveEndDatein interface- org.flowable.common.engine.impl.calendar.BusinessCalendar
 
- 
isPeriodChecks ifdueDateDescriptionis period by ISO 8601 standard, like "PT10M"
- 
isRepeatingIntervalChecks ifdueDateDescriptionis recurring time duration by ISO 8601 standard, like R3/PT10H.
 
-