Package io.wcm.handler.link.type
Class InternalLinkType
- java.lang.Object
-
- io.wcm.handler.link.spi.LinkType
-
- io.wcm.handler.link.type.InternalLinkType
-
@Model(adaptables={org.apache.sling.api.SlingHttpServletRequest.class,org.apache.sling.api.resource.Resource.class}) @ProviderType public final class InternalLinkType extends LinkTypeDefault implementation ofLinkTypefor internal links. Internal links are links to content pages inside the CMS.This link type ensures all links target only pages inside the same inner-most configuration scope, which is usually the same site/language. All link paths referencing pages outside this content subtree are rewritten via
UrlHandler.rewritePathToContext(Resource)with the root path of the inner-most configuration scope/site and then resolved.
-
-
Constructor Summary
Constructors Constructor Description InternalLinkType()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description booleanaccepts(@NotNull LinkRequest linkRequest)Checks whether a link reference can be handled by this link typebooleanaccepts(@NotNull String linkRef)Checks whether a link reference string can be handled by this link type@NotNull StringgetId()@NotNull StringgetLabel()StringgetPrimaryLinkRefProperty()static @NotNull org.apache.sling.api.resource.ResourcegetSyntheticLinkResource(@NotNull org.apache.sling.api.resource.ResourceResolver resourceResolver, @NotNull String pageRef)Deprecated.static @NotNull org.apache.sling.api.resource.ResourcegetSyntheticLinkResource(@NotNull org.apache.sling.api.resource.ResourceResolver resourceResolver, @NotNull String path, @NotNull String pageRef)Get synthetic link resource for this link type.@NotNull LinkresolveLink(@NotNull Link link)Resolves a linkStringtoString()
-
-
-
Field Detail
-
ID
@NotNull public static final @NotNull String ID
Link type ID- See Also:
- Constant Field Values
-
-
Method Detail
-
getId
@NotNull public @NotNull String getId()
-
getLabel
@NotNull public @NotNull String getLabel()
-
getPrimaryLinkRefProperty
public String getPrimaryLinkRefProperty()
- Specified by:
getPrimaryLinkRefPropertyin classLinkType- Returns:
- Name of the property in which the primary link reference is stored
-
accepts
public boolean accepts(@NotNull @NotNull String linkRef)Description copied from class:LinkTypeChecks whether a link reference string can be handled by this link type
-
accepts
public boolean accepts(@NotNull @NotNull LinkRequest linkRequest)Description copied from class:LinkTypeChecks whether a link reference can be handled by this link type
-
resolveLink
@NotNull public @NotNull Link resolveLink(@NotNull @NotNull Link link)
Description copied from class:LinkTypeResolves a link- Specified by:
resolveLinkin classLinkType- Parameters:
link- Link metadata- Returns:
- Resolved link metadata. Never null.
-
getSyntheticLinkResource
@NotNull public static @NotNull org.apache.sling.api.resource.Resource getSyntheticLinkResource(@NotNull @NotNull org.apache.sling.api.resource.ResourceResolver resourceResolver, @NotNull @NotNull String path, @NotNull @NotNull String pageRef)Get synthetic link resource for this link type.- Parameters:
resourceResolver- Resource resolverpath- Resource path. Can be a non-existing path, but the path should be located somewhere within the applications content paths to make sure the handler configuration looked up via context-aware services is the expected one.pageRef- Path to target page- Returns:
- Synthetic link resource
-
getSyntheticLinkResource
@Deprecated @NotNull public static @NotNull org.apache.sling.api.resource.Resource getSyntheticLinkResource(@NotNull @NotNull org.apache.sling.api.resource.ResourceResolver resourceResolver, @NotNull @NotNull String pageRef)
Deprecated.Get synthetic link resource for this link type.- Parameters:
resourceResolver- Resource resolverpageRef- Path to target page- Returns:
- Synthetic link resource
-
-