You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by mg...@apache.org on 2012/03/07 13:34:40 UTC

git commit: Pass the application instance at creation time.

Updated Branches:
  refs/heads/master e56b4ec4f -> c58fbc1bc


Pass the application instance at creation time.

The relation between IMapperContext and Application is 1:1 and the Application is known at creation time.


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

Branch: refs/heads/master
Commit: c58fbc1bc6dd7bfceb290d4793cd493c17468eed
Parents: e56b4ec
Author: Martin Tzvetanov Grigorov <mg...@apache.org>
Authored: Wed Mar 7 11:23:13 2012 +0200
Committer: Martin Tzvetanov Grigorov <mg...@apache.org>
Committed: Wed Mar 7 11:23:13 2012 +0200

----------------------------------------------------------------------
 .../main/java/org/apache/wicket/Application.java   |    2 +-
 .../org/apache/wicket/DefaultMapperContext.java    |   30 +++++++++++++--
 2 files changed, 27 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/c58fbc1b/wicket-core/src/main/java/org/apache/wicket/Application.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/Application.java b/wicket-core/src/main/java/org/apache/wicket/Application.java
index 8fb224a..47e7f22 100644
--- a/wicket-core/src/main/java/org/apache/wicket/Application.java
+++ b/wicket-core/src/main/java/org/apache/wicket/Application.java
@@ -1562,7 +1562,7 @@ public abstract class Application implements UnboundListener, IEventSink
 	 */
 	protected IMapperContext newMapperContext()
 	{
-		return new DefaultMapperContext();
+		return new DefaultMapperContext(this);
 	}
 
 	/**

http://git-wip-us.apache.org/repos/asf/wicket/blob/c58fbc1b/wicket-core/src/main/java/org/apache/wicket/DefaultMapperContext.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/DefaultMapperContext.java b/wicket-core/src/main/java/org/apache/wicket/DefaultMapperContext.java
index 5fcec70..fa07a25 100644
--- a/wicket-core/src/main/java/org/apache/wicket/DefaultMapperContext.java
+++ b/wicket-core/src/main/java/org/apache/wicket/DefaultMapperContext.java
@@ -28,6 +28,28 @@ import org.apache.wicket.request.resource.ResourceReferenceRegistry;
  */
 public class DefaultMapperContext implements IMapperContext
 {
+	private final Application application;
+
+	/**
+	 * Constructor.
+	 *
+	 * Uses the threal local Application
+	 */
+	public DefaultMapperContext()
+	{
+		this(Application.get());
+	}
+
+	/**
+	 * Constructor.
+	 *
+	 * @param application
+	 *      the application instance to use
+	 */
+	public DefaultMapperContext(final Application application)
+	{
+		this.application = application;
+	}
 	/**
 	 * @see org.apache.wicket.request.mapper.IMapperContext#getBookmarkableIdentifier()
 	 */
@@ -74,7 +96,7 @@ public class DefaultMapperContext implements IMapperContext
 	@Override
 	public ResourceReferenceRegistry getResourceReferenceRegistry()
 	{
-		return Application.get().getResourceReferenceRegistry();
+		return application.getResourceReferenceRegistry();
 	}
 
 	/**
@@ -108,11 +130,11 @@ public class DefaultMapperContext implements IMapperContext
 	{
 		if (pageParameters == null)
 		{
-			return Application.get().getPageFactory().newPage(pageClass);
+			return application.getPageFactory().newPage(pageClass);
 		}
 		else
 		{
-			return Application.get().getPageFactory().newPage(pageClass, pageParameters);
+			return application.getPageFactory().newPage(pageClass, pageParameters);
 		}
 	}
 
@@ -139,6 +161,6 @@ public class DefaultMapperContext implements IMapperContext
 	@Override
 	public Class<? extends IRequestablePage> getHomePageClass()
 	{
-		return Application.get().getHomePage();
+		return application.getHomePage();
 	}
 }
\ No newline at end of file