Class TimerProgressPanel
java.lang.Object
org.apache.wicket.Component
org.apache.wicket.MarkupContainer
org.apache.wicket.markup.html.WebMarkupContainer
org.apache.wicket.markup.html.panel.Panel
com.evolveum.midpoint.gui.impl.page.admin.resource.component.wizard.schemaHandling.objectType.smart.component.TimerProgressPanel
- All Implemented Interfaces:
Serializable,Iterable<org.apache.wicket.Component>,org.apache.wicket.event.IEventSink,org.apache.wicket.event.IEventSource,org.apache.wicket.feedback.IFeedbackContributor,org.apache.wicket.IConverterLocator,org.apache.wicket.IMetadataContext<Serializable,,org.apache.wicket.Component> org.apache.wicket.IQueueRegion,org.apache.wicket.markup.html.IHeaderContributor,org.apache.wicket.request.component.IRequestableComponent,org.apache.wicket.util.IHierarchical<org.apache.wicket.Component>,org.apache.wicket.util.io.IClusterable
public class TimerProgressPanel
extends org.apache.wicket.markup.html.panel.Panel
Panel that displays elapsed time based on provided start and optional end timestamps.
If the end timestamp is not provided, the panel shows continuously increasing elapsed time (optionally auto-refreshed via Ajax). If the end timestamp is present, it displays the final elapsed time along with the last refresh timestamp.
Typical output examples:
- Running: "Elapsed time: 1m 20s"
- Finished: "Last refresh: Mar 25, 2026, 10:45:00 AM • Elapsed time: 1m 43s"
The component supports optional auto-refresh to update the elapsed time dynamically.
- See Also:
-
Field Summary
Fields inherited from class org.apache.wicket.markup.html.panel.Panel
PANELFields 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
ConstructorsConstructorDescriptionTimerProgressPanel(String id, org.apache.wicket.model.IModel<XMLGregorianCalendar> startModel) TimerProgressPanel(String id, org.apache.wicket.model.IModel<XMLGregorianCalendar> startModel, boolean autoRefreshEnabled) TimerProgressPanel(String id, org.apache.wicket.model.IModel<XMLGregorianCalendar> startModel, @Nullable org.apache.wicket.model.IModel<XMLGregorianCalendar> endModel) TimerProgressPanel(String id, org.apache.wicket.model.IModel<XMLGregorianCalendar> startModel, @Nullable org.apache.wicket.model.IModel<XMLGregorianCalendar> endModel, boolean autoRefreshEnabled) -
Method Summary
Modifier and TypeMethodDescriptionprotected static @NotNull StringformatDuration(@NotNull Duration duration) static @Nullable StringformatTimestamp(@Nullable XMLGregorianCalendar timestamp) protected voidonDetach()protected voidMethods inherited from class org.apache.wicket.markup.html.panel.Panel
getRegionMarkup, newMarkupSourcingStrategyMethods inherited from class org.apache.wicket.markup.html.WebMarkupContainer
getWebApplication, getWebPage, getWebRequest, getWebResponse, getWebSessionMethods 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, onRender, queue, remove, remove, removeAll, renderAll, renderAssociatedMarkup, renderNext, replace, setDefaultModel, size, stream, streamChildren, toString, toString, visitChildren, visitChildrenMethods 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, renderHead, 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, wrapMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.wicket.IQueueRegion
dequeue, newDequeueContextMethods inherited from interface java.lang.Iterable
forEach, spliterator
-
Constructor Details
-
TimerProgressPanel
public TimerProgressPanel(String id, org.apache.wicket.model.IModel<XMLGregorianCalendar> startModel) -
TimerProgressPanel
public TimerProgressPanel(String id, org.apache.wicket.model.IModel<XMLGregorianCalendar> startModel, boolean autoRefreshEnabled) -
TimerProgressPanel
public TimerProgressPanel(String id, org.apache.wicket.model.IModel<XMLGregorianCalendar> startModel, @Nullable @Nullable org.apache.wicket.model.IModel<XMLGregorianCalendar> endModel) -
TimerProgressPanel
public TimerProgressPanel(String id, org.apache.wicket.model.IModel<XMLGregorianCalendar> startModel, @Nullable @Nullable org.apache.wicket.model.IModel<XMLGregorianCalendar> endModel, boolean autoRefreshEnabled)
-
-
Method Details
-
onInitialize
protected void onInitialize()- Overrides:
onInitializein classorg.apache.wicket.MarkupContainer
-
formatTimestamp
@Nullable public static @Nullable String formatTimestamp(@Nullable @Nullable XMLGregorianCalendar timestamp) -
formatDuration
-
onDetach
protected void onDetach()- Overrides:
onDetachin classorg.apache.wicket.MarkupContainer
-