public String build() {
            final String pathStr = String.join("", pathParts).replace("//", "/");
            if (!queryParams.isEmpty()) {
                final String queryParamsStr = String.join("&", queryParams);
                return pathStr + "?" + queryParamsStr;
            } else {
                return pathStr;
            }
        }
@param parts The path or parts of a path to append onto the base path.
@return The full path to the authenticated resource, e.g. /api/node
stroom-util-shared/src/main/java/stroom/util/shared/ResourcePaths.java