You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by kn...@apache.org on 2009/04/06 12:29:54 UTC

svn commit: r762271 - in /wicket/sandbox/knopp/experimental/wicket-ng/src/main/java/org/apache/wicket/page: AbstractPageManager.java PageManager.java PageManagerContext.java

Author: knopp
Date: Mon Apr  6 10:29:54 2009
New Revision: 762271

URL: http://svn.apache.org/viewvc?rev=762271&view=rev
Log: (empty)

Added:
    wicket/sandbox/knopp/experimental/wicket-ng/src/main/java/org/apache/wicket/page/PageManagerContext.java   (with props)
Modified:
    wicket/sandbox/knopp/experimental/wicket-ng/src/main/java/org/apache/wicket/page/AbstractPageManager.java
    wicket/sandbox/knopp/experimental/wicket-ng/src/main/java/org/apache/wicket/page/PageManager.java

Modified: wicket/sandbox/knopp/experimental/wicket-ng/src/main/java/org/apache/wicket/page/AbstractPageManager.java
URL: http://svn.apache.org/viewvc/wicket/sandbox/knopp/experimental/wicket-ng/src/main/java/org/apache/wicket/page/AbstractPageManager.java?rev=762271&r1=762270&r2=762271&view=diff
==============================================================================
--- wicket/sandbox/knopp/experimental/wicket-ng/src/main/java/org/apache/wicket/page/AbstractPageManager.java (original)
+++ wicket/sandbox/knopp/experimental/wicket-ng/src/main/java/org/apache/wicket/page/AbstractPageManager.java Mon Apr  6 10:29:54 2009
@@ -19,10 +19,21 @@
  */
 public abstract class AbstractPageManager implements PageManager
 {
-
+	private PageManagerContext context;
+	
 	public AbstractPageManager()
 	{
 	}
+	
+	public void setContext(PageManagerContext context)
+	{
+		this.context = context;
+	}
+	
+	public PageManagerContext getContext()
+	{
+		return context;
+	};
 
 	/**
 	 * Request scoped helper class for {@link PageManager}.
@@ -31,9 +42,9 @@
 	 */
 	protected abstract class RequestAdapter
 	{
-		private final Context context;
+		private final PageManagerContext context;
 
-		public RequestAdapter(Context context)
+		public RequestAdapter(PageManagerContext context)
 		{
 			this.context = context;
 		}
@@ -154,51 +165,51 @@
 		List<IPage> pages = new ArrayList<IPage>();
 	};
 
-	protected abstract RequestAdapter newRequestAdapter(Context context);
+	protected abstract RequestAdapter newRequestAdapter(PageManagerContext context);
 
-	protected RequestAdapter getRequestAdapter(Context context)
+	protected RequestAdapter getRequestAdapter()
 	{
-		RequestAdapter adapter = (RequestAdapter) context.getRequestData();
+		RequestAdapter adapter = (RequestAdapter) getContext().getRequestData();
 		if (adapter == null)
 		{
-			adapter = newRequestAdapter(context);
-			context.setRequestData(adapter);
+			adapter = newRequestAdapter(getContext());
+			getContext().setRequestData(adapter);
 		}
 		return adapter;
 	}
 
-	public void commitRequest(Context context)
+	public void commitRequest()
 	{
-		RequestAdapter adapter = getRequestAdapter(context);
+		RequestAdapter adapter = getRequestAdapter();
 		adapter.commitRequest();
 	}
 
-	public IPage getPage(Context context, int id)
+	public IPage getPage(int id)
 	{
-		RequestAdapter adapter = getRequestAdapter(context);
+		RequestAdapter adapter = getRequestAdapter();
 		IPage page = adapter.getPage(id);
 		if (page != null)
 		{
-			touchPage(context, page);
+			touchPage(page);
 		}
 		return page;
 	}
 
-	public void newSessionCreated(Context context)
+	public void newSessionCreated()
 	{
-		RequestAdapter adapter = getRequestAdapter(context);
+		RequestAdapter adapter = getRequestAdapter();
 		adapter.newSessionCreated();
 	}
 
 	public abstract boolean supportsVersioning();
 
-	public void touchPage(Context context, IPage page)
+	public void touchPage(IPage page)
 	{
 		if (!page.isPageStateless())
 		{
-			context.bind();
+			getContext().bind();
 		}
-		RequestAdapter adapter = getRequestAdapter(context);
+		RequestAdapter adapter = getRequestAdapter();
 		adapter.touch(page);
 	}
 

Modified: wicket/sandbox/knopp/experimental/wicket-ng/src/main/java/org/apache/wicket/page/PageManager.java
URL: http://svn.apache.org/viewvc/wicket/sandbox/knopp/experimental/wicket-ng/src/main/java/org/apache/wicket/page/PageManager.java?rev=762271&r1=762270&r2=762271&view=diff
==============================================================================
--- wicket/sandbox/knopp/experimental/wicket-ng/src/main/java/org/apache/wicket/page/PageManager.java (original)
+++ wicket/sandbox/knopp/experimental/wicket-ng/src/main/java/org/apache/wicket/page/PageManager.java Mon Apr  6 10:29:54 2009
@@ -16,7 +16,6 @@
  */
 package org.apache.wicket.page;
 
-import java.io.Serializable;
 
 import org.apache.wicket.IPage;
 
@@ -28,21 +27,26 @@
 public interface PageManager
 {
 	/**
-	 * Retrieve page instance with given id.
+	 * This method is guaranteed to be called before any other methods are invoked.
 	 * 
 	 * @param context
+	 */
+	public void setContext(PageManagerContext context);
+	
+	/**
+	 * Retrieve page instance with given id.
+	 * 
 	 * @param id
 	 * @return page instance or <code>null</code>
 	 */
-	public IPage getPage(Context context, int id);
+	public IPage getPage(int id);
 
 	/**
 	 * Marks page as changed.
 	 * 
-	 * @param context
 	 * @param page
 	 */
-	public void touchPage(Context context, IPage page);
+	public void touchPage(IPage page);
 
 	/**
 	 * Returns whether this manager supports versioning. Managers that support versioning must
@@ -55,18 +59,16 @@
 	/**
 	 * Commits the changes to external storage if the manager uses it.
 	 * 
-	 * Should also detach all pages that were retrieved during this request.
-	 * 
-	 * @param context
+	 * Should also detach all pages that were touched during this request.
 	 */
-	public void commitRequest(Context context);
+	public void commitRequest();
 
 	/**
 	 * Invoked when new session has been created.
 	 * 
 	 * @param context
 	 */
-	public void newSessionCreated(Context context);
+	public void newSessionCreated();
 
 	/**
 	 * Invoked when the session has been expired.
@@ -78,27 +80,5 @@
 	/**
 	 * Destroy the page manager.
 	 */
-	public void destroy();
-	
-	/**
-	 * Context object for {@link PageManager}. This decouples the {@link PageManager} from request
-	 * cycle and session.
-	 * 
-	 * @author Matej Knopp
-	 * 
-	 */
-	public interface Context
-	{
-		public void setRequestData(Object data);
-
-		public Object getRequestData();
-
-		public void setSessionAttribute(String key, Serializable value);
-
-		public Serializable getSessionAttribute(String key);
-
-		public void bind();
-		
-		public String getSessionId();
-	};
+	public void destroy();;
 }

Added: wicket/sandbox/knopp/experimental/wicket-ng/src/main/java/org/apache/wicket/page/PageManagerContext.java
URL: http://svn.apache.org/viewvc/wicket/sandbox/knopp/experimental/wicket-ng/src/main/java/org/apache/wicket/page/PageManagerContext.java?rev=762271&view=auto
==============================================================================
--- wicket/sandbox/knopp/experimental/wicket-ng/src/main/java/org/apache/wicket/page/PageManagerContext.java (added)
+++ wicket/sandbox/knopp/experimental/wicket-ng/src/main/java/org/apache/wicket/page/PageManagerContext.java Mon Apr  6 10:29:54 2009
@@ -0,0 +1,25 @@
+package org.apache.wicket.page;
+
+import java.io.Serializable;
+
+/**
+ * Context object for {@link PageManager}. This decouples the {@link PageManager} from request
+ * cycle and session.
+ * 
+ * @author Matej Knopp
+ * 
+ */
+public interface PageManagerContext
+{
+	public void setRequestData(Object data);
+
+	public Object getRequestData();
+
+	public void setSessionAttribute(String key, Serializable value);
+
+	public Serializable getSessionAttribute(String key);
+
+	public void bind();
+	
+	public String getSessionId();
+}
\ No newline at end of file

Propchange: wicket/sandbox/knopp/experimental/wicket-ng/src/main/java/org/apache/wicket/page/PageManagerContext.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain