Class LinkSourceImpl
- java.lang.Object
-
- org.apache.tapestry5.internal.services.LinkSourceImpl
-
- All Implemented Interfaces:
LinkSource
,LinkCreationHub
public class LinkSourceImpl extends Object implements LinkSource, LinkCreationHub
-
-
Constructor Summary
Constructors Constructor Description LinkSourceImpl(PageRenderQueue pageRenderQueue, PageActivationContextCollector contextCollector, TypeCoercer typeCoercer, ComponentClassResolver resolver, ComponentEventLinkEncoder linkEncoder, RequestGlobals requestGlobals, RequestPageCache pageCache, List<LinkCreationListener2> configuration)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addListener(LinkCreationListener listener)
Adds a listener.void
addListener(LinkCreationListener2 listener)
Adds a listener.Link
createComponentEventLink(Page page, String nestedId, String eventType, boolean forForm, Object... eventContext)
Creates a stateful action link.Link
createPageRenderLink(String pageName, boolean override, Object... pageActivationContext)
Creates a render link for the page.LinkCreationHub
getLinkCreationHub()
Returns the hub, used to register and de-registerLinkCreationListener2
s.
-
-
-
Constructor Detail
-
LinkSourceImpl
public LinkSourceImpl(PageRenderQueue pageRenderQueue, PageActivationContextCollector contextCollector, TypeCoercer typeCoercer, ComponentClassResolver resolver, ComponentEventLinkEncoder linkEncoder, RequestGlobals requestGlobals, RequestPageCache pageCache, List<LinkCreationListener2> configuration)
-
-
Method Detail
-
createComponentEventLink
public Link createComponentEventLink(Page page, String nestedId, String eventType, boolean forForm, Object... eventContext)
Description copied from interface:LinkSource
Creates a stateful action link. Action links are built for components. Action links are encoded by the current request (that is, bound to the current request's session, if any).- Specified by:
createComponentEventLink
in interfaceLinkSource
- Parameters:
page
- the page holding the componentnestedId
- the component's qualified id (a sequence of simple ids, separated by dots).eventType
- the type of event to triggerforForm
- true if the link is for a form, false otherwiseeventContext
- Additional path data, each value will be converted to a string and appended to the URI @return a link- See Also:
ComponentResourcesCommon.createEventLink(String, Object...)
-
createPageRenderLink
public Link createPageRenderLink(String pageName, boolean override, Object... pageActivationContext)
Description copied from interface:LinkSource
Creates a render link for the page. If an activation context is supplied then that context is built into the URI. If no activation context is supplied, then the activation context is obtained from the page itself, by triggering a passivate event on its root component. When the activationContext is an empty array, the targeted page is checked to see if it can provide an activation context. This is accomplished by triggering a "passivate" event on the targeted page. If the override parameter is true, this will not occur (even when the activation context is empty).- Specified by:
createPageRenderLink
in interfaceLinkSource
- Parameters:
pageName
- name of the page to which a link should be createdoverride
- if true, then the provided activation context is always used even if emptypageActivationContext
- the activation context for the page- Returns:
- a link
- See Also:
PageRenderLinkSource.createPageRenderLink(String)
,PageRenderLinkSource.createPageRenderLinkWithContext(String, Object[])
-
getLinkCreationHub
public LinkCreationHub getLinkCreationHub()
Description copied from interface:LinkSource
Returns the hub, used to register and de-registerLinkCreationListener2
s.- Specified by:
getLinkCreationHub
in interfaceLinkSource
- Returns:
- the hub
-
addListener
public void addListener(LinkCreationListener listener)
Description copied from interface:LinkCreationHub
Adds a listener. If the scope of the listener is per-thread, then it must be removed.- Specified by:
addListener
in interfaceLinkCreationHub
-
addListener
public void addListener(LinkCreationListener2 listener)
Description copied from interface:LinkCreationHub
Adds a listener. If the scope of the listener is per-thread, then it must be removed.- Specified by:
addListener
in interfaceLinkCreationHub
-
-