WICKET-6098 Add logging to HttpSessionDataStore

Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/5d083bad
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/5d083bad
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/5d083bad

Branch: refs/heads/lambdas
Commit: 5d083bad37a20b614728b297308ef8b1ddeb15c0
Parents: 642fa43
Author: Martin Tzvetanov Grigorov <[email protected]>
Authored: Sat Feb 20 13:20:31 2016 +0100
Committer: Martin Tzvetanov Grigorov <[email protected]>
Committed: Sat Feb 20 13:22:35 2016 +0100

----------------------------------------------------------------------
 .../pageStore/memory/HttpSessionDataStore.java  | 28 +++++++++++++++++---
 .../wicket/pageStore/memory/PageTable.java      |  1 -
 .../pageStore/memory/PageTableCleaner.java      |  5 ++++
 3 files changed, 29 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/5d083bad/wicket-core/src/main/java/org/apache/wicket/pageStore/memory/HttpSessionDataStore.java
----------------------------------------------------------------------
diff --git 
a/wicket-core/src/main/java/org/apache/wicket/pageStore/memory/HttpSessionDataStore.java
 
b/wicket-core/src/main/java/org/apache/wicket/pageStore/memory/HttpSessionDataStore.java
index 39907d3..236b328 100644
--- 
a/wicket-core/src/main/java/org/apache/wicket/pageStore/memory/HttpSessionDataStore.java
+++ 
b/wicket-core/src/main/java/org/apache/wicket/pageStore/memory/HttpSessionDataStore.java
@@ -36,7 +36,7 @@ import org.slf4j.LoggerFactory;
  * MyApp#init()
  * {
  * 
- *     setPageManagerProvider(new DefaultPageManagerProvider() 
+ *     setPageManagerProvider(new DefaultPageManagerProvider(this)
  *     {
  *             protected IDataStore newDataStore() 
  *             { 
@@ -49,7 +49,7 @@ import org.slf4j.LoggerFactory;
  */
 public class HttpSessionDataStore implements IDataStore
 {
-       private static final Logger log = 
LoggerFactory.getLogger(HttpSessionDataStore.class);
+       private static final Logger LOG = 
LoggerFactory.getLogger(HttpSessionDataStore.class);
 
        /** the session attribute key. auto-prefixed with 
application.getSessionAttributePrefix() */
        private static final String PAGE_TABLE_KEY = "page:store:memory";
@@ -85,6 +85,15 @@ public class HttpSessionDataStore implements IDataStore
                {
                        pageAsBytes = pageTable.getPage(pageId);
                }
+
+               if (LOG.isDebugEnabled())
+               {
+                       int bytesLength = pageAsBytes != null ? 
pageAsBytes.length : -1;
+                       LOG.debug("Loaded '{}' bytes for page with id '{}' in 
session '{}'",
+                                       new Object[]{bytesLength, pageId, 
sessionId});
+               }
+
+
                return pageAsBytes;
        }
 
@@ -94,7 +103,12 @@ public class HttpSessionDataStore implements IDataStore
                PageTable pageTable = getPageTable(false);
                if (pageTable != null)
                {
-                       pageTable.removePage(pageId);
+                       byte[] bytes = pageTable.removePage(pageId);
+
+                       if (LOG.isDebugEnabled() && bytes != null)
+                       {
+                               LOG.debug("Removed page '{}' in session '{}'", 
pageId, sessionId);
+                       }
                }
        }
 
@@ -105,6 +119,7 @@ public class HttpSessionDataStore implements IDataStore
                if (pageTable != null)
                {
                        pageTable.clear();
+                       LOG.debug("Removed all pages in session '{}'", 
sessionId);
                }
        }
 
@@ -115,11 +130,16 @@ public class HttpSessionDataStore implements IDataStore
                if (pageTable != null)
                {
                        pageTable.storePage(pageId, pageAsBytes);
+                       if (LOG.isDebugEnabled())
+                       {
+                               LOG.debug("Stored '{}' bytes for page '{}' in 
session '{}'",
+                                               new 
Object[]{pageAsBytes.length, pageId, sessionId});
+                       }
                        evictionStrategy.evict(pageTable);
                }
                else
                {
-                       log.error("Cannot store the data for page with id '{}' 
in session with id '{}'",
+                       LOG.error("Cannot store the data for page with id '{}' 
in session with id '{}'",
                                pageId, sessionId);
                }
        }

http://git-wip-us.apache.org/repos/asf/wicket/blob/5d083bad/wicket-core/src/main/java/org/apache/wicket/pageStore/memory/PageTable.java
----------------------------------------------------------------------
diff --git 
a/wicket-core/src/main/java/org/apache/wicket/pageStore/memory/PageTable.java 
b/wicket-core/src/main/java/org/apache/wicket/pageStore/memory/PageTable.java
index 0a0c9ef..dfad4af 100644
--- 
a/wicket-core/src/main/java/org/apache/wicket/pageStore/memory/PageTable.java
+++ 
b/wicket-core/src/main/java/org/apache/wicket/pageStore/memory/PageTable.java
@@ -34,7 +34,6 @@ public class PageTable implements IClusterable
 {
        private static final long serialVersionUID = 1L;
 
-
        /**
         * Holds the index of last/least recently used page ids. The most 
recently used page id is in
         * the tail, the least recently used is in the head.

http://git-wip-us.apache.org/repos/asf/wicket/blob/5d083bad/wicket-core/src/main/java/org/apache/wicket/pageStore/memory/PageTableCleaner.java
----------------------------------------------------------------------
diff --git 
a/wicket-core/src/main/java/org/apache/wicket/pageStore/memory/PageTableCleaner.java
 
b/wicket-core/src/main/java/org/apache/wicket/pageStore/memory/PageTableCleaner.java
index 65d9247..2c9a9cb 100644
--- 
a/wicket-core/src/main/java/org/apache/wicket/pageStore/memory/PageTableCleaner.java
+++ 
b/wicket-core/src/main/java/org/apache/wicket/pageStore/memory/PageTableCleaner.java
@@ -16,11 +16,15 @@
  */
 package org.apache.wicket.pageStore.memory;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 /**
  * Helper class that knows how to remove the nth oldest pages from {@link 
PageTable}
  */
 public class PageTableCleaner
 {
+       private static final Logger LOG = 
LoggerFactory.getLogger(PageTableCleaner.class);
 
        /**
         * Removes {@code pagesNumber} of pages from the {@link PageTable 
pageTable}
@@ -36,6 +40,7 @@ public class PageTableCleaner
                {
                        Integer pageIdOfTheOldest = pageTable.getOldest();
                        pageTable.removePage(pageIdOfTheOldest);
+                       LOG.debug("Evicted page with id '{}' from the 
HttpSessionDataStore");
                }
        }
 }

Reply via email to