code: protected String createQueryString() {
  		assert !this.hasBinaryAttachments;
  		
  		if (this.params.isEmpty())
  			return "";
  		
  		StringBuilder bld = null;
  		
  		for (Map.Entry<String, Object> param: this.params.entrySet()) {
  			if (bld == null)
  				bld = new StringBuilder();
  			else
  				bld.append('&');
  			
  			bld.append(StringUtils.urlEncode(param.getKey()));
  			bld.append('=');
  			bld.append(StringUtils.urlEncode(param.getValue().toString()));
  		}
  		
  		return bld.toString();
  	}
docs: Creates a string representing the current query string, or an empty string if there are no parameters. Will not work if there are binary
  attachments!