Class UploadProgressBar
- java.lang.Object
-
- org.apache.wicket.Component
-
- org.apache.wicket.MarkupContainer
-
- org.apache.wicket.markup.html.WebMarkupContainer
-
- org.apache.wicket.markup.html.panel.Panel
-
- org.apache.wicket.extensions.ajax.markup.html.form.upload.UploadProgressBar
-
- All Implemented Interfaces:
Serializable
,Iterable<Component>
,IEventSink
,IEventSource
,IFeedbackContributor
,IConverterLocator
,IMetadataContext<Serializable,Component>
,IQueueRegion
,IHeaderContributor
,IRequestableComponent
,IHierarchical<Component>
,IClusterable
public class UploadProgressBar extends Panel
A panel to show the progress of an HTTP upload.Note: For this to work upload progress monitoring must be enabled in the wicket application. Example:
public class App extends WebApplication { @Override protected void init() { super.init(); <b>getApplicationSettings().setUploadProgressUpdatesEnabled(true);</b> // <-- } }
RESOURCE_STARTING
. Implementation detail: Despite being located in an Ajax package, the progress communication is not done via Ajax but with an IFrame instead due to a bug in Webkit based browsers, see WICKET-3202.- Author:
- Andrew Lombardi
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
UploadProgressBar.ComponentInitializer
Initializer for this component; binds static resources.
-
Field Summary
Fields Modifier and Type Field Description static String
RESOURCE_STARTING
Resource key used to retrieve starting message for.-
Fields inherited from class org.apache.wicket.Component
ENABLE, FLAG_INITIALIZED, FLAG_RESERVED1, FLAG_RESERVED2, FLAG_RESERVED3, FLAG_RESERVED4, FLAG_RESERVED5, FLAG_RESERVED8, PARENT_PATH, PATH_SEPARATOR, RENDER, RFLAG_CONTAINER_DEQUEING, RFLAG_CONTAINER_HAS_REMOVALS
-
-
Constructor Summary
Constructors Constructor Description UploadProgressBar(String id, Form<?> form)
Constructor that will display the upload progress bar for every submit of the given form.UploadProgressBar(String id, Form<?> form, FileUploadField uploadField)
Constructor that will display the upload progress bar for submissions of the given form, that include a file upload in the given file upload field; i.e.UploadProgressBar(String id, FileUploadField uploadField)
Constructor that will display the upload progress bar for every submit of the given form.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected ResourceReference
getCss()
Override this to provide your own CSS, or return null to avoid including the default.protected String
getOnProgressUpdatedCallBack()
Allows to pass a JavaScript function that is called when progress in updated.protected MarkupContainer
newBarComponent(String id)
Creates a component for the barprotected MarkupContainer
newStatusComponent(String id)
Creates a component for the status textprotected void
onInitialize()
This method is meant to be used as an alternative to initialize components.void
renderHead(IHeaderResponse response)
Render to the web response whatever the component wants to contribute to the head section.void
start(IPartialPageRequestHandler handler)
-
Methods inherited from class org.apache.wicket.markup.html.panel.Panel
getRegionMarkup, newMarkupSourcingStrategy
-
Methods inherited from class org.apache.wicket.markup.html.WebMarkupContainer
getWebApplication, getWebPage, getWebRequest, getWebResponse, getWebSession
-
Methods inherited from class org.apache.wicket.MarkupContainer
add, addDequeuedComponent, addOrReplace, autoAdd, canDequeueTag, contains, dequeue, dequeue, dequeuePreamble, findChildComponent, findComponentToDequeue, get, getAssociatedMarkup, getAssociatedMarkupStream, getMarkup, getMarkupType, internalAdd, internalInitialize, iterator, iterator, newDequeueContext, onComponentTagBody, onDetach, onRender, queue, remove, remove, removeAll, renderAll, renderAssociatedMarkup, renderAssociatedMarkup, renderNext, replace, setDefaultModel, size, stream, streamChildren, toString, toString, visitChildren, visitChildren
-
Methods inherited from class org.apache.wicket.Component
add, addStateChange, beforeRender, canCallListener, canCallListenerAfterExpiry, checkComponentTag, checkComponentTagAttribute, checkHierarchyChange, clearOriginalDestination, configure, continueToOriginalDestination, createConverter, 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, getFeedbackMessages, getFlag, getId, getInnermostModel, getInnermostModel, getLocale, getLocalizer, getMarkup, getMarkupAttributes, getMarkupId, getMarkupId, getMarkupIdFromMarkup, getMarkupIdImpl, getMarkupSourcingStrategy, getMarkupTag, 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, internalRenderComponent, internalRenderHead, isActionAuthorized, isAuto, isBehaviorAccepted, isEnableAllowed, isEnabled, isEnabledInHierarchy, isIgnoreAttributeModifier, isInitialized, isRenderAllowed, isRendering, isStateless, isVersioned, isVisibilityAllowed, isVisible, isVisibleInHierarchy, markRendering, modelChanged, modelChanging, onAfterRender, onBeforeRender, onComponentTag, onConfigure, onEvent, onModelChanged, onModelChanging, onReAdd, onRemove, redirectToInterceptPage, remove, remove, render, renderComponentTag, rendered, renderPart, renderPlaceholderTag, replaceComponentTagBody, replaceWith, sameInnermostModel, sameInnermostModel, send, setAuto, setDefaultModelObject, setEnabled, setEscapeModelStrings, setFlag, setIgnoreAttributeModifier, setMarkup, setMarkupId, setMarkupIdImpl, setMetaData, setOutputMarkupId, setOutputMarkupPlaceholderTag, setParent, setRenderBodyOnly, setResponsePage, setResponsePage, setResponsePage, setVersioned, setVisibilityAllowed, setVisible, success, urlFor, urlFor, urlFor, urlForListener, urlForListener, visitParents, visitParents, warn, wrap
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.wicket.IQueueRegion
dequeue, newDequeueContext
-
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
-
-
-
Field Detail
-
RESOURCE_STARTING
public static final String RESOURCE_STARTING
Resource key used to retrieve starting message for. Example: UploadProgressBar.starting=Upload starting...- See Also:
- Constant Field Values
-
-
Constructor Detail
-
UploadProgressBar
public UploadProgressBar(String id, FileUploadField uploadField)
Constructor that will display the upload progress bar for every submit of the given form.- Parameters:
id
- component id (not null)uploadField
- the file upload field to check for a file upload, or null to display the upload field for every submit of the given form
-
UploadProgressBar
public UploadProgressBar(String id, Form<?> form)
Constructor that will display the upload progress bar for every submit of the given form.- Parameters:
id
- component id (not null)form
- form that will be submitted (not null)
-
UploadProgressBar
public UploadProgressBar(String id, Form<?> form, FileUploadField uploadField)
Constructor that will display the upload progress bar for submissions of the given form, that include a file upload in the given file upload field; i.e. if the user did not select a file in the given file upload field, the progess bar is not displayed.- Parameters:
id
- component id (not null)form
- form that is submitted (not null)uploadField
- the file upload field to check for a file upload, or null to display the upload field for every submit of the given form
-
-
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 thePage
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 methodNOTE:The timing of this call is not precise, the contract is that it is called sometime before
Component.onBeforeRender()
.- Overrides:
onInitialize
in classMarkupContainer
-
newStatusComponent
protected MarkupContainer newStatusComponent(String id)
Creates a component for the status text- Parameters:
id
- The component id- Returns:
- the status component
-
newBarComponent
protected MarkupContainer newBarComponent(String id)
Creates a component for the bar- Parameters:
id
- The component id- Returns:
- the bar component
-
getCss
protected ResourceReference getCss()
Override this to provide your own CSS, or return null to avoid including the default.- Returns:
- ResourceReference for your CSS.
-
renderHead
public void renderHead(IHeaderResponse response)
Render to the web response whatever the component wants to contribute to the head section.- Specified by:
renderHead
in interfaceIHeaderContributor
- Overrides:
renderHead
in classComponent
- Parameters:
response
- Response object
-
getOnProgressUpdatedCallBack
protected String getOnProgressUpdatedCallBack()
Allows to pass a JavaScript function that is called when progress in updated.- Returns:
- A JavaScript function.
-
start
public void start(IPartialPageRequestHandler handler)
-
-