Class MediaLinkType


  • @Model(adaptables={org.apache.sling.api.SlingHttpServletRequest.class,org.apache.sling.api.resource.Resource.class})
    @ProviderType
    public final class MediaLinkType
    extends LinkType
    Default implementation of LinkType for media links. Media links are links to media items from media sources that implement the MediaSource interface.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static @NotNull java.lang.String ID
      Link type ID
    • Constructor Summary

      Constructors 
      Constructor Description
      MediaLinkType()  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean accepts​(@NotNull java.lang.String linkRef)
      Checks whether a link reference string can be handled by this link type
      @Nullable java.lang.String getEditComponentResourceType()
      Granite UI component resource type to be used for editing this link type's properties in edit dialog.
      @NotNull java.lang.String getId()  
      @NotNull java.lang.String getLabel()  
      java.lang.String getPrimaryLinkRefProperty()  
      static @NotNull org.apache.sling.api.resource.Resource getSyntheticLinkResource​(@NotNull org.apache.sling.api.resource.ResourceResolver resourceResolver, @NotNull java.lang.String path, @NotNull java.lang.String mediaRef)
      Get synthetic link resource for this link type.
      boolean hasRichTextPlugin()
      Returns true if a RTE plugin is available for this link type.
      static boolean isDefaultMediaContentPath​(java.lang.String path)  
      @NotNull Link resolveLink​(@NotNull Link link)
      Resolves a link
      java.lang.String toString()  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • ID

        @NotNull
        public static final @NotNull java.lang.String ID
        Link type ID
        See Also:
        Constant Field Values
    • Constructor Detail

      • MediaLinkType

        public MediaLinkType()
    • Method Detail

      • getId

        @NotNull
        public @NotNull java.lang.String getId()
        Specified by:
        getId in class LinkType
        Returns:
        Link type ID (is stored as identifier in repository)
      • getLabel

        @NotNull
        public @NotNull java.lang.String getLabel()
        Overrides:
        getLabel in class LinkType
        Returns:
        Link type label (displayed in link dialogs)
      • getPrimaryLinkRefProperty

        public java.lang.String getPrimaryLinkRefProperty()
        Specified by:
        getPrimaryLinkRefProperty in class LinkType
        Returns:
        Name of the property in which the primary link reference is stored
      • getEditComponentResourceType

        @Nullable
        public @Nullable java.lang.String getEditComponentResourceType()
        Description copied from class: LinkType
        Granite UI component resource type to be used for editing this link type's properties in edit dialog.
        Overrides:
        getEditComponentResourceType in class LinkType
        Returns:
        Granite UI component resource type or null, if none is available
      • hasRichTextPlugin

        public boolean hasRichTextPlugin()
        Description copied from class: LinkType
        Returns true if a RTE plugin is available for this link type. If not, it is not possible to select this link type in the rich text editor.
        Overrides:
        hasRichTextPlugin in class LinkType
        Returns:
        true if a RTE plugin is available.
      • accepts

        public boolean accepts​(@NotNull
                               @NotNull java.lang.String linkRef)
        Description copied from class: LinkType
        Checks whether a link reference string can be handled by this link type
        Specified by:
        accepts in class LinkType
        Parameters:
        linkRef - Link reference string
        Returns:
        true if this link type can handle the given link reference
      • resolveLink

        @NotNull
        public @NotNull Link resolveLink​(@NotNull
                                         @NotNull Link link)
        Description copied from class: LinkType
        Resolves a link
        Specified by:
        resolveLink in class LinkType
        Parameters:
        link - Link metadata
        Returns:
        Resolved link metadata. Never null.
      • isDefaultMediaContentPath

        public static boolean isDefaultMediaContentPath​(java.lang.String path)
        Parameters:
        path - Content path
        Returns:
        true if Path is located below DAM default root folders.
      • getSyntheticLinkResource

        @NotNull
        public static @NotNull org.apache.sling.api.resource.Resource getSyntheticLinkResource​(@NotNull
                                                                                               @NotNull org.apache.sling.api.resource.ResourceResolver resourceResolver,
                                                                                               @NotNull
                                                                                               @NotNull java.lang.String path,
                                                                                               @NotNull
                                                                                               @NotNull java.lang.String mediaRef)
        Get synthetic link resource for this link type.
        Parameters:
        resourceResolver - Resource resolver
        path - 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.
        mediaRef - Media asset reference
        Returns:
        Synthetic link resource
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object