code: public void close() 
        throws SIResourceException, SIConnectionLostException,
               SIErrorException, SIConnectionDroppedException
  	{
        if (tc.isEntryEnabled()) SibTr.entry(this, tc, "close");
        synchronized(lock)
        {
           if (!isClosed())
           {
              try
              {
                 closeLock.writeLock().lockInterruptibly();
                 try
                 {
                    // Close the proxy queue
                    proxyQueue.close();
                  
                    // Mark this session as closed.
                    setClosed();  
                 }
                 finally
                 {
                    closeLock.writeLock().unlock();
                 }
              }
              catch(InterruptedException e)
              {
                 // No FFDC code needed
                 if (tc.isDebugEnabled()) SibTr.debug(this, tc, "interrupted exception");
              }
           }
        }      
        if (tc.isEntryEnabled()) SibTr.exit(this, tc, "close");
  	}
docs: Closes the browser session.  This involves some synchronization, flowing a
  close request and also marking the appropriate objects as closed.
  
  @throws com.ibm.websphere.sib.exception.SIResourceException
  @throws com.ibm.wsspi.sib.core.exception.SIConnectionLostException
  @throws com.ibm.websphere.sib.exception.SIErrorException
  @throws com.ibm.wsspi.sib.core.exception.SIConnectionDroppedException