You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by pe...@apache.org on 2011/01/26 23:56:18 UTC
svn commit: r1063913 - in /wicket/trunk:
wicket-core/src/main/java/org/apache/wicket/Application.java
wicket-spring/src/main/java/org/apache/wicket/spring/injection/annot/SpringComponentInjector.java
Author: pete
Date: Wed Jan 26 22:56:18 2011
New Revision: 1063913
URL: http://svn.apache.org/viewvc?rev=1063913&view=rev
Log:
WICKET-3393 remove ApplicationContextHolder from SpringComponentInjector
Modified:
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/Application.java
wicket/trunk/wicket-spring/src/main/java/org/apache/wicket/spring/injection/annot/SpringComponentInjector.java
Modified: wicket/trunk/wicket-core/src/main/java/org/apache/wicket/Application.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/main/java/org/apache/wicket/Application.java?rev=1063913&r1=1063912&r2=1063913&view=diff
==============================================================================
--- wicket/trunk/wicket-core/src/main/java/org/apache/wicket/Application.java (original)
+++ wicket/trunk/wicket-core/src/main/java/org/apache/wicket/Application.java Wed Jan 26 22:56:18 2011
@@ -559,7 +559,6 @@ public abstract class Application implem
* @throws IllegalArgumentException
* @see MetaDataKey
*/
- // TODO: Replace the Serializable type with Object for next wicket version
public final synchronized <T> void setMetaData(final MetaDataKey<T> key, final Object object)
{
metaData = key.set(metaData, object);
Modified: wicket/trunk/wicket-spring/src/main/java/org/apache/wicket/spring/injection/annot/SpringComponentInjector.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-spring/src/main/java/org/apache/wicket/spring/injection/annot/SpringComponentInjector.java?rev=1063913&r1=1063912&r2=1063913&view=diff
==============================================================================
--- wicket/trunk/wicket-spring/src/main/java/org/apache/wicket/spring/injection/annot/SpringComponentInjector.java (original)
+++ wicket/trunk/wicket-spring/src/main/java/org/apache/wicket/spring/injection/annot/SpringComponentInjector.java Wed Jan 26 22:56:18 2011
@@ -20,7 +20,6 @@ import javax.servlet.ServletContext;
import org.apache.wicket.Application;
import org.apache.wicket.Component;
-import org.apache.wicket.IClusterable;
import org.apache.wicket.MetaDataKey;
import org.apache.wicket.Session;
import org.apache.wicket.application.IComponentInstantiationListener;
@@ -50,11 +49,10 @@ public class SpringComponentInjector ext
private final IFieldValueFactory fieldValueFactory;
/**
- * Metadata key used to store application context holder in application's metadata
+ * Metadata key used to store application context in application's metadata
*/
- private static MetaDataKey<ApplicationContextHolder> CONTEXT_KEY = new MetaDataKey<ApplicationContextHolder>()
+ private static MetaDataKey<ApplicationContext> CONTEXT_KEY = new MetaDataKey<ApplicationContext>()
{
-
private static final long serialVersionUID = 1L;
};
@@ -114,7 +112,7 @@ public class SpringComponentInjector ext
}
// store context in application's metadata ...
- webapp.setMetaData(CONTEXT_KEY, new ApplicationContextHolder(ctx));
+ webapp.setMetaData(CONTEXT_KEY, ctx);
fieldValueFactory = new AnnotProxyFieldValueFactory(new ContextLocator(), wrapInProxies);
bind(webapp);
}
@@ -132,40 +130,6 @@ public class SpringComponentInjector ext
inject(component);
}
- /**
- * This is a holder for the application context. The reason we need a holder is that metadata
- * only supports storing serializable objects but application context is not. The holder acts as
- * a serializable wrapper for the context. Notice that although holder implements IClusterable
- * it really is not because it has a reference to non serializable context - but this is ok
- * because metadata objects in application are never serialized.
- *
- * @author ivaynberg
- *
- */
- private static class ApplicationContextHolder implements IClusterable
- {
- private static final long serialVersionUID = 1L;
-
- private final ApplicationContext context;
-
- /**
- * Constructor
- *
- * @param context
- */
- public ApplicationContextHolder(final ApplicationContext context)
- {
- this.context = context;
- }
-
- /**
- * @return the context
- */
- public ApplicationContext getContext()
- {
- return context;
- }
- }
/**
* A context locator that locates the context in application's metadata. This locator also keeps
@@ -184,7 +148,7 @@ public class SpringComponentInjector ext
{
if (context == null)
{
- context = (Application.get().getMetaData(CONTEXT_KEY)).getContext();
+ context = Application.get().getMetaData(CONTEXT_KEY);
}
return context;
}