org.apache.wicket.markup.html.link
Class AbstractLink

java.lang.Object
  extended by org.apache.wicket.Component
      extended by org.apache.wicket.MarkupContainer
          extended by org.apache.wicket.markup.html.WebMarkupContainer
              extended by org.apache.wicket.markup.html.link.AbstractLink
All Implemented Interfaces:
java.io.Serializable, java.lang.Iterable<Component>, IEventSink, IEventSource, IClusterable, IConverterLocator, IHeaderContributor, IRequestableComponent, IHierarchical<Component>
Direct Known Subclasses:
AbstractSubmitLink, AjaxLink, ExternalLink, Link

public abstract class AbstractLink
extends WebMarkupContainer

Base class that that contains functionality for rendering disabled links.

Author:
Matej Knopp
See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.apache.wicket.Component
ENABLE, FLAG_INITIALIZED, FLAG_REMOVING_FROM_HIERARCHY, FLAG_RESERVED1, FLAG_RESERVED2, FLAG_RESERVED3, FLAG_RESERVED4, FLAG_RESERVED5, FLAG_RESERVED8, PARENT_PATH, PATH_SEPARATOR, RENDER
 
Constructor Summary
AbstractLink(java.lang.String id)
          Construct.
AbstractLink(java.lang.String id, IModel<?> model)
          Construct.
 
Method Summary
protected  void disableLink(ComponentTag tag)
          Alters the tag so that the link renders as disabled.
 java.lang.String getAfterDisabledLink()
          Gets the insertion string to allow disabled links to look like Disabled link .
 java.lang.String getBeforeDisabledLink()
          Gets the insertion string to allow disabled links to look like Disabled link .
 IModel<?> getBody()
           
protected  boolean isLinkEnabled()
          Helper methods that both checks whether the link is enabled and whether the action ENABLE is allowed.
protected  void onBeforeRender()
          Called just before a component is rendered.
 void onComponentTagBody(MarkupStream markupStream, ComponentTag openTag)
          Renders this link's body.
protected  void onDetach()
          Called to allow a component to detach resources after use.
 AbstractLink setAfterDisabledLink(java.lang.String afterDisabledLink)
          Sets the insertion string to allow disabled links to look like Disabled link .
 AbstractLink setBeforeDisabledLink(java.lang.String beforeDisabledLink)
          Sets the insertion string to allow disabled links to look like Disabled link .
 AbstractLink setBody(IModel<?> bodyModel)
          Sets the link's body model
 
Methods inherited from class org.apache.wicket.markup.html.WebMarkupContainer
getWebPage, getWebRequest
 
Methods inherited from class org.apache.wicket.MarkupContainer
add, addOrReplace, autoAdd, contains, get, get, getAssociatedMarkup, getAssociatedMarkupStream, getMarkup, getMarkupType, hasAssociatedMarkup, internalAdd, internalInitialize, iterator, iterator, onAfterRenderChildren, onMarkupAttached, onRender, remove, remove, removeAll, renderAll, renderAssociatedMarkup, renderNext, replace, setDefaultModel, size, swap, toString, toString, visitChildren, visitChildren, visitChildren, visitChildren
 
