docs: public void stop(int mode)
      {
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.entry(this, tc, "stop", "Mode="+mode);
  
          // Defect 363755
          // Stop any new work coming in as soon as we start stopping.
          // This way we make sure nothing is attempted during the
          // (possibly long) time it takes for the OM to shutdown.
          _available = false;
  
    
  
          // Defect 496893
          // Set the shutdown flag so we can tell if the callback from
          // the object manager was requested or not.
          _shutdownRequested = true;
  
          // Defect 549131
          // Check to see if we have an active startup thread
          if (_starting)
          {
              // Synchronize with the startup thread
              synchronized(this)
              {
                  // We have an active startup thread so we need 
                  // to inform it that it should give up.
                  _starting = false;
      
                  // We may need to wake up the startup thread for
                  // it to check the flag so notify.
                  notify();
              }
          }
  
          // Defect 530772
          // Stop spill dispatcher first so that it
          // can flush it's buffers before we stop the
          // object manager.
          if (_spillDispatcher != null)
          {
              _spillDispatcher.stop(mode);
  
              _spillDispatcher = null;
          }
  
          _batchingContextFactory = null;
  
          if (_objectManager != null)
          {
              try
              {
                  _objectManager.shutdown();
              }
              catch (ObjectManagerException ome)
              {
                  com.ibm.ws.ffdc.FFDCFilter.processException(ome, "com.ibm.ws.sib.msgstore.persistence.objectManager.PersistableMessageStoreImpl.stop", "1:764:1.81.1.6", this);
                  if (TraceComponent.isAnyTracingEnabled() && tc.isEventEnabled()) SibTr.event(this, tc, "Unexpected exception caught stopping persistent message store!", ome);
              }
  
              _objectManager  = null;
              _permanentStore = null;
              _temporaryStore = null;
          }
  
          if (_uniqueKeyManager != null)
          {
              _uniqueKeyManager.stop();
  
              _uniqueKeyManager = null;
          }
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.exit(this, tc, "stop");
      }