code: public ConnectionOptions withUri(String uriString) 
      throws URISyntaxException, NoSuchAlgorithmException, KeyManagementException
    {
       factory.setUri(Assert.notNull(uriString, "uriString"));
       return this;
    }
docs: Convenience method for setting the fields in an AMQP URI: host,
  port, username, password and virtual host.  If any part of the
  URI is ommited, the ConnectionFactory's corresponding variable
  is left unchanged.  Note that not all valid AMQP URIs are
  accepted; in particular, the hostname must be given if the
  port, username or password are given, and escapes in the
  hostname are not permitted.
  @param uriString is the AMQP URI containing the data