public String toString(boolean verbose) {
        String httpOp = (httpOperation != null ? httpOperation.toString()
                                               : (postContent == null ? "GET?" : "POST?"));
        StringBuilder sb = new StringBuilder().append(httpOp).append(" ").append(scheme).append(':');
        if (host != null) {
            sb.append("//").append(host);
            if (port != 0) sb.append(':').append(port);
        }
        if (path == null || path.isEmpty()) {
            sb.append('/');
        } else {
            if (path.charAt(0) != '/') sb.append('/');
            sb.append(path);
        }
        if (urlOptions != null && urlOptions.size() > 0) {
            boolean first = (path == null || path.indexOf('?') < 0);
            for (KeyValuePair e : urlOptions) {
                sb.append(first ? '?' : '&');
                first = false;
                sb.append(e.key).append('=').append(e.value);
            }
        }
        if (verbose) {
            for (KeyValuePair p : headers) {
                sb.append('\n').append(p.key).append(": ").append(p.value);
            }
            if (postContent != null && !postContent.toString().isEmpty()) {
                sb.append("\n\n").append(postContent.toString());
            }
        }
        return sb.toString();
    }
Create a copy of this request, and override what is specified in the input in the new request.
clustercontroller-utils/src/main/java/com/yahoo/vespa/clustercontroller/utils/communication/http/HttpRequest.java