/** Gets the query string, with initial "?", or null. * http://www.w3.org/TR/url/#dom-urlutils-search * ?key=value&key=value */ public String getSearch(){ if(query==null || query.empty())return ""; return "?" + query.toString(); }
/** A string that can be appended to a URL. * The parameters are already URL-encoded. */ @Override public String toString(){ if(empty())return ""; StringBuilder s=new StringBuilder(); boolean first=true; for(Map.Entry<String, String> e : this){ if(!first)s.append('&'); String key=encode(e.getKey()); String value=encode(e.getValue()); s.append(key); s.append('='); s.append(value); first=false; } return s.toString(); }
if(query!=null && !query.empty()){ builder.append("?");