GitHub user Jezza opened a pull request:
https://github.com/apache/wicket/pull/297
Improve AjaxLazyLoadPanel's functionality.
There's a couple of changes here, I'll see if I can list them all:
- ALLPs can now be terminated, which skips the component replacing part.
(This is useful when you use an external service, and don't want it to keep the
behaviour around just because some task timed out.)
- They can now be provided with an indicator id. (Yeah, technically this
was possibly before, but because the behaviour was attached to the page, the
only place you could install the IAjaxIndicatorAware was on the page directly,
meaning ALL ajax behaviours started using that indicator. I can think of a
couple of issues with my solution, so I'm definitely hoping someone can come up
with a better one. )
- #getUpdateInterval() will also work for the first request, rather than
just the subsequent requests. (This was a bit surprising when I found it, but
it doesn't consult the panels on the page for the interval time when
constructing the timer itself, meaning, regardless what I want the update
interval to be, for the first request, it would always be 1 second because
that's the value that passed in the constructor.)
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/Jezza/wicket async-lazy-load
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/wicket/pull/297.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #297
----
commit a66abe8cf104e577377eb0300e3a25451d50ce13
Author: Jezza <jezzadabomb@...>
Date: 2018-10-16T19:22:25Z
Extend AjaxLazyLoadPanel's functionality.
Allow lazy panels to be terminated.
They can now be provided with an indicator id.
#getUpdateInterval() will also work for the first request, rather than just
the subsequent requests.
----
---