Interface LinkBuilder


  • @ProviderType
    public interface LinkBuilder
    Define link handling request using builder pattern.
    • Method Detail

      • args

        @NotNull
        @NotNull LinkBuilder args​(@NotNull
                                  @NotNull LinkArgs linkArgs)
        Set link arguments
        Parameters:
        linkArgs - Link arguments
        Returns:
        Link builder
      • selectors

        @NotNull
        @NotNull LinkBuilder selectors​(@Nullable
                                       @Nullable String selectors)
        Set selectors
        Parameters:
        selectors - Selector string
        Returns:
        Link builder
      • extension

        @NotNull
        @NotNull LinkBuilder extension​(@Nullable
                                       @Nullable String extension)
        Set file extension
        Parameters:
        extension - File extension
        Returns:
        Link builder
      • suffix

        @NotNull
        @NotNull LinkBuilder suffix​(@Nullable
                                    @Nullable String suffix)
        Set suffix
        Parameters:
        suffix - Suffix string
        Returns:
        Link builder
      • queryString

        @NotNull
        @NotNull LinkBuilder queryString​(@Nullable
                                         @Nullable String queryString)
        Set query parameters string
        Parameters:
        queryString - Query parameters string (properly url-encoded)
        Returns:
        Link builder
      • fragment

        @NotNull
        @NotNull LinkBuilder fragment​(@Nullable
                                      @Nullable String fragment)
        Set fragment identifier
        Parameters:
        fragment - Fragment identifier
        Returns:
        Link builder
      • urlMode

        @NotNull
        @NotNull LinkBuilder urlMode​(@Nullable
                                     @Nullable io.wcm.handler.url.UrlMode urlMode)
        Set URL mode for externalizing the URL
        Parameters:
        urlMode - URL mode. If null, default URL mode is used.
        Returns:
        Link builder
      • dummyLink

        @NotNull
        @NotNull LinkBuilder dummyLink​(boolean value)
        Parameters:
        value - If set to true, link handler returns a dummy link in edit mode when link is invalid.
        Returns:
        this
      • dummyLinkUrl

        @NotNull
        @NotNull LinkBuilder dummyLinkUrl​(@Nullable
                                          @Nullable String value)
        Parameters:
        value - Custom dummy link url. If null default dummy url is used.
        Returns:
        this
      • linkTargetUrlFallbackProperty

        @NotNull
        @NotNull LinkBuilder linkTargetUrlFallbackProperty​(@NotNull
                                                           @NotNull String @Nullable ... propertyNames)
        Defines a "fallback" property name that is used to load link target information from a single property instead of the link type + link type depending property name. This property is used for migration from components that do not support Link Handler. It is only used for reading, and never written back to. When opened and saved in the link dialog, the property is removed and instead the dedicated properties are used.
        Parameters:
        propertyNames - Property name(s)
        Returns:
        this
      • build

        @NotNull
        @NotNull Link build()
        Resolve link and return metadata object that contains the results.
        Returns:
        Link metadata object. Never null, if the resolving failed the isValid() method returns false.
      • buildMarkup

        @Nullable
        @Nullable String buildMarkup()
        Resolve link and return directly the markup generated by the link markup builder.
        Returns:
        Link markup (only the opening anchor tag) or null if resolving was not successful.
      • buildAnchor

        @Nullable
        @Nullable io.wcm.handler.commons.dom.Anchor buildAnchor()
        Resolve link and return directly the markup as DOM element generated by the link markup builder.
        Returns:
        Link markup or null if resolving was not successful.
      • buildUrl

        @Nullable
        @Nullable String buildUrl()
        Resolve link and get URL.
        Returns:
        Link URL or null if resolving was not successful.