code: void checkNotClosed() throws SISessionUnavailableException
    {
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
        SibTr.entry(tc, "checkNotClosed");
  
      synchronized (this)
      {
        if (_closed)
        {
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
            SibTr.exit(tc, "checkNotClosed", "Object closed");
  
          throw new SISessionUnavailableException(
            nls.getFormattedMessage("OBJECT_CLOSED_ERROR_CWSIP0081", 
                                    new Object[] { _dest.getName(),
                                                   _dest.getMessageProcessor().getMessagingEngineName() }, 
                                    null));
        }
      }
  
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
        SibTr.exit(tc, "checkNotClosed");
    }
docs: Check if the session is closed. If the closed flag is set to
  true, throw an exception.
  
  @throws SISessionUnavailableException thrown if the session is closed