@Override
    public Timer createTimer(Date initialExpiration, long intervalDuration, Serializable info)
            throws IllegalArgumentException, IllegalStateException, EJBException {
        assertTimerServiceState();
        if (initialExpiration == null) {
            throw EJB3_TIMER_LOGGER.initialExpirationDateIsNull();
        }
        if (initialExpiration.getTime() < 0) {
            throw EJB3_TIMER_LOGGER.invalidExpirationTimer();
        }
        if (intervalDuration < 0) {
            throw EJB3_TIMER_LOGGER.invalidIntervalDurationTimer();
        }
        return this.createTimer(initialExpiration, intervalDuration, info, true);
    }
@Override
    public Timer createTimer(Date initialExpiration, long intervalDuration, Serializable info)
            throws IllegalArgumentException, IllegalStateException, EJBException {
        assertTimerServiceState();
        if (initialExpiration == null) {
            throw EJB3_TIMER_LOGGER.initialExpirationDateIsNull();
        }
        if (initialExpiration.getTime() < 0) {
            throw EJB3_TIMER_LOGGER.invalidExpirationTimer();
        }
        if (intervalDuration < 0) {
            throw EJB3_TIMER_LOGGER.invalidIntervalDurationTimer();
        }
        return this.createTimer(initialExpiration, intervalDuration, info, true);
    }
@ Override public Timer createTimer ( Date initialExpiration , long intervalDuration , Serializable info ) throws IllegalArgumentException , IllegalStateException , EJBException { assertTimerServiceState ( ) ; if ( initialExpiration == null ) { throw EJB3_TIMER_LOGGER . initialExpirationDateIsNull ( ) ; } if ( initialExpiration . getTime ( ) < 0 ) { throw EJB3_TIMER_LOGGER . invalidExpirationTimer ( ) ; } if ( intervalDuration < 0 ) { throw EJB3_TIMER_LOGGER . invalidIntervalDurationTimer ( ) ; } return this . createTimer ( initialExpiration , intervalDuration , info , true ) ; }
{@inheritDoc}
{