protected void postTimeoutProcessing() {
CalendarTimer calendarTimer = this.getTimer();
TimerState timerState = calendarTimer.getState();
if (timerState == TimerState.IN_TIMEOUT || timerState == TimerState.RETRY_TIMEOUT) {
if (calendarTimer.getNextExpiration() == null) {
calendarTimer.expireTimer();
} else {
calendarTimer.setTimerState(TimerState.ACTIVE);
// persist changes
timerService.persistTimer(calendarTimer);
}