code: public synchronized boolean queueOrStartNonPersistentTimerAlarm(TimerNpImpl timer, EJBModuleMetaDataImpl module) {
          if (ivStopping) {
              if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled())
                  Tr.debug(tc, "not starting timer alarm after application stop: " + timer);
              return false;
          } else {
              if (isStarted()) {
                  timer.schedule();
              } else if (ivModuleBeingAddedLate != null && ivModuleBeingAddedLate != module) // d607800.CodRv
              {
                  timer.schedule();
              } else {
                  if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled())
                      Tr.debug(tc, "queueing timer alarm until full application start: " + timer);
  
                  if (ivQueuedNonPersistentTimers == null) {
                      ivQueuedNonPersistentTimers = new ArrayList<TimerNpImpl>();
                  }
                  ivQueuedNonPersistentTimers.add(timer);
              }
          }
          return true;
      }
docs: Queues or starts a non-persistent timer alarm, returning an indication of whether or
  not the operation was successful.
  
  If the application has not yet started, then the timer is queued and its alarm will
  be started after the application is fully started.
  
  If the application has previously been started, but now we are late-adding a new
  module, the timer we are trying to start is from that new module, then the timer is
  queued and its alarm will be started after the module is fully started.
  
  If everything in the application is already running, then the timer alarm is started
  immediately.
  
  If we are in the late-add flow, and the timer is not from the module we are in the
  process of adding (ie, the module the timer is from has already been started), then
  the timer alarm is started immediately.
  
  Otherwise, the request is ignored because the application is stopping or stopped, and
  all non-persistent timers for the application have already been removed. False is
  returned.
  
  @return true if the timer was successfully queued or started; otherwise false.