Methods inherited from class org.apache.wicket.Component
add, addStateChange, afterRender, beforeRender, canCallListenerInterface, checkComponentTag, checkComponentTagAttribute, checkHierarchyChange, configure, continueToOriginalDestination, debug, detach, detachModel, detachModels, determineVisibility, error, exceptionMessage, fatal, findMarkupStream, findPage, findParent, findParentWithAssociatedMarkup, getAjaxRegionMarkupId, getApplication, getBehaviorById, getBehaviorId, getBehaviors, getBehaviors, getClassRelativePath, getConverter, getDefaultModel, getDefaultModelObject, getDefaultModelObjectAsString, getDefaultModelObjectAsString, getEscapeModelStrings, getFeedbackMessage, getFeedbackMessages, getFlag, getId, getInnermostModel, getInnermostModel, getLocale, getLocalizer, getMarkup, getMarkupAttributes, getMarkupId, getMarkupId, getMarkupIdFromMarkup, getMarkupIdImpl, getMarkupSourcingStrategy, getMetaData, getModelComparator, getOutputMarkupId, getOutputMarkupPlaceholderTag, getPage, getPageRelativePath, getParent, getPath, getRenderBodyOnly, getRequest, getRequestCycle, getRequestFlag, getResponse, getSession, getSizeInBytes, getStatelessHint, getString, getString, getString, getStyle, getVariation, hasBeenRendered, hasErrorMessage, hasFeedbackMessage, info, initModel, internalOnModelChanged, internalPrepareForRender, internalRenderComponent, isActionAuthorized, isAuto, isBehaviorAccepted, isEnableAllowed, isEnabled, isEnabledInHierarchy, isIgnoreAttributeModifier, isRenderAllowed, isStateless, isVersioned, isVisibilityAllowed, isVisible, isVisibleInHierarchy, locateMarkupStream, markRendering, modelChanged, modelChanging, newMarkupSourcingStrategy, onAfterRender, onComponentTag, onConfigure, onEvent, onInitialize, onModelChanged, onModelChanging, onRemove, prepareForRender, redirectToInterceptPage, remove, remove, render, renderComponentTag, rendered, renderHead, renderHead, renderHead, renderPlaceholderTag, replaceComponentTagBody, replaceWith, sameInnermostModel, sameInnermostModel, send, setAuto, setDefaultModelObject, setEnabled, setEscapeModelStrings, setFlag, setIgnoreAttributeModifier, setMarkup, setMarkupId, setMarkupIdImpl, setMetaData, setOutputMarkupId, setOutputMarkupPlaceholderTag, setParent, setRenderBodyOnly, setRequestFlag, setResponsePage, setResponsePage, setResponsePage, setVersioned, setVisibilityAllowed, setVisible, success, urlFor, urlFor, urlFor, urlFor, urlFor, visitParents, warn, wrap
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

AbstractLink

public AbstractLink(java.lang.String id)
Construct.

Parameters:
id -

AbstractLink

public AbstractLink(java.lang.String id,
                    IModel<?> model)
Construct.

Parameters:
id - the component id
model - the link's model
Method Detail

setAfterDisabledLink

public AbstractLink setAfterDisabledLink(java.lang.String afterDisabledLink)
Sets the insertion string to allow disabled links to look like Disabled link .

Parameters:
afterDisabledLink - The insertion string
Returns:
this

getAfterDisabledLink

public java.lang.String getAfterDisabledLink()
Gets the insertion string to allow disabled links to look like Disabled link .

Returns:
The insertion string

setBeforeDisabledLink

public AbstractLink setBeforeDisabledLink(java.lang.String beforeDisabledLink)
Sets the insertion string to allow disabled links to look like Disabled link .

Parameters:
beforeDisabledLink - The insertion string
Returns:
this

onBeforeRender

protected void onBeforeRender()
Description copied from class: Component
Called just before a component is rendered.

NOTE: If you override this, you *must* call super.onBeforeRender() within your implementation. Because this method is responsible for cascading Component.onBeforeRender() call to its children it is strongly recommended that super call is made at the end of the override.

Overrides:
onBeforeRender in class Component
See Also:
Component.onBeforeRender()

getBeforeDisabledLink

public java.lang.String getBeforeDisabledLink()
Gets the insertion string to allow disabled links to look like Disabled link .

Returns:
The insertion string

isLinkEnabled

protected boolean isLinkEnabled()
Helper methods that both checks whether the link is enabled and whether the action ENABLE is allowed.

Returns:
whether the link should be rendered as enabled

onComponentTagBody

public void onComponentTagBody(MarkupStream markupStream,
                               ComponentTag openTag)
Renders this link's body.

Overrides:
onComponentTagBody in class MarkupContainer
Parameters:
markupStream - the markup stream
openTag - the open part of this tag
See Also:
Component.onComponentTagBody(MarkupStream, ComponentTag)

disableLink

protected void disableLink(ComponentTag tag)
Alters the tag so that the link renders as disabled. This method is meant to be called from Component.onComponentTag(ComponentTag) method of the derived class.

Parameters:
tag -

getBody

public IModel<?> getBody()
Returns:
the link's body model

setBody

public AbstractLink setBody(IModel<?> bodyModel)
Sets the link's body model

Parameters:
bodyModel -
Returns:
this for method chaining

onDetach

protected void onDetach()
Description copied from class: Component
Called to allow a component to detach resources after use. Overrides of this method MUST call the super implementation, the most logical place to do this is the last line of the override method.

Overrides:
onDetach in class Component


Copyright © 2006-2011 Apache Software Foundation. All Rights Reserved.