code: @Override
  	public final void setClientID(String clientID) throws JMSException
      {
      	externalAccessLock.readLock().lock();
      	try
      	{
  	        super.setClientID(clientID);
  	        try
  	        {
  	        	ClientIDRegistry.getInstance().register(clientID);
  	        }
  	        catch (JMSException e)
  	        {
  	        	this.clientID = null; // Clear client ID
  	        	throw e;
  	        }
      	}
      	finally
      	{
      		externalAccessLock.readLock().unlock();
      	}
      }
docs: /* (non-Javadoc)
  @see net.timewalker.ffmq4.common.connection.AbstractConnection#setClientID(java.lang.String)