org.apache.wicket.ajax.markup.html
Class AjaxFallbackLink<T>

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
                  extended by org.apache.wicket.markup.html.link.Link<T>
                      extended by org.apache.wicket.ajax.markup.html.AjaxFallbackLink<T>
Type Parameters:
T - type of model object
All Implemented Interfaces:
java.io.Serializable, java.lang.Iterable<Component>, IAjaxLink, IEventSink, IEventSource, IClusterable, IConverterLocator, IRequestListener, IHeaderContributor, ILinkListener, IRequestableComponent, IHierarchical<Component>
Direct Known Subclasses:
IndicatingAjaxFallbackLink

public abstract class AjaxFallbackLink<T>
extends Link<T>
implements IAjaxLink

An ajax link that will degrade to a normal request if ajax is not available or javascript is disabled

Since:
1.2
Author:
Igor Vaynberg (ivaynberg)
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
 
Fields inherited from interface org.apache.wicket.markup.html.link.ILinkListener
INTERFACE
 
Constructor Summary
AjaxFallbackLink(java.lang.String id)
          Construct.
AjaxFallbackLink(java.lang.String id, IModel<T> model)
          Construct.
 
Method Summary
protected  IAjaxCallDecorator getAjaxCallDecorator()
           
protected  AjaxChannel getChannel()
           
protected  AjaxEventBehavior newAjaxEventBehavior(java.lang.String event)
           
 void onClick()
          Called when a link is clicked.
abstract  void onClick(AjaxRequestTarget target)
          Callback for the onClick event.
protected  void onInitialize()
          This method is meant to be used as an alternative to initialize components.
 
Methods inherited from class org.apache.wicket.markup.html.link.Link
appendAnchor, getAnchor, getAutoEnable, getModel, getModelObject, getOnClickScript, getPopupSettings, getStatelessHint, getURL, isEnabled, linksTo, onComponentTag, onLinkClicked, setAnchor, setAutoEnable, setModel, setModelObject, setPopupSettings
 
Methods inherited from class org.apache.wicket.markup.html.link.AbstractLink
disableLink, getAfterDisabledLink, getBeforeDisabledLink, getBody, isLinkEnabled, onBeforeRender, onComponentTagBody, onDetach, setAfterDisabledLink, setBeforeDisabledLink, setBody
 
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, getString, getString, getString, getStyle, getVariation, hasBeenRendered, hasErrorMessage, hasFeedbackMessage, info, initModel, internalOnModelChanged, internalPrepareForRender, internalRenderComponent, isActionAuthorized, isAuto, isBehaviorAccepted, isEnableAllowed, isEnabledInHierarchy, isIgnoreAttributeModifier, isRenderAllowed, isStateless, isVersioned, isVisibilityAllowed, isVisible, isVisibleInHierarchy, locateMarkupStream, markRendering, modelChanged, modelChanging, newMarkupSourcingStrategy, onAfterRender, onConfigure, onEvent, 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

AjaxFallbackLink

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

Parameters:
id -

AjaxFallbackLink

public AjaxFallbackLink(java.lang.String id,
                        IModel<T> model)
Construct.

Parameters:
id -
model -
Method Detail

onInitialize

protected void onInitialize()
Description copied from class: Component
This method is meant to be used as an alternative to initialize components. Usually the component's constructor is used for this task, but sometimes a component cannot be initialized in isolation, it may need to access its parent component or its markup in order to fully initialize. This method is invoked once per component's lifecycle when a path exists from this component to the Page thus providing the component with an atomic callback when the component's environment is built out.

Overrides must call super#Component.onInitialize(). Usually this should be the first thing an override does, much like a constructor.

Parent containers are guaranteed to be initialized before their children

It is safe to use Component.getPage() in this method

NOTE:The timing of this call is not precise, the contract is that it is called sometime before Component.onBeforeRender().

Overrides:
onInitialize in class Component

newAjaxEventBehavior

protected AjaxEventBehavior newAjaxEventBehavior(java.lang.String event)
Parameters:
event - the name of the default event on which this link will listen to
Returns:
the ajax behavior which will be executed when the user clicks the link

getChannel

protected AjaxChannel getChannel()
Returns:
the channel that manages how Ajax calls are executed
See Also:
AbstractDefaultAjaxBehavior.getChannel()

getAjaxCallDecorator

protected IAjaxCallDecorator getAjaxCallDecorator()
Returns:
call decorator to use or null if none

onClick

public final void onClick()
Description copied from class: Link
Called when a link is clicked.

Specified by:
onClick in class Link<T>
See Also:
Link.onClick()

onClick

public abstract void onClick(AjaxRequestTarget target)
Callback for the onClick event. If ajax failed and this event was generated via a normal link the target argument will be null

Specified by:
onClick in interface IAjaxLink
Parameters:
target - ajax target if this linked was invoked using ajax, null otherwise


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