You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by ad...@apache.org on 2017/10/20 09:54:41 UTC
wicket git commit: WICKET-6485 reintroduce PageExpiredException in
IPageStore for methods getPageClass, getPageInstance and getPageParameters
Repository: wicket
Updated Branches:
refs/heads/master eb64b2af4 -> 3183aeb24
WICKET-6485 reintroduce PageExpiredException in IPageStore for
methods getPageClass, getPageInstance and getPageParameters
Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/3183aeb2
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/3183aeb2
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/3183aeb2
Branch: refs/heads/master
Commit: 3183aeb24f09d57e91bfc01813005f01cfd671df
Parents: eb64b2a
Author: Andrea Del Bene <ad...@apache.org>
Authored: Fri Oct 20 11:53:21 2017 +0200
Committer: Andrea Del Bene <ad...@apache.org>
Committed: Fri Oct 20 11:53:21 2017 +0200
----------------------------------------------------------------------
.../core/request/handler/IPageProvider.java | 17 +++++++++--------
.../request/handler/ListenerRequestHandler.java | 9 +--------
.../core/request/handler/PageProvider.java | 20 +++++++++++++-------
3 files changed, 23 insertions(+), 23 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/wicket/blob/3183aeb2/wicket-core/src/main/java/org/apache/wicket/core/request/handler/IPageProvider.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/core/request/handler/IPageProvider.java b/wicket-core/src/main/java/org/apache/wicket/core/request/handler/IPageProvider.java
index f0843dc..cc69e02 100644
--- a/wicket-core/src/main/java/org/apache/wicket/core/request/handler/IPageProvider.java
+++ b/wicket-core/src/main/java/org/apache/wicket/core/request/handler/IPageProvider.java
@@ -16,7 +16,6 @@
*/
package org.apache.wicket.core.request.handler;
-import org.apache.wicket.core.request.mapper.StalePageException;
import org.apache.wicket.protocol.http.PageExpiredException;
import org.apache.wicket.request.component.IRequestablePage;
import org.apache.wicket.request.mapper.parameter.PageParameters;
@@ -36,21 +35,21 @@ public interface IPageProvider
* Returns page instance specified by the constructor.
*
* @return page instance
- * @throws StalePageException
- * if render count has been specified in constructor and the render count of page
- * does not match the value
* @throws PageExpiredException if the specified page
* could not have been found and the constructor used did not provide enough information
* to create new page instance
*/
- IRequestablePage getPageInstance();
+ IRequestablePage getPageInstance() throws PageExpiredException;
/**
* Returns {@link PageParameters} of the page.
*
* @return page parameters
+ * @throws PageExpiredException if the specified page
+ * could not have been found and the constructor used did not provide enough information
+ * to create new page instance
*/
- PageParameters getPageParameters();
+ PageParameters getPageParameters() throws PageExpiredException;
/**
* @return negates {@link PageProvider#hasPageInstance()}
@@ -67,10 +66,12 @@ public interface IPageProvider
/**
* Returns class of the page.
- *
+ * @throws PageExpiredException if the specified page
+ * could not have been found and the constructor used did not provide enough information
+ * to create new page instance
* @return page class
*/
- Class<? extends IRequestablePage> getPageClass();
+ Class<? extends IRequestablePage> getPageClass() throws PageExpiredException;
/**
* Returns the page id.
http://git-wip-us.apache.org/repos/asf/wicket/blob/3183aeb2/wicket-core/src/main/java/org/apache/wicket/core/request/handler/ListenerRequestHandler.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/core/request/handler/ListenerRequestHandler.java b/wicket-core/src/main/java/org/apache/wicket/core/request/handler/ListenerRequestHandler.java
index d36cce9..0a4170a 100644
--- a/wicket-core/src/main/java/org/apache/wicket/core/request/handler/ListenerRequestHandler.java
+++ b/wicket-core/src/main/java/org/apache/wicket/core/request/handler/ListenerRequestHandler.java
@@ -23,7 +23,6 @@ import org.apache.wicket.WicketRuntimeException;
import org.apache.wicket.behavior.Behavior;
import org.apache.wicket.core.request.handler.RenderPageRequestHandler.RedirectPolicy;
import org.apache.wicket.core.request.handler.logger.ListenerLogData;
-import org.apache.wicket.protocol.http.PageExpiredException;
import org.apache.wicket.request.ILoggableRequestHandler;
import org.apache.wicket.request.IRequestCycle;
import org.apache.wicket.request.component.IRequestableComponent;
@@ -95,13 +94,7 @@ public class ListenerRequestHandler
@Override
public IRequestablePage getPage()
{
- IRequestablePage page = pageComponentProvider.getPageInstance();
- if (page == null && pageComponentProvider.wasExpired())
- {
- throw new PageExpiredException(
- "Page with id '" + pageComponentProvider.getPageId() + "' has expired.");
- }
- return page;
+ return pageComponentProvider.getPageInstance();
}
@Override
http://git-wip-us.apache.org/repos/asf/wicket/blob/3183aeb2/wicket-core/src/main/java/org/apache/wicket/core/request/handler/PageProvider.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/core/request/handler/PageProvider.java b/wicket-core/src/main/java/org/apache/wicket/core/request/handler/PageProvider.java
index 4079eb7..7bd473e 100644
--- a/wicket-core/src/main/java/org/apache/wicket/core/request/handler/PageProvider.java
+++ b/wicket-core/src/main/java/org/apache/wicket/core/request/handler/PageProvider.java
@@ -20,6 +20,7 @@ import org.apache.wicket.Application;
import org.apache.wicket.core.request.mapper.IPageSource;
import org.apache.wicket.core.request.mapper.StalePageException;
import org.apache.wicket.page.IPageManager;
+import org.apache.wicket.protocol.http.PageExpiredException;
import org.apache.wicket.request.IRequestHandler;
import org.apache.wicket.request.IRequestMapper;
import org.apache.wicket.request.component.IRequestablePage;
@@ -165,13 +166,20 @@ public class PageProvider implements IPageProvider, IClusterable
}
@Override
- public IRequestablePage getPageInstance()
+ public IRequestablePage getPageInstance() throws PageExpiredException
{
- return getProvision().getPage();
+ IRequestablePage page = getProvision().getPage();
+
+ if (page == null && wasExpired())
+ {
+ throw new PageExpiredException("Page with id '" + pageId + "' has expired.");
+ }
+
+ return page;
}
@Override
- public PageParameters getPageParameters()
+ public PageParameters getPageParameters() throws PageExpiredException
{
if (pageParameters != null)
{
@@ -238,18 +246,16 @@ public class PageProvider implements IPageProvider, IClusterable
}
@Override
- public Class<? extends IRequestablePage> getPageClass()
+ public Class<? extends IRequestablePage> getPageClass() throws PageExpiredException
{
if (pageClass != null)
{
return pageClass;
}
- else if (hasPageInstance())
+ else
{
return getPageInstance().getClass();
}
-
- return null;
}
protected IPageSource getPageSource()