com.citytechinc.aem.bedrock.api.link.builders
Interface LinkBuilder


public interface LinkBuilder

Builder for creating Link, ImageLink, and NavigationLink objects.


Method Summary
 LinkBuilder addChild(NavigationLink child)
          Add a child link.
 LinkBuilder addParameter(String name, String value)
          Add a query parameter.
 LinkBuilder addParameters(Map<String,String> parameters)
          Add query parameters.
 LinkBuilder addParameters(SetMultimap<String,String> parameters)
          Add query parameters.
 LinkBuilder addProperties(Map<String,String> properties)
          Add properties (map of properties name-value pairs that are stored on the returned link instance).
 LinkBuilder addProperty(String name, String value)
          Add a property (arbitrary name-value pair stored on the returned link instance).
 LinkBuilder addSelector(String selector)
          Add a selector.
 LinkBuilder addSelectors(List<String> selectors)
          Add selectors.
 Link build()
          Build a link using the properties of the current builder.
 ImageLink buildImageLink()
          Build an image link using the properties of the current builder.
 NavigationLink buildNavigationLink()
          Build a navigation link using the properties of the current builder.
 LinkBuilder setActive(boolean isActive)
          Set the active state for the link.
 LinkBuilder setExtension(String extension)
          Set the extension, without '.'.
 LinkBuilder setExternal(boolean isExternal)
          Set whether the link should be considered external, i.e.
 LinkBuilder setHost(String host)
          Set the host.
 LinkBuilder setImageSource(String imageSource)
          Set an image source.
 LinkBuilder setPort(int port)
          Set the port.
 LinkBuilder setSecure(boolean isSecure)
          Set secure.
 LinkBuilder setSuffix(String suffix)
          Set the suffix.
 LinkBuilder setTarget(String target)
          Set the link target.
 LinkBuilder setTitle(String title)
          Set the link title.
 

Method Detail

build

Link build()
Build a link using the properties of the current builder.

Returns:
link

buildImageLink

ImageLink buildImageLink()
Build an image link using the properties of the current builder. If setImage() was called on the builder, this is the only method that will return a link containing the image source property.

Returns:
image link

buildNavigationLink

NavigationLink buildNavigationLink()
Build a navigation link using the properties of the current builder. If setActive() or addChild() was called on the builder, this is only method that will return a link containing an active state and child links.

Returns:
builder

addChild

LinkBuilder addChild(NavigationLink child)
Add a child link. This is only applicable when building navigation links, returned by calling buildNavigationLink().

Parameters:
child - child navigation link instance
Returns:
builder

addParameter

LinkBuilder addParameter(String name,
                         String value)
Add a query parameter.

Parameters:
name - parameter name
value - parameter value
Returns:
builder

addParameters

LinkBuilder addParameters(Map<String,String> parameters)
Add query parameters.

Parameters:
parameters - map of parameter names to their values
Returns:
builder

addParameters

LinkBuilder addParameters(SetMultimap<String,String> parameters)
Add query parameters.

Parameters:
parameters - map of parameter names to their values
Returns:
builder

addProperties

LinkBuilder addProperties(Map<String,String> properties)
Add properties (map of properties name-value pairs that are stored on the returned link instance).

Parameters:
properties - map of properties names to their values
Returns:
builder

addProperty

LinkBuilder addProperty(String name,
                        String value)
Add a property (arbitrary name-value pair stored on the returned link instance).

Parameters:
name - property name
value - property value
Returns:
builder

addSelector

LinkBuilder addSelector(String selector)
Add a selector.

Parameters:
selector - selector value
Returns:
builder

addSelectors

LinkBuilder addSelectors(List<String> selectors)
Add selectors.

Parameters:
selectors - list of selector values
Returns:
builder

setActive

LinkBuilder setActive(boolean isActive)
Set the active state for the link. This only applies to navigation links returned by calling buildNavigationLink().

Parameters:
isActive - active state
Returns:
builder

setExtension

LinkBuilder setExtension(String extension)
Set the extension, without '.'. Defaults to "html" if none is provided.

Parameters:
extension - link extension
Returns:
builder

setExternal

LinkBuilder setExternal(boolean isExternal)
Set whether the link should be considered external, i.e. not a valid content path.

Parameters:
isExternal - if true, link is marked as external
Returns:
builder

setHost

LinkBuilder setHost(String host)
Set the host. If the host is set, the href of the built link will be absolute rather than relative.

Parameters:
host - host name
Returns:
builder

setImageSource

LinkBuilder setImageSource(String imageSource)
Set an image source. This only applies to image links returned by calling buildImageLink().

Parameters:
imageSource - image source path
Returns:
builder

setPort

LinkBuilder setPort(int port)
Set the port.

Parameters:
port - port number
Returns:
builder

setSecure

LinkBuilder setSecure(boolean isSecure)
Set secure. If true, the returned link will be "https" instead of "http". This only applies when a host name is set.

Parameters:
isSecure - secure
Returns:
builder

setSuffix

LinkBuilder setSuffix(String suffix)
Set the suffix.

Parameters:
suffix - suffix
Returns:
builder

setTarget

LinkBuilder setTarget(String target)
Set the link target.

Parameters:
target - link target
Returns:
builder

setTitle

LinkBuilder setTitle(String title)
Set the link title.

Parameters:
title - title
Returns:
builder


Copyright © 2015 CITYTECH, Inc.. All rights reserved.