docs: void validateStopCloseForMessageListener(String functionCall) throws IllegalStateException {
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.entry(this, tc, "validateStopForMessageListener");
  
          //Before triggering onMessage .. SIB pushes "owning session object" to Thread Local, 
          //Now obtain the Session object from Thread Local and validate with 'this'. 
          if ((JmsSessionImpl.asyncReceiverThreadLocal.get() != null) && (JmsSessionImpl.asyncReceiverThreadLocal.get() == this)) {
  
              if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled())
                  SibTr.debug(tc, "Message Listener onMessage called stop on its own Context/connection.");
  
              if (functionCall.equalsIgnoreCase("stop")) {
                  //stop is called.
  
                  //the stop call is driven from this JmsSessionImpl object only.. throw JMSException
                  throw (IllegalStateException) JmsErrorUtils.newThrowable(IllegalStateException.class,
                                                                           "INVALID_METHOD_CWSIA0517",
                                                                           new Object[] { this },
                                                                           tc
                                  );
              } else {
                  //close is called
                  //the stop call is driven from this JmsSessionImpl object only.. throw JMSException
                  throw (IllegalStateException) JmsErrorUtils.newThrowable(IllegalStateException.class,
                                                                           "INVALID_METHOD_CWSIA0518",
                                                                           new Object[] { this },
                                                                           tc
                                  );
  
              }
  
          }
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.entry(this, tc, "validateStopForMessageListener");
  
      }