You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tiles.apache.org by ap...@apache.org on 2009/07/24 17:42:01 UTC
svn commit: r797540 - in /tiles/framework/trunk:
tiles-api/src/main/java/org/apache/tiles/
tiles-core/src/main/java/org/apache/tiles/awareness/
tiles-core/src/main/java/org/apache/tiles/context/
tiles-core/src/main/java/org/apache/tiles/context/enhance...
Author: apetrelli
Date: Fri Jul 24 15:42:00 2009
New Revision: 797540
URL: http://svn.apache.org/viewvc?rev=797540&view=rev
Log:
TILES-430
Deprecated Initializable interface, removed in new developments, suppressing deprecation in old ones.
Deprecated TilesContainerFactory.
Added new abstract objects to recover code that will be still useful for pure-Java configuration.
Added:
tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/startup/AbstractTilesInitializer.java (with props)
tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/startup/DefaultTilesInitializer.java (with props)
tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/AbstractTilesInitializerServlet.java (with props)
tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/AbstractTilesListener.java (with props)
tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/simple/
tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/simple/SimpleTilesInitializerServlet.java (with props)
tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/simple/SimpleTilesListener.java (with props)
tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/simple/package.html (with props)
Modified:
tiles/framework/trunk/tiles-api/src/main/java/org/apache/tiles/Initializable.java
tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/awareness/AbstractTilesApplicationContextFactoryAware.java
tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/context/AbstractTilesApplicationContextFactory.java
tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/context/ChainedTilesApplicationContextFactory.java
tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/context/TilesRequestContextFactory.java
tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/context/enhanced/EnhancedTilesApplicationContextFactory.java
tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/definition/LocaleDefinitionsFactory.java
tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/definition/dao/BaseLocaleUrlDefinitionDAO.java
tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/factory/AbstractTilesContainerFactory.java
tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/factory/KeyedDefinitionsFactoryTilesContainerFactory.java
tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/factory/TilesContainerFactory.java
tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/renderer/impl/BasicRendererFactory.java
tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/startup/BasicTilesInitializer.java
tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/startup/TilesInitializer.java
tiles/framework/trunk/tiles-freemarker/src/main/java/org/apache/tiles/freemarker/renderer/FreeMarkerAttributeRenderer.java
tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/PortletTilesApplicationContextFactory.java
tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/wildcard/WildcardPortletTilesApplicationContextFactory.java
tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/servlet/context/ServletTilesApplicationContextFactory.java
tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/servlet/context/wildcard/WildcardServletTilesApplicationContextFactory.java
tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/TilesListener.java
tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/TilesServlet.java
tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/listener/TestAlternateTilesListener.java
tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/listener/TestDbTilesListener.java
tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/listener/TestTilesListener.java
tiles/framework/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/renderer/VelocityAttributeRenderer.java
Modified: tiles/framework/trunk/tiles-api/src/main/java/org/apache/tiles/Initializable.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-api/src/main/java/org/apache/tiles/Initializable.java?rev=797540&r1=797539&r2=797540&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-api/src/main/java/org/apache/tiles/Initializable.java (original)
+++ tiles/framework/trunk/tiles-api/src/main/java/org/apache/tiles/Initializable.java Fri Jul 24 15:42:00 2009
@@ -27,6 +27,8 @@
*
* @version $Rev$ $Date$
* @since 2.1.0
+ * @deprecated Parameter-based initialization feature is deprecated and no
+ * longer supported.
*/
public interface Initializable {
@@ -34,6 +36,7 @@
* Initializes the object.
*
* @param params The map of parameters.
+ * @deprecated Do not use.
*/
void init(Map<String, String> params);
}
Modified: tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/awareness/AbstractTilesApplicationContextFactoryAware.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/awareness/AbstractTilesApplicationContextFactoryAware.java?rev=797540&r1=797539&r2=797540&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/awareness/AbstractTilesApplicationContextFactoryAware.java (original)
+++ tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/awareness/AbstractTilesApplicationContextFactoryAware.java Fri Jul 24 15:42:00 2009
@@ -28,6 +28,8 @@
*
* @version $Rev$ $Date$
* @since 2.1.1
+ * @deprecated Since {@link AbstractTilesApplicationContextFactory} is
+ * deprecated, this dependency injection interface is deprecated.
*/
public interface AbstractTilesApplicationContextFactoryAware {
Modified: tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/context/AbstractTilesApplicationContextFactory.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/context/AbstractTilesApplicationContextFactory.java?rev=797540&r1=797539&r2=797540&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/context/AbstractTilesApplicationContextFactory.java (original)
+++ tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/context/AbstractTilesApplicationContextFactory.java Fri Jul 24 15:42:00 2009
@@ -33,6 +33,10 @@
*
* @version $Rev$ $Date$
* @since 2.1.1
+ * @deprecated Create an instance of {@link TilesApplicationContext} yourself,
+ * by implementing {@link org.apache.tiles.startup.TilesInitializer} or
+ * extending {@link org.apache.tiles.startup.AbstractTilesInitializer} and
+ * overriding <code>createTilesApplicationContext</code> method.
*/
public abstract class AbstractTilesApplicationContextFactory {
Modified: tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/context/ChainedTilesApplicationContextFactory.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/context/ChainedTilesApplicationContextFactory.java?rev=797540&r1=797539&r2=797540&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/context/ChainedTilesApplicationContextFactory.java (original)
+++ tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/context/ChainedTilesApplicationContextFactory.java Fri Jul 24 15:42:00 2009
@@ -39,6 +39,12 @@
*
* @version $Rev$ $Date$
* @since 2.1.1
+ * @deprecated Create an instance of {@link TilesApplicationContext} yourself,
+ * by implementing {@link org.apache.tiles.startup.TilesInitializer} or
+ * extending {@link org.apache.tiles.startup.AbstractTilesInitializer} and
+ * overriding <code>createTilesApplicationContext</code> method.<br>
+ * Moreover, it does not make sense to "try" if your application is
+ * servlet-based, portlet-based, etc. You know it, right?
*/
public class ChainedTilesApplicationContextFactory extends
AbstractTilesApplicationContextFactory implements Initializable {
Modified: tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/context/TilesRequestContextFactory.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/context/TilesRequestContextFactory.java?rev=797540&r1=797539&r2=797540&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/context/TilesRequestContextFactory.java (original)
+++ tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/context/TilesRequestContextFactory.java Fri Jul 24 15:42:00 2009
@@ -30,6 +30,7 @@
* @version $Rev$ $Date$
* @since 2.1.1
*/
+@SuppressWarnings("deprecation")
public interface TilesRequestContextFactory extends Initializable {
/**
Modified: tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/context/enhanced/EnhancedTilesApplicationContextFactory.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/context/enhanced/EnhancedTilesApplicationContextFactory.java?rev=797540&r1=797539&r2=797540&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/context/enhanced/EnhancedTilesApplicationContextFactory.java (original)
+++ tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/context/enhanced/EnhancedTilesApplicationContextFactory.java Fri Jul 24 15:42:00 2009
@@ -28,6 +28,10 @@
* {@link EnhancedTilesApplicationContext}.
*
* @version $Rev$ $Date$
+ * @deprecated Create an instance of {@link EnhancedTilesApplicationContext}
+ * yourself, by implementing {@link org.apache.tiles.startup.TilesInitializer}
+ * or extending {@link org.apache.tiles.startup.AbstractTilesInitializer} and
+ * overriding <code>createTilesApplicationContext</code> method.<br>
*/
public class EnhancedTilesApplicationContextFactory extends
ChainedTilesApplicationContextFactory {
Modified: tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/definition/LocaleDefinitionsFactory.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/definition/LocaleDefinitionsFactory.java?rev=797540&r1=797539&r2=797540&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/definition/LocaleDefinitionsFactory.java (original)
+++ tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/definition/LocaleDefinitionsFactory.java Fri Jul 24 15:42:00 2009
@@ -48,6 +48,7 @@
* @version $Rev$ $Date$
* @since 2.1.0
*/
+@SuppressWarnings("deprecation")
public class LocaleDefinitionsFactory implements DefinitionsFactory,
TilesApplicationContextAware, Initializable {
Modified: tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/definition/dao/BaseLocaleUrlDefinitionDAO.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/definition/dao/BaseLocaleUrlDefinitionDAO.java?rev=797540&r1=797539&r2=797540&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/definition/dao/BaseLocaleUrlDefinitionDAO.java (original)
+++ tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/definition/dao/BaseLocaleUrlDefinitionDAO.java Fri Jul 24 15:42:00 2009
@@ -53,6 +53,7 @@
* @version $Rev$ $Date$
* @since 2.1.0
*/
+@SuppressWarnings("deprecation")
public abstract class BaseLocaleUrlDefinitionDAO implements
DefinitionDAO<Locale>, Initializable, TilesApplicationContextAware,
RefreshMonitor, URLReader {
@@ -231,7 +232,6 @@
* @param parms The initialization parameters.
* @return resource string to be parsed.
*/
- @SuppressWarnings("deprecation")
protected String getResourceString(Map<String, String> parms) {
String resourceStr = parms.get(DefinitionsFactory.DEFINITIONS_CONFIG);
if (resourceStr == null) {
Modified: tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/factory/AbstractTilesContainerFactory.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/factory/AbstractTilesContainerFactory.java?rev=797540&r1=797539&r2=797540&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/factory/AbstractTilesContainerFactory.java (original)
+++ tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/factory/AbstractTilesContainerFactory.java Fri Jul 24 15:42:00 2009
@@ -20,9 +20,6 @@
*/
package org.apache.tiles.factory;
-import java.util.HashMap;
-import java.util.Map;
-
import org.apache.tiles.TilesApplicationContext;
import org.apache.tiles.TilesContainer;
import org.apache.tiles.reflect.ClassUtil;
@@ -45,16 +42,6 @@
"org.apache.tiles.factory.AbstractTilesContainerFactory";
/**
- * Default configuration parameters.
- */
- private static final Map<String, String> DEFAULTS =
- new HashMap<String, String>();
-
- static {
- DEFAULTS.put(CONTAINER_FACTORY_INIT_PARAM, TilesContainerFactory.class.getName());
- }
-
- /**
* Creates a factory instance.
*
* @param context The application context object.
@@ -62,8 +49,8 @@
* @throws TilesContainerFactoryException If something goes wrong during
* creation.
* @since 2.1.1
+ * @deprecated Create directly a new instance of this class.
*/
- @SuppressWarnings("deprecation")
public static AbstractTilesContainerFactory getTilesContainerFactory(
TilesApplicationContext context) {
AbstractTilesContainerFactory retValue;
Modified: tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/factory/KeyedDefinitionsFactoryTilesContainerFactory.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/factory/KeyedDefinitionsFactoryTilesContainerFactory.java?rev=797540&r1=797539&r2=797540&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/factory/KeyedDefinitionsFactoryTilesContainerFactory.java (original)
+++ tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/factory/KeyedDefinitionsFactoryTilesContainerFactory.java Fri Jul 24 15:42:00 2009
@@ -42,6 +42,10 @@
* {@link KeyedDefinitionsFactoryTilesContainer} class.
*
* @version $Rev$ $Date$
+ * @deprecated This class can be replaced by registering different
+ * {@link TilesContainer} with different keys, by overriding
+ * {@link org.apache.tiles.startup.AbstractTilesInitializer}
+ * <code>getContainerKey</code> method.
*/
public class KeyedDefinitionsFactoryTilesContainerFactory extends
TilesContainerFactory {
Modified: tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/factory/TilesContainerFactory.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/factory/TilesContainerFactory.java?rev=797540&r1=797539&r2=797540&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/factory/TilesContainerFactory.java (original)
+++ tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/factory/TilesContainerFactory.java Fri Jul 24 15:42:00 2009
@@ -54,12 +54,15 @@
import org.slf4j.LoggerFactory;
/**
- * Factory provided for convenience.
- * This factory creates a default implementation of
- * the container, initializes, and puts it into service.
+ * Factory provided for convenience. This factory creates a default
+ * implementation of the container, initializes, and puts it into service. Uses
+ * initialization parameters to configure all the objects created in this phase.
*
* @version $Rev$ $Date$
* @since 2.0
+ * @deprecated Please extend {@link AbstractTilesContainerFactory} or use an
+ * already extended class. Parameter-based initialization is no longer
+ * supported.
*/
public class TilesContainerFactory extends AbstractTilesContainerFactory {
@@ -359,6 +362,10 @@
*/
protected void initializeContainer(TilesApplicationContext context,
BasicTilesContainer container) {
+ log.warn("DEPRECATION WARNING! You are using parameter-based initialization, "
+ + "that is no longer supported! Please see docs: "
+ + "http://tiles.apache.org/framework/tutorial/configuration.html");
+
Map <String, String> initParameterMap;
if (log.isInfoEnabled()) {
Modified: tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/renderer/impl/BasicRendererFactory.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/renderer/impl/BasicRendererFactory.java?rev=797540&r1=797539&r2=797540&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/renderer/impl/BasicRendererFactory.java (original)
+++ tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/renderer/impl/BasicRendererFactory.java Fri Jul 24 15:42:00 2009
@@ -23,7 +23,6 @@
import java.util.HashMap;
import java.util.Map;
-import org.apache.tiles.Initializable;
import org.apache.tiles.TilesApplicationContext;
import org.apache.tiles.TilesContainer;
import org.apache.tiles.awareness.TilesApplicationContextAware;
@@ -114,11 +113,6 @@
protected Map<String, AttributeRenderer> renderers;
/**
- * Initialization parameters, as passed by the constructor.
- */
- private Map<String, String> initParameters;
-
- /**
* The default renderer.
*
* @since 2.1.0
@@ -146,7 +140,6 @@
/** {@inheritDoc} */
public void init(Map<String, String> parameters) {
- this.initParameters = parameters;
String defaultRendererParam = parameters.get(DEFAULT_RENDERER_INIT_PARAM);
if (defaultRendererParam == null) {
defaultRendererParam = DEFAULT_RENDERER_CLASS_NAME;
@@ -258,8 +251,5 @@
((AttributeEvaluatorFactoryAware) renderer)
.setAttributeEvaluatorFactory(attributeEvaluatorFactory);
}
- if (renderer instanceof Initializable && initParameters != null) {
- ((Initializable) renderer).init(initParameters);
- }
}
}
Added: tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/startup/AbstractTilesInitializer.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/startup/AbstractTilesInitializer.java?rev=797540&view=auto
==============================================================================
--- tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/startup/AbstractTilesInitializer.java (added)
+++ tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/startup/AbstractTilesInitializer.java Fri Jul 24 15:42:00 2009
@@ -0,0 +1,137 @@
+/*
+ * $Id$
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.tiles.startup;
+
+import org.apache.tiles.TilesApplicationContext;
+import org.apache.tiles.TilesContainer;
+import org.apache.tiles.TilesException;
+import org.apache.tiles.access.TilesAccess;
+import org.apache.tiles.factory.AbstractTilesContainerFactory;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+/**
+ * Default Tiles initialization delegate implementation under a servlet
+ * environment. It uses init parameters to create the
+ * {@link TilesApplicationContext} and the {@link TilesContainer}.
+ *
+ * @version $Rev$ $Date$
+ * @since 2.2.0
+ */
+public abstract class AbstractTilesInitializer implements TilesInitializer {
+
+ /**
+ * The logging object.
+ */
+ private Logger log = LoggerFactory.getLogger(getClass());
+
+ /**
+ * Init parameter to define the key under which the container will be
+ * stored.
+ *
+ * @since 2.1.2
+ */
+ public static final String CONTAINER_KEY_INIT_PARAMETER =
+ "org.apache.tiles.startup.AbstractTilesInitializer.CONTAINER_KEY";
+
+ /**
+ * The initialized application context.
+ */
+ private TilesApplicationContext applicationContext;
+
+ /**
+ * The initialized container.
+ */
+ private TilesContainer container;
+
+ /** {@inheritDoc} */
+ public void initialize(TilesApplicationContext applicationContext) {
+ this.applicationContext = createTilesApplicationContext(applicationContext);
+ String key = getContainerKey(this.applicationContext);
+ container = createContainer(this.applicationContext);
+ TilesAccess.setContainer(this.applicationContext, container, key);
+ }
+
+ /** {@inheritDoc} */
+ public void destroy() {
+ try {
+ TilesAccess.setContainer(applicationContext, null,
+ getContainerKey(applicationContext));
+ } catch (TilesException e) {
+ log.warn("Unable to remove tiles container from service.", e);
+ }
+ }
+
+ /**
+ * Creates the Tiles application context, to be used across all the
+ * Tiles-based application. If you override this class, please override this
+ * method or
+ * {@link #createAndInitializeTilesApplicationContextFactory(TilesApplicationContext)}
+ * .<br>
+ * This implementation returns the preliminary context passed as a parameter
+ *
+ * @param preliminaryContext The preliminary application context to use.
+ * @return The Tiles application context.
+ * @since 2.2.0
+ */
+ protected TilesApplicationContext createTilesApplicationContext(
+ TilesApplicationContext preliminaryContext) {
+ return preliminaryContext;
+ }
+
+ /**
+ * Returns the container key under which the container will be stored.
+ * This implementation returns <code>null</code> so that the container will
+ * be the default one.
+ *
+ * @param applicationContext The Tiles application context to use.
+ * @return The container key.
+ * @since 2.2.0
+ */
+ protected String getContainerKey(TilesApplicationContext applicationContext) {
+ return null;
+ }
+
+ /**
+ * Creates a Tiles container. If you override this class, please override
+ * this method or {@link #createContainerFactory(TilesApplicationContext)}.
+ *
+ * @param context The servlet context to use.
+ * @return The created container.
+ * @since 2.2.0
+ */
+ protected TilesContainer createContainer(TilesApplicationContext context) {
+ AbstractTilesContainerFactory factory = createContainerFactory(context);
+ return factory.createContainer(context);
+ }
+
+ /**
+ * Creates a Tiles container factory. If you override this class, please
+ * override this method or {@link #createContainer(TilesApplicationContext)}.
+ *
+ * @param context The servlet context to use.
+ * @return The created container factory.
+ * @since 2.2.0
+ */
+ protected abstract AbstractTilesContainerFactory createContainerFactory(
+ TilesApplicationContext context);
+}
Propchange: tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/startup/AbstractTilesInitializer.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/startup/AbstractTilesInitializer.java
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL
Modified: tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/startup/BasicTilesInitializer.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/startup/BasicTilesInitializer.java?rev=797540&r1=797539&r2=797540&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/startup/BasicTilesInitializer.java (original)
+++ tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/startup/BasicTilesInitializer.java Fri Jul 24 15:42:00 2009
@@ -22,20 +22,19 @@
import org.apache.tiles.Initializable;
import org.apache.tiles.TilesApplicationContext;
-import org.apache.tiles.TilesContainer;
-import org.apache.tiles.access.TilesAccess;
import org.apache.tiles.context.AbstractTilesApplicationContextFactory;
import org.apache.tiles.factory.AbstractTilesContainerFactory;
/**
* Default Tiles initialization delegate implementation under a servlet
* environment. It uses init parameters to create the
- * {@link TilesApplicationContext} and the {@link TilesContainer}.
+ * {@link TilesApplicationContext} and the {@link org.apache.tiles.TilesContainer}.
*
* @version $Rev$ $Date$
* @since 2.1.2
+ * @deprecated Don't use it, please extend {@link AbstractTilesInitializer}.
*/
-public class BasicTilesInitializer implements TilesInitializer {
+public class BasicTilesInitializer extends AbstractTilesInitializer {
/**
* Init parameter to define the key under which the container will be
@@ -46,14 +45,6 @@
public static final String CONTAINER_KEY_INIT_PARAMETER =
"org.apache.tiles.startup.BasicTilesInitializer.CONTAINER_KEY";
- /** {@inheritDoc} */
- public void initialize(TilesApplicationContext applicationContext) {
- applicationContext = createTilesApplicationContext(applicationContext);
- String key = getContainerKey(applicationContext);
- TilesContainer container = createContainer(applicationContext);
- TilesAccess.setContainer(applicationContext, container, key);
- }
-
/**
* Creates the Tiles application context, to be used across all the
* Tiles-based application. If you override this class, please override this
@@ -105,19 +96,6 @@
}
/**
- * Creates a Tiles container. If you override this class, please override
- * this method or {@link #createContainerFactory(TilesApplicationContext)}.
- *
- * @param context The servlet context to use.
- * @return The created container.
- * @since 2.1.2
- */
- protected TilesContainer createContainer(TilesApplicationContext context) {
- AbstractTilesContainerFactory factory = createContainerFactory(context);
- return factory.createContainer(context);
- }
-
- /**
* Creates a Tiles container factory. If you override this class, please
* override this method or {@link #createContainer(TilesApplicationContext)}.
*
Added: tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/startup/DefaultTilesInitializer.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/startup/DefaultTilesInitializer.java?rev=797540&view=auto
==============================================================================
--- tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/startup/DefaultTilesInitializer.java (added)
+++ tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/startup/DefaultTilesInitializer.java Fri Jul 24 15:42:00 2009
@@ -0,0 +1,42 @@
+/*
+ * $Id$
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.tiles.startup;
+
+import org.apache.tiles.TilesApplicationContext;
+import org.apache.tiles.factory.AbstractTilesContainerFactory;
+import org.apache.tiles.factory.BasicTilesContainerFactory;
+
+/**
+ * Loads Tiles with the default settings.
+ *
+ * @version $Rev$ $Date$
+ * @since 2.2.0
+ */
+public class DefaultTilesInitializer extends AbstractTilesInitializer {
+
+ /** {@inheritDoc} */
+ @Override
+ protected AbstractTilesContainerFactory createContainerFactory(
+ TilesApplicationContext context) {
+ return new BasicTilesContainerFactory();
+ }
+}
Propchange: tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/startup/DefaultTilesInitializer.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/startup/DefaultTilesInitializer.java
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL
Modified: tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/startup/TilesInitializer.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/startup/TilesInitializer.java?rev=797540&r1=797539&r2=797540&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/startup/TilesInitializer.java (original)
+++ tiles/framework/trunk/tiles-core/src/main/java/org/apache/tiles/startup/TilesInitializer.java Fri Jul 24 15:42:00 2009
@@ -39,4 +39,11 @@
* PortletTilesApplicationContext.
*/
void initialize(TilesApplicationContext preliminaryContext);
+
+ /**
+ * Destroys the Tiles container.
+ *
+ * @since 2.2.0
+ */
+ void destroy();
}
Modified: tiles/framework/trunk/tiles-freemarker/src/main/java/org/apache/tiles/freemarker/renderer/FreeMarkerAttributeRenderer.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-freemarker/src/main/java/org/apache/tiles/freemarker/renderer/FreeMarkerAttributeRenderer.java?rev=797540&r1=797539&r2=797540&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-freemarker/src/main/java/org/apache/tiles/freemarker/renderer/FreeMarkerAttributeRenderer.java (original)
+++ tiles/framework/trunk/tiles-freemarker/src/main/java/org/apache/tiles/freemarker/renderer/FreeMarkerAttributeRenderer.java Fri Jul 24 15:42:00 2009
@@ -34,7 +34,6 @@
import org.apache.commons.collections.iterators.IteratorEnumeration;
import org.apache.tiles.Attribute;
-import org.apache.tiles.Initializable;
import org.apache.tiles.context.TilesRequestContext;
import org.apache.tiles.freemarker.FreeMarkerTilesException;
import org.apache.tiles.freemarker.servlet.TilesFreemarkerServlet;
@@ -54,7 +53,7 @@
* @version $Rev$ $Date$
* @since 2.2.0
*/
-public class FreeMarkerAttributeRenderer extends AbstractBaseAttributeRenderer implements Initializable {
+public class FreeMarkerAttributeRenderer extends AbstractBaseAttributeRenderer {
/**
* The servlet that is used to forward the request to.
@@ -66,12 +65,6 @@
*/
private Map<String, String> params = new HashMap<String, String>();
- /** {@inheritDoc} */
- public void init(Map<String, String> params) {
- this.params.putAll(params);
- commit();
- }
-
/**
* Sets a parameter for the internal servlet.
*
Modified: tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/PortletTilesApplicationContextFactory.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/PortletTilesApplicationContextFactory.java?rev=797540&r1=797539&r2=797540&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/PortletTilesApplicationContextFactory.java (original)
+++ tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/PortletTilesApplicationContextFactory.java Fri Jul 24 15:42:00 2009
@@ -35,6 +35,10 @@
*
* @version $Rev$ $Date$
* @since 2.1.1
+ * @deprecated Create an instance of {@link PortletTilesApplicationContext}
+ * yourself, by implementing {@link org.apache.tiles.startup.TilesInitializer}
+ * or extending {@link org.apache.tiles.startup.AbstractTilesInitializer} and
+ * overriding <code>createTilesApplicationContext</code> method.<br>
*/
public class PortletTilesApplicationContextFactory extends
AbstractTilesApplicationContextFactory implements Initializable {
Modified: tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/wildcard/WildcardPortletTilesApplicationContextFactory.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/wildcard/WildcardPortletTilesApplicationContextFactory.java?rev=797540&r1=797539&r2=797540&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/wildcard/WildcardPortletTilesApplicationContextFactory.java (original)
+++ tiles/framework/trunk/tiles-portlet/src/main/java/org/apache/tiles/portlet/context/wildcard/WildcardPortletTilesApplicationContextFactory.java Fri Jul 24 15:42:00 2009
@@ -32,6 +32,10 @@
*
* @version $Rev$ $Date$
* @since 2.1.1
+ * @deprecated Create an instance of {@link WildcardPortletTilesApplicationContext}
+ * yourself, by implementing {@link org.apache.tiles.startup.TilesInitializer}
+ * or extending {@link org.apache.tiles.startup.AbstractTilesInitializer} and
+ * overriding <code>createTilesApplicationContext</code> method.<br>
*/
public class WildcardPortletTilesApplicationContextFactory extends
PortletTilesApplicationContextFactory {
Modified: tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/servlet/context/ServletTilesApplicationContextFactory.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/servlet/context/ServletTilesApplicationContextFactory.java?rev=797540&r1=797539&r2=797540&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/servlet/context/ServletTilesApplicationContextFactory.java (original)
+++ tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/servlet/context/ServletTilesApplicationContextFactory.java Fri Jul 24 15:42:00 2009
@@ -34,6 +34,10 @@
*
* @version $Rev$ $Date$
* @since 2.1.1
+ * @deprecated Create an instance of {@link ServletTilesApplicationContext}
+ * yourself, by implementing {@link org.apache.tiles.startup.TilesInitializer}
+ * or extending {@link org.apache.tiles.startup.AbstractTilesInitializer} and
+ * overriding <code>createTilesApplicationContext</code> method.<br>
*/
public class ServletTilesApplicationContextFactory extends
AbstractTilesApplicationContextFactory implements Initializable {
Modified: tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/servlet/context/wildcard/WildcardServletTilesApplicationContextFactory.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/servlet/context/wildcard/WildcardServletTilesApplicationContextFactory.java?rev=797540&r1=797539&r2=797540&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/servlet/context/wildcard/WildcardServletTilesApplicationContextFactory.java (original)
+++ tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/servlet/context/wildcard/WildcardServletTilesApplicationContextFactory.java Fri Jul 24 15:42:00 2009
@@ -35,6 +35,8 @@
*
* @version $Rev$ $Date$
* @since 2.1.1
+ * @deprecated Create an instance of
+ * {@link WildcardServletTilesApplicationContext} directly.
*/
public class WildcardServletTilesApplicationContextFactory extends
AbstractTilesApplicationContextFactory implements Initializable {
Added: tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/AbstractTilesInitializerServlet.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/AbstractTilesInitializerServlet.java?rev=797540&view=auto
==============================================================================
--- tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/AbstractTilesInitializerServlet.java (added)
+++ tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/AbstractTilesInitializerServlet.java Fri Jul 24 15:42:00 2009
@@ -0,0 +1,72 @@
+/*
+ * $Id$
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.tiles.web.startup;
+
+import javax.servlet.ServletContext;
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServlet;
+
+import org.apache.tiles.servlet.context.ServletTilesApplicationContext;
+import org.apache.tiles.startup.TilesInitializer;
+import org.apache.tiles.web.util.ServletContextAdapter;
+
+/**
+ * Abstract Initialization Servlet. Uses a {@link TilesInitializer}, created by
+ * {@link #createTilesInitializer()} to initialize Tiles.
+ *
+ * @see org.apache.tiles.web.startup.TilesListener
+ * @version $Rev$ $Date$
+ * @since 2.2.0
+ */
+public abstract class AbstractTilesInitializerServlet extends HttpServlet {
+
+ /**
+ * The private listener instance, that is used to initialize Tiles
+ * container.
+ */
+ private TilesInitializer initializer;
+
+ /** {@inheritDoc} */
+ @Override
+ public void destroy() {
+ initializer.destroy();
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public void init() throws ServletException {
+ initializer = createTilesInitializer();
+ ServletContext adaptedContext = new ServletContextAdapter(
+ getServletConfig());
+ ServletTilesApplicationContext preliminaryContext = new ServletTilesApplicationContext(
+ adaptedContext);
+ initializer.initialize(preliminaryContext);
+ }
+
+ /**
+ * Creates a new instance of {@link TilesInitializer}. Implement it to use
+ * your custom initializer.
+ *
+ * @return The Tiles servlet-based initializer.
+ * @since 2.2.0
+ */
+ protected abstract TilesInitializer createTilesInitializer();
+}
Propchange: tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/AbstractTilesInitializerServlet.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/AbstractTilesInitializerServlet.java
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL
Added: tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/AbstractTilesListener.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/AbstractTilesListener.java?rev=797540&view=auto
==============================================================================
--- tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/AbstractTilesListener.java (added)
+++ tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/AbstractTilesListener.java Fri Jul 24 15:42:00 2009
@@ -0,0 +1,88 @@
+/*
+ * $Id$
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.tiles.web.startup;
+
+import javax.servlet.ServletContext;
+import javax.servlet.ServletContextEvent;
+import javax.servlet.ServletContextListener;
+
+import org.apache.tiles.TilesException;
+import org.apache.tiles.servlet.context.ServletTilesApplicationContext;
+import org.apache.tiles.servlet.context.ServletUtil;
+import org.apache.tiles.startup.TilesInitializer;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+/**
+ * Listener for the initialization of the Tiles container.
+ *
+ * @version $Rev$ $Date$
+ */
+public abstract class AbstractTilesListener implements ServletContextListener {
+
+ /**
+ * Log instance.
+ */
+ private Logger log = LoggerFactory.getLogger(AbstractTilesListener.class);
+
+ /**
+ * The initializer object.
+ *
+ * @since 2.1.2
+ */
+ protected TilesInitializer initializer;
+
+ /**
+ * Initialize the TilesContainer and place it
+ * into service.
+ *
+ * @param event The intercepted event.
+ */
+ public void contextInitialized(ServletContextEvent event) {
+ ServletContext servletContext = event.getServletContext();
+ initializer = createTilesInitializer();
+ initializer.initialize(new ServletTilesApplicationContext(
+ servletContext));
+ }
+
+ /**
+ * Remove the tiles container from service.
+ *
+ * @param event The intercepted event.
+ */
+ public void contextDestroyed(ServletContextEvent event) {
+ ServletContext servletContext = event.getServletContext();
+ try {
+ ServletUtil.setContainer(servletContext, null);
+ } catch (TilesException e) {
+ log.warn("Unable to remove tiles container from service.", e);
+ }
+ }
+
+ /**
+ * Creates a new instance of {@link TilesInitializer}. Implement it to use a
+ * different initializer.
+ *
+ * @return The Tiles servlet-based initializer.
+ * @since 2.2.0
+ */
+ protected abstract TilesInitializer createTilesInitializer();
+}
Propchange: tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/AbstractTilesListener.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/AbstractTilesListener.java
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL
Modified: tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/TilesListener.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/TilesListener.java?rev=797540&r1=797539&r2=797540&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/TilesListener.java (original)
+++ tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/TilesListener.java Fri Jul 24 15:42:00 2009
@@ -21,74 +21,21 @@
package org.apache.tiles.web.startup;
import javax.servlet.ServletContext;
-import javax.servlet.ServletContextEvent;
-import javax.servlet.ServletContextListener;
import org.apache.tiles.TilesApplicationContext;
import org.apache.tiles.TilesContainer;
-import org.apache.tiles.TilesException;
import org.apache.tiles.factory.AbstractTilesContainerFactory;
import org.apache.tiles.servlet.context.ServletTilesApplicationContext;
-import org.apache.tiles.servlet.context.ServletUtil;
import org.apache.tiles.startup.BasicTilesInitializer;
import org.apache.tiles.startup.TilesInitializer;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
/**
* Listener for the initialization of the Tiles container.
*
* @version $Rev$ $Date$
+ * @deprecated Please extend {@link AbstractTilesListener}.
*/
-public class TilesListener
- implements ServletContextListener {
-
- /**
- * Log instance.
- */
- private Logger log = LoggerFactory.getLogger(TilesListener.class);
-
- /**
- * The initializer object.
- *
- * @since 2.1.2
- */
- protected TilesInitializer initializer;
-
- /**
- * Constructor.
- *
- * @since 2.1.2
- */
- public TilesListener() {
- initializer = createTilesInitializer();
- }
-
- /**
- * Initialize the TilesContainer and place it
- * into service.
- *
- * @param event The intercepted event.
- */
- public void contextInitialized(ServletContextEvent event) {
- ServletContext servletContext = event.getServletContext();
- initializer.initialize(new ServletTilesApplicationContext(
- servletContext));
- }
-
- /**
- * Remove the tiles container from service.
- *
- * @param event The intercepted event.
- */
- public void contextDestroyed(ServletContextEvent event) {
- ServletContext servletContext = event.getServletContext();
- try {
- ServletUtil.setContainer(servletContext, null);
- } catch (TilesException e) {
- log.warn("Unable to remove tiles container from service.", e);
- }
- }
+public class TilesListener extends AbstractTilesListener {
/**
* Creates a new instance of {@link BasicTilesInitializer}. Override it to use a different initializer.
Modified: tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/TilesServlet.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/TilesServlet.java?rev=797540&r1=797539&r2=797540&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/TilesServlet.java (original)
+++ tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/TilesServlet.java Fri Jul 24 15:42:00 2009
@@ -20,66 +20,17 @@
*/
package org.apache.tiles.web.startup;
-import javax.servlet.ServletContext;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServlet;
-
-import org.apache.tiles.TilesException;
-import org.apache.tiles.servlet.context.ServletTilesApplicationContext;
-import org.apache.tiles.servlet.context.ServletUtil;
import org.apache.tiles.startup.BasicTilesInitializer;
import org.apache.tiles.startup.TilesInitializer;
-import org.apache.tiles.web.util.ServletContextAdapter;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
/**
* Initialization Servlet.
*
* @see org.apache.tiles.web.startup.TilesListener
* @version $Rev$ $Date$
+ * @deprecated Please extend {@link AbstractTilesInitializerServlet}.
*/
-public class TilesServlet extends HttpServlet {
-
- /**
- * Log instance.
- */
- private Logger log = LoggerFactory.getLogger(TilesServlet.class);
-
- /**
- * The private listener instance, that is used to initialize Tiles
- * container.
- */
- private TilesInitializer initializer;
-
- /**
- * Constructor.
- *
- * @since 2.1.2
- */
- public TilesServlet() {
- initializer = createTilesInitializer();
- }
-
- /** {@inheritDoc} */
- @Override
- public void destroy() {
- try {
- ServletUtil.setContainer(getServletContext(), null);
- } catch (TilesException e) {
- log.warn("Unable to remove tiles container from service.", e);
- }
- }
-
- /** {@inheritDoc} */
- @Override
- public void init() throws ServletException {
- ServletContext adaptedContext = new ServletContextAdapter(
- getServletConfig());
- ServletTilesApplicationContext preliminaryContext = new ServletTilesApplicationContext(
- adaptedContext);
- initializer.initialize(preliminaryContext);
- }
+public class TilesServlet extends AbstractTilesInitializerServlet {
/**
* Creates a new instance of {@link BasicTilesInitializer}. Override it to use a different initializer.
Added: tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/simple/SimpleTilesInitializerServlet.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/simple/SimpleTilesInitializerServlet.java?rev=797540&view=auto
==============================================================================
--- tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/simple/SimpleTilesInitializerServlet.java (added)
+++ tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/simple/SimpleTilesInitializerServlet.java Fri Jul 24 15:42:00 2009
@@ -0,0 +1,41 @@
+/*
+ * $Id$
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.tiles.web.startup.simple;
+
+import org.apache.tiles.startup.DefaultTilesInitializer;
+import org.apache.tiles.startup.TilesInitializer;
+import org.apache.tiles.web.startup.AbstractTilesInitializerServlet;
+
+/**
+ * A Tiles listener that loads Tiles in the default way.
+ *
+ * @version $Rev$ $Date$
+ * @since 2.2.0
+ */
+public class SimpleTilesInitializerServlet extends AbstractTilesInitializerServlet {
+
+ /** {@inheritDoc} */
+ @Override
+ protected TilesInitializer createTilesInitializer() {
+ return new DefaultTilesInitializer();
+ }
+}
Propchange: tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/simple/SimpleTilesInitializerServlet.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/simple/SimpleTilesInitializerServlet.java
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL
Added: tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/simple/SimpleTilesListener.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/simple/SimpleTilesListener.java?rev=797540&view=auto
==============================================================================
--- tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/simple/SimpleTilesListener.java (added)
+++ tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/simple/SimpleTilesListener.java Fri Jul 24 15:42:00 2009
@@ -0,0 +1,41 @@
+/*
+ * $Id$
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.tiles.web.startup.simple;
+
+import org.apache.tiles.startup.DefaultTilesInitializer;
+import org.apache.tiles.startup.TilesInitializer;
+import org.apache.tiles.web.startup.AbstractTilesListener;
+
+/**
+ * A Tiles listener that loads Tiles in the default way.
+ *
+ * @version $Rev$ $Date$ù
+ * @since 2.2.0
+ */
+public class SimpleTilesListener extends AbstractTilesListener {
+
+ /** {@inheritDoc} */
+ @Override
+ protected TilesInitializer createTilesInitializer() {
+ return new DefaultTilesInitializer();
+ }
+}
Propchange: tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/simple/SimpleTilesListener.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/simple/SimpleTilesListener.java
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL
Added: tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/simple/package.html
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/simple/package.html?rev=797540&view=auto
==============================================================================
--- tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/simple/package.html (added)
+++ tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/simple/package.html Fri Jul 24 15:42:00 2009
@@ -0,0 +1,30 @@
+<!--
+/*
+ * $Id$
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+-->
+<html>
+<head>
+ <title>Start-up classes in a web application environment with default settings</title>
+</head>
+<body>
+Classes to start the Tiles engine up in a web environment using the default settings.
+</body>
+</html>
\ No newline at end of file
Propchange: tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/simple/package.html
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: tiles/framework/trunk/tiles-servlet/src/main/java/org/apache/tiles/web/startup/simple/package.html
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL
Modified: tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/listener/TestAlternateTilesListener.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/listener/TestAlternateTilesListener.java?rev=797540&r1=797539&r2=797540&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/listener/TestAlternateTilesListener.java (original)
+++ tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/listener/TestAlternateTilesListener.java Fri Jul 24 15:42:00 2009
@@ -22,17 +22,17 @@
import org.apache.tiles.TilesApplicationContext;
import org.apache.tiles.factory.AbstractTilesContainerFactory;
-import org.apache.tiles.startup.BasicTilesInitializer;
+import org.apache.tiles.startup.AbstractTilesInitializer;
import org.apache.tiles.startup.TilesInitializer;
import org.apache.tiles.test.factory.TestAlternateTilesContainerFactory;
-import org.apache.tiles.web.startup.TilesListener;
+import org.apache.tiles.web.startup.AbstractTilesListener;
/**
* Test Tiles listener for Tiles initialization of the alternate container.
*
* @version $Rev$ $Date$
*/
-public class TestAlternateTilesListener extends TilesListener {
+public class TestAlternateTilesListener extends AbstractTilesListener {
/** {@inheritDoc} */
@Override
@@ -43,7 +43,7 @@
/**
* Test Tiles initializer for Tiles initialization of the alternate container.
*/
- private static class TestAlternateTilesInitializer extends BasicTilesInitializer {
+ private static class TestAlternateTilesInitializer extends AbstractTilesInitializer {
/** {@inheritDoc} */
@Override
Modified: tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/listener/TestDbTilesListener.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/listener/TestDbTilesListener.java?rev=797540&r1=797539&r2=797540&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/listener/TestDbTilesListener.java (original)
+++ tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/listener/TestDbTilesListener.java Fri Jul 24 15:42:00 2009
@@ -22,17 +22,17 @@
import org.apache.tiles.TilesApplicationContext;
import org.apache.tiles.factory.AbstractTilesContainerFactory;
-import org.apache.tiles.startup.BasicTilesInitializer;
+import org.apache.tiles.startup.AbstractTilesInitializer;
import org.apache.tiles.startup.TilesInitializer;
import org.apache.tiles.test.factory.TestDbTilesContainerFactory;
-import org.apache.tiles.web.startup.TilesListener;
+import org.apache.tiles.web.startup.AbstractTilesListener;
/**
* Test Tiles listener for Tiles initialization of the db-based container.
*
* @version $Rev$ $Date$
*/
-public class TestDbTilesListener extends TilesListener {
+public class TestDbTilesListener extends AbstractTilesListener {
/** {@inheritDoc} */
@Override
@@ -43,7 +43,7 @@
/**
* Test Tiles initializer for Tiles initialization of the db-based container.
*/
- private static class TestDbTilesInitializer extends BasicTilesInitializer {
+ private static class TestDbTilesInitializer extends AbstractTilesInitializer {
/** {@inheritDoc} */
@Override
Modified: tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/listener/TestTilesListener.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/listener/TestTilesListener.java?rev=797540&r1=797539&r2=797540&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/listener/TestTilesListener.java (original)
+++ tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/listener/TestTilesListener.java Fri Jul 24 15:42:00 2009
@@ -25,17 +25,17 @@
import org.apache.tiles.TilesApplicationContext;
import org.apache.tiles.factory.AbstractTilesContainerFactory;
import org.apache.tiles.servlet.context.wildcard.WildcardServletTilesApplicationContext;
-import org.apache.tiles.startup.BasicTilesInitializer;
+import org.apache.tiles.startup.AbstractTilesInitializer;
import org.apache.tiles.startup.TilesInitializer;
import org.apache.tiles.test.factory.TestTilesContainerFactory;
-import org.apache.tiles.web.startup.TilesListener;
+import org.apache.tiles.web.startup.AbstractTilesListener;
/**
* Test Tiles listener for Tiles initialization of the default container.
*
* @version $Rev$ $Date$
*/
-public class TestTilesListener extends TilesListener {
+public class TestTilesListener extends AbstractTilesListener {
/** {@inheritDoc} */
@Override
@@ -46,7 +46,7 @@
/**
* Test Tiles initializer for Tiles initialization of the default container.
*/
- private static class TestTilesListenerInitializer extends BasicTilesInitializer {
+ private static class TestTilesListenerInitializer extends AbstractTilesInitializer {
/** {@inheritDoc} */
@Override
Modified: tiles/framework/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/renderer/VelocityAttributeRenderer.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/renderer/VelocityAttributeRenderer.java?rev=797540&r1=797539&r2=797540&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/renderer/VelocityAttributeRenderer.java (original)
+++ tiles/framework/trunk/tiles-velocity/src/main/java/org/apache/tiles/velocity/renderer/VelocityAttributeRenderer.java Fri Jul 24 15:42:00 2009
@@ -30,7 +30,6 @@
import org.apache.commons.collections.iterators.IteratorEnumeration;
import org.apache.tiles.Attribute;
-import org.apache.tiles.Initializable;
import org.apache.tiles.context.TilesRequestContext;
import org.apache.tiles.impl.InvalidTemplateException;
import org.apache.tiles.renderer.impl.AbstractBaseAttributeRenderer;
@@ -51,8 +50,7 @@
* @version $Rev$ $Date$
* @since 2.2.0
*/
-public class VelocityAttributeRenderer extends AbstractBaseAttributeRenderer
- implements Initializable {
+public class VelocityAttributeRenderer extends AbstractBaseAttributeRenderer {
/**
* The VelocityView object to use.
@@ -64,12 +62,6 @@
*/
private Map<String, String> params = new HashMap<String, String>();
- /** {@inheritDoc} */
- public void init(Map<String, String> params) {
- this.params.putAll(params);
- commit();
- }
-
/**
* Sets a parameter for the internal servlet.
*