public SlingUriBuilder setPath()

in src/main/java/org/apache/sling/api/uri/SlingUriBuilder.java [361:385]


    public SlingUriBuilder setPath(@Nullable String path) {
        if (schemeSpecificPart != null) {
            return this;
        }

        // adds path parameters to this.pathParameters and returns path without those
        path = extractPathParameters(path);

        // split in resource path, selectors, extension and suffix
        Matcher dotMatcher;
        if (path != null && path.startsWith(SlingUriBuilder.CHAR_SLASH) && resourceResolver != null) {
            setResourcePath(path);
            rebaseResourcePath();
        } else if (path != null && (dotMatcher = Pattern.compile(SELECTOR_DOT_REGEX).matcher(path)).find()) {
            int firstDotPosition = dotMatcher.start();
            setPathWithDefinedResourcePosition(path, firstDotPosition);
        } else {
            setSelectors(new String[] {});
            setSuffix(null);
            setExtension(null);
            setResourcePath(path);
        }

        return this;
    }