To improve org.jboss.as.ejb3.timerservice.schedule.CalendarBasedTimeout
- remove redundant null checks and associated log method and message. These variables are known to be non-null.
- avoid calling TimeZone.getAvailableIDs() and searching for a specific value in the result array. There are currently 628 available timezone values. Instead, we can assume the timezoneId is of the correct format and get the timezone. If the result is GMT, then check if it is what the caller want.
- avoid unnecessary cloning the ScheduleExpression, and remove the clone(ScheduleExpression) method.