code: @Override
  	public final void close() throws JMSException
      {
      	externalAccessLock.writeLock().lock();
      	try
  		{
  	        if (closed)
  	            return;
  	        closed = true;
  	        onSessionClose();
  		}
      	finally
      	{
      		externalAccessLock.writeLock().unlock();
      	}
      	onSessionClosed();
      }
docs: /*
  (non-Javadoc)
  @see javax.jms.Session#close()