org.apache.tapestry.link
Class DirectLink

java.lang.Object
  extended byorg.apache.hivemind.impl.BaseLocatable
      extended byorg.apache.tapestry.AbstractComponent
          extended byorg.apache.tapestry.link.AbstractLinkComponent
              extended byorg.apache.tapestry.link.DirectLink
All Implemented Interfaces:
IComponent, IDirect, ILinkComponent, IRender, org.apache.hivemind.Locatable, org.apache.hivemind.LocationHolder

public abstract class DirectLink
extends AbstractLinkComponent
implements IDirect

A component for creating a link using the direct service; used for actions that are not dependant on dynamic page state. [ Component Reference ]

Author:
Howard Lewis Ship

Constructor Summary
DirectLink()
           
 
Method Summary
static java.lang.Object[] constructServiceParameters(java.lang.Object parameterValue)
          Converts a service parameters value to an array of objects.
 ILink getLink(IRequestCycle cycle)
          Invoked by the ILinkRenderer (if the link is not disabled) to provide a EngineServiceLink that the renderer can convert into a URL.
abstract  IActionListener getListener()
           
abstract  ListenerInvoker getListenerInvoker()
          Injected.
abstract  java.lang.Object getParameters()
           
abstract  boolean isStateful()
          Returns true if the stateful parameter is bound to a true value.
 void trigger(IRequestCycle cycle)
          Invoked by the direct service to trigger the application-specific action by notifying the listener.
 
Methods inherited from class org.apache.tapestry.link.AbstractLinkComponent
addEventHandler, cleanupAfterRender, finishLoad, getAnchor, getLink, getRenderer, isDisabled, renderAdditionalAttributes, renderComponent, setRenderer, writeEventHandler, writeEventHandlers
 
Methods inherited from class org.apache.tapestry.AbstractComponent
addAsset, addBody, addComponent, checkActiveLock, enterActiveState, finishLoad, format, format, format, format, getAsset, getAssets, getBeans, getBinding, getBindingNames, getBindings, getBody, getBodyCount, getComponent, getComponents, getContainedComponent, getContainer, getExtendedId, getId, getIdPath, getListeners, getMessage, getMessages, getNamespace, getPage, getProperty, getSpecification, isInActiveState, isParameterBound, isRendering, pageEndRender, prepareForRender, render, renderBody, renderInformalParameters, setBinding, setContainedComponent, setContainer, setId, setNamespace, setPage, setProperty, toString
 
Methods inherited from class org.apache.hivemind.impl.BaseLocatable
getLocation, setLocation
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.apache.tapestry.IComponent
addAsset, addBody, addComponent, enterActiveState, finishLoad, getAsset, getAssets, getBeans, getBinding, getBindingNames, getBindings, getComponent, getComponents, getContainedComponent, getContainer, getExtendedId, getId, getIdPath, getListeners, getMessage, getMessages, getNamespace, getPage, getProperty, getSpecification, isRendering, renderBody, setBinding, setContainedComponent, setContainer, setId, setNamespace, setPage, setProperty
 
Methods inherited from interface org.apache.tapestry.IRender
render
 
Methods inherited from interface org.apache.hivemind.LocationHolder
setLocation
 
Methods inherited from interface org.apache.hivemind.Locatable
getLocation
 
Methods inherited from interface org.apache.tapestry.components.ILinkComponent
getPort, getScheme, getTarget
 

Constructor Detail

DirectLink

public DirectLink()
Method Detail

getListener

public abstract IActionListener getListener()

isStateful

public abstract boolean isStateful()
Returns true if the stateful parameter is bound to a true value. If stateful is not bound, also returns the default, true.

Specified by:
isStateful in interface IDirect

getLink

public ILink getLink(IRequestCycle cycle)
Description copied from interface: ILinkComponent
Invoked by the ILinkRenderer (if the link is not disabled) to provide a EngineServiceLink that the renderer can convert into a URL.

Specified by:
getLink in interface ILinkComponent
Overrides:
getLink in class AbstractLinkComponent

constructServiceParameters

public static java.lang.Object[] constructServiceParameters(java.lang.Object parameterValue)
Converts a service parameters value to an array of objects. This is used by the DirectLink,ServiceLinkand ExternalLinkcomponents.

Parameters:
parameterValue - the input value which may be
  • null (returns null)
  • An array of Object (returns the array)
  • A List(returns an array of the values in the List})
  • A single object (returns the object as a single-element array)
Returns:
An array representation of the input object.
Since:
2.2

trigger

public void trigger(IRequestCycle cycle)
Invoked by the direct service to trigger the application-specific action by notifying the listener.

Specified by:
trigger in interface IDirect
Throws:
StaleSessionException - if the component is stateful, and the session is new.

getParameters

public abstract java.lang.Object getParameters()
Since:
2.2 *

getListenerInvoker

public abstract ListenerInvoker getListenerInvoker()
Injected.

Since:
4.0