Package io.wcm.wcm.commons.util
Class Path
- java.lang.Object
-
- io.wcm.wcm.commons.util.Path
-
@ProviderType public final class Path extends Object
Handling of paths and absolute parents in AEM.The methods implement special handling for AEM features:
- Side-by-side version comparison (at
/tmp/versionhistoryor/content/versionhistory) - Launches (at
/content/launches)
- Side-by-side version comparison (at
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static intgetAbsoluteLevel(@NotNull String path, @NotNull org.apache.sling.api.resource.ResourceResolver resourceResolver)Gets level from parent use same logic (but reverse) asgetAbsoluteParent(Page, int, ResourceResolver).static com.day.cq.wcm.api.PagegetAbsoluteParent(@NotNull com.day.cq.wcm.api.Page page, int parentLevel, @NotNull org.apache.sling.api.resource.ResourceResolver resourceResolver)Get absolute parent of given path.static StringgetAbsoluteParent(@NotNull String path, int parentLevel, @NotNull org.apache.sling.api.resource.ResourceResolver resourceResolver)Get absolute parent of given path.static StringgetOriginalPath(@NotNull String path, @NotNull org.apache.sling.api.resource.ResourceResolver resourceResolver)Resolve original path if the path is a version history or launch path.static booleanisEditableTemplatePath(@NotNull String path)static booleanisExperienceFragmentPath(@NotNull String path)
-
-
-
Method Detail
-
getAbsoluteParent
public static String getAbsoluteParent(@NotNull @NotNull String path, int parentLevel, @NotNull @NotNull org.apache.sling.api.resource.ResourceResolver resourceResolver)
Get absolute parent of given path. If the path is a version history or launch path the path level is adjusted accordingly. This is a replacement forText.getAbsoluteParent(String, int).- Parameters:
path- PathparentLevel- Parent levelresourceResolver- Resource resolver- Returns:
- Absolute parent path or empty string if path is invalid
-
getAbsoluteParent
public static com.day.cq.wcm.api.Page getAbsoluteParent(@NotNull @NotNull com.day.cq.wcm.api.Page page, int parentLevel, @NotNull @NotNull org.apache.sling.api.resource.ResourceResolver resourceResolver)Get absolute parent of given path. If the path is a version history or launch path the path level is adjusted accordingly. This is a replacement forPage.getAbsoluteParent(int).- Parameters:
page- PageparentLevel- Parent levelresourceResolver- Resource resolver- Returns:
- Absolute parent page or null if path is invalid
-
getAbsoluteLevel
public static int getAbsoluteLevel(@NotNull @NotNull String path, @NotNull @NotNull org.apache.sling.api.resource.ResourceResolver resourceResolver)Gets level from parent use same logic (but reverse) asgetAbsoluteParent(Page, int, ResourceResolver). If the path is a version history or launch path the original path is returned.- Parameters:
path- PathresourceResolver- Resource resolver- Returns:
- level >= 0 if path is valid, -1 if path is invalid
-
getOriginalPath
public static String getOriginalPath(@NotNull @NotNull String path, @NotNull @NotNull org.apache.sling.api.resource.ResourceResolver resourceResolver)
Resolve original path if the path is a version history or launch path. If the path does not point to any of these locations it is returned unchanged.- Parameters:
path- PathresourceResolver- Resource resolver- Returns:
- Path that is not a version history or launch path
-
isExperienceFragmentPath
public static boolean isExperienceFragmentPath(@NotNull @NotNull String path)- Parameters:
path- Content path- Returns:
- true if content path is inside experience fragements path.
-
isEditableTemplatePath
public static boolean isEditableTemplatePath(@NotNull @NotNull String path)- Parameters:
path- Content path- Returns:
- true if content path is inside an editable template definition.
-
-