public static SlingUriBuilder createFrom()

in src/main/java/org/apache/sling/api/uri/SlingUriBuilder.java [198:217]


    public static SlingUriBuilder createFrom(@NotNull URI uri, @Nullable ResourceResolver resourceResolver) {
        String path = uri.getRawPath();
        boolean pathExists = isNotBlank(path);
        String uriQuery = uri.getRawQuery();
        boolean schemeSpecificRelevant = !pathExists && uriQuery == null;
        String uriHost = uri.getHost();
        if (FILE_SCHEME.equals(uri.getScheme()) && uriHost == null) {
            uriHost = ""; // ensure three slashes in file URIs without host
        }
        return create()
                .setResourceResolver(resourceResolver)
                .setScheme(uri.getScheme())
                .setUserInfo(uri.getRawUserInfo())
                .setHost(uriHost)
                .setPort(uri.getPort())
                .setPath(pathExists ? path : null)
                .setQuery(uriQuery)
                .setFragment(uri.getRawFragment())
                .setSchemeSpecificPart(schemeSpecificRelevant ? uri.getRawSchemeSpecificPart() : null);
    }