Hi Sven,

On Mon, Jan 28, 2019 at 1:48 PM <[email protected]> wrote:

> This is an automated email from the ASF dual-hosted git repository.
>
> svenmeier pushed a commit to branch WICKET-6563
> in repository https://gitbox.apache.org/repos/asf/wicket.git
>
>
> The following commit(s) were added to refs/heads/WICKET-6563 by this push:
>      new e47c3be  WICKET-6563 correct MockPageStore
> e47c3be is described below
>
> commit e47c3be5883f3ade700c1a69bf2f9600530a9f6d
> Author: Sven Meier <[email protected]>
> AuthorDate: Mon Jan 28 12:35:35 2019 +0100
>
>     WICKET-6563 correct MockPageStore
>
>     and allow extending AbstractPersistentPageStore without implementing
> IPersistentPageStore
> ---
>  .../src/main/java/org/apache/wicket/mock/MockPageStore.java   | 11
> +++++++++--
>  .../apache/wicket/pageStore/AbstractPersistentPageStore.java  |  3 +--
>  .../main/java/org/apache/wicket/pageStore/DiskPageStore.java  |  3 +--
>  .../main/java/org/apache/wicket/pageStore/FilePageStore.java  |  2 +-
>  .../java/org/apache/wicket/pageStore/InMemoryPageStore.java   |  2 +-
>  5 files changed, 13 insertions(+), 8 deletions(-)
>
> diff --git
> a/wicket-core/src/main/java/org/apache/wicket/mock/MockPageStore.java
> b/wicket-core/src/main/java/org/apache/wicket/mock/MockPageStore.java
> index 449c3e7..ec9c52c 100644
> --- a/wicket-core/src/main/java/org/apache/wicket/mock/MockPageStore.java
> +++ b/wicket-core/src/main/java/org/apache/wicket/mock/MockPageStore.java
> @@ -49,7 +49,7 @@ public class MockPageStore implements IPageStore
>         public IManageablePage getPage(IPageContext context, int id)
>         {
>                 for (IManageablePage page : pages) {
> -                       if (page .getPageId() == id) {
> +                       if (page.getPageId() == id) {
>                                 return page;
>                         }
>                 }
> @@ -59,7 +59,12 @@ public class MockPageStore implements IPageStore
>         @Override
>         public void removePage(IPageContext context, final IManageablePage
> page)
>         {
> -               pages.remove(page);
> +               for (IManageablePage candidate : pages) {
> +                       if (candidate.getPageId() == page.getPageId()) {
> +                               pages.remove(candidate);
> +                               return;
> +                       }
> +               }
>         }
>
>         @Override
> @@ -77,6 +82,8 @@ public class MockPageStore implements IPageStore
>         @Override
>         public void addPage(IPageContext context, IManageablePage page)
>         {
> +               removePage(context, page);
> +
>                 pages.addLast(page);
>         }
>  }
> \ No newline at end of file
> diff --git
> a/wicket-core/src/main/java/org/apache/wicket/pageStore/AbstractPersistentPageStore.java
> b/wicket-core/src/main/java/org/apache/wicket/pageStore/AbstractPersistentPageStore.java
> index 918e8c1..de35467 100644
> ---
> a/wicket-core/src/main/java/org/apache/wicket/pageStore/AbstractPersistentPageStore.java
> +++
> b/wicket-core/src/main/java/org/apache/wicket/pageStore/AbstractPersistentPageStore.java
> @@ -38,7 +38,7 @@ import org.slf4j.LoggerFactory;
>   *
>   * @see #getSessionIdentifier(IPageContext, boolean)
>   */
> -public abstract class AbstractPersistentPageStore implements
> IPersistentPageStore
> +public abstract class AbstractPersistentPageStore implements IPageStore
>

Why this change has been made ?
Now the name "AbstractPersistentPageStore" is probably not good, because it
is not "persistent" anymore.


>  {
>         private static final String KEY = "wicket:persistentPageStore";
>
> @@ -219,7 +219,6 @@ public abstract class AbstractPersistentPageStore
> implements IPersistentPageStor
>
>         }
>
> -       @Override
>         public String getSessionIdentifier(IPageContext context)
>         {
>                 return getSessionIdentifier(context, true);
> diff --git
> a/wicket-core/src/main/java/org/apache/wicket/pageStore/DiskPageStore.java
> b/wicket-core/src/main/java/org/apache/wicket/pageStore/DiskPageStore.java
> index 3fdaa55..f291dd2 100644
> ---
> a/wicket-core/src/main/java/org/apache/wicket/pageStore/DiskPageStore.java
> +++
> b/wicket-core/src/main/java/org/apache/wicket/pageStore/DiskPageStore.java
> @@ -47,7 +47,6 @@ import org.apache.wicket.util.file.Files;
>  import org.apache.wicket.util.io.IOUtils;
>  import org.apache.wicket.util.lang.Args;
>  import org.apache.wicket.util.lang.Bytes;
> -import org.apache.wicket.util.lang.Classes;
>  import org.slf4j.Logger;
>  import org.slf4j.LoggerFactory;
>
> @@ -64,7 +63,7 @@ import org.slf4j.LoggerFactory;
>   * This leads to pages with identical id superfluously kept in the file,
> while older pages are prematurely expelled.
>   * Any following request to these older pages will then fail with {@link
> PageExpiredException}.
>   */
> -public class DiskPageStore extends AbstractPersistentPageStore
> +public class DiskPageStore extends AbstractPersistentPageStore implements
> IPersistentPageStore
>  {
>         private static final Logger log =
> LoggerFactory.getLogger(DiskPageStore.class);
>
> diff --git
> a/wicket-core/src/main/java/org/apache/wicket/pageStore/FilePageStore.java
> b/wicket-core/src/main/java/org/apache/wicket/pageStore/FilePageStore.java
> index 8ebd85c..5c5390a 100644
> ---
> a/wicket-core/src/main/java/org/apache/wicket/pageStore/FilePageStore.java
> +++
> b/wicket-core/src/main/java/org/apache/wicket/pageStore/FilePageStore.java
> @@ -52,7 +52,7 @@ import org.slf4j.LoggerFactory;
>   * in its own file. This improves on a {@link DiskPageStore disadvantage
> of DiskPageStore} surfacing
>   * with alternating Ajax requests from different browser tabs.
>   */
> -public class FilePageStore extends AbstractPersistentPageStore
> +public class FilePageStore extends AbstractPersistentPageStore implements
> IPersistentPageStore
>  {
>         private static final String ATTRIBUTE_PAGE_TYPE =
> "user.wicket_page_type";
>
> diff --git
> a/wicket-core/src/main/java/org/apache/wicket/pageStore/InMemoryPageStore.java
> b/wicket-core/src/main/java/org/apache/wicket/pageStore/InMemoryPageStore.java
> index 9ea6476..1de3214 100644
> ---
> a/wicket-core/src/main/java/org/apache/wicket/pageStore/InMemoryPageStore.java
> +++
> b/wicket-core/src/main/java/org/apache/wicket/pageStore/InMemoryPageStore.java
> @@ -38,7 +38,7 @@ import org.apache.wicket.util.lang.Classes;
>  /**
>   * A storage of pages in memory.
>   */
> -public class InMemoryPageStore extends AbstractPersistentPageStore
> +public class InMemoryPageStore extends AbstractPersistentPageStore
> implements IPersistentPageStore
>  {
>
>         private final Map<String, MemoryData> datas = new
> ConcurrentHashMap<>();
>
>

Reply via email to