You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tapestry.apache.org by dr...@apache.org on 2009/11/01 20:00:10 UTC

svn commit: r831728 - in /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5: SymbolConstants.java services/TapestryModule.java

Author: drobiazko
Date: Sun Nov  1 19:00:09 2009
New Revision: 831728

URL: http://svn.apache.org/viewvc?rev=831728&view=rev
Log:
TAP5-247: Move all Tapestry 5 configuration keys to a constant class

Modified:
    tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/SymbolConstants.java
    tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java

Modified: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/SymbolConstants.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/SymbolConstants.java?rev=831728&r1=831727&r2=831728&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/SymbolConstants.java (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/SymbolConstants.java Sun Nov  1 19:00:09 2009
@@ -187,4 +187,92 @@
      */
     public static final String BLACKBIRD_ENABLED = "tapestry.blackbird-enabled";
 
+    /**
+     * The default time interval that cookies created by Tapestry will be kept in the client web browser. The default is "7 d" (that is, seven days).
+     *
+     * @since 5.2.0.0
+     */
+    public static final String COOKIE_MAX_AGE = "tapestry.default-cookie-max-age";
+
+    /**
+     * The logical name of the start page, the page that is rendered for the root URL.
+     *
+     * @since 5.2.0.0
+     */
+    public static final String START_PAGE_NAME = "tapestry.start-page-name";
+    
+
+    /**
+     * The default stylesheet automatically injected into every rendered HTML page. 
+     *
+     * @since 5.2.0.0
+     */
+    public static final String DEFAULT_STYLESHEET = "tapestry.default-stylesheet";
+    
+
+    /**
+     * The number of pages in the page pool (for a given page name / locale combination) before which Tapestry will start to wait for existing pages to be made available. 
+     * Under this limit of pages, Tapestry will simply create a new page instance if no existing instance is readily available. 
+     * Once the soft limit is reached, Tapestry will wait a short period of time (the soft wait interval) to see if an existing page 
+     * instance is made available. It will then create a new page instance (unless the hard limit has been reached). 
+     * The default is 5 page instances. Remember that page pooling is done separately for each page (and localization of the page). 
+     *
+     * @since 5.2.0.0
+     */
+    public static final String PAGE_POOL_SOFT_LIMIT = "tapestry.page-pool.soft-limit";
+    
+
+    /**
+     * The absolute maximum number of page instances (for a particular page name / locale combination) that Tapestry will create at any time. 
+     * If this number is reached, then requests will fail because a page instance is not available ... this can happen as part of a denial of service attack. 
+     * For this value to have any meaning, it should be lower than the number of threads that the servlet container is configured to use when processing requests. 
+     * The default is 20 page instances. 
+     *
+     * @since 5.2.0.0
+     */
+    public static final String PAGE_POOL_HARD_LIMIT = "tapestry.page-pool.hard-limit";
+    
+
+    /**
+     * The time interval that Tapestry will wait for a page instance to become available before deciding whether to create an entirely new page instance. 
+     * The default is "10 ms".
+     *
+     * @since 5.2.0.0
+     */
+    public static final String PAGE_POOL_SOFT_WAIT = "tapestry.page-pool.soft-wait";
+    
+
+    /**
+     * The time interval that an instantiated page instance may be cached before being removed. As pages are returned to the pool, they are time stamped. 
+     * Periodically (as per the file check interval), the pool is scanned for page instances that have not been used recently; those that are outside the 
+     * active window are discarded. This is used to free up unnecessary page instances after a request surge. The default is "10 m" (10 minutes).
+     *
+     * @since 5.2.0.0
+     */
+    public static final String PAGE_POOL_ACTIVE_WINDOW  = "tapestry.page-pool.active-window";
+    
+
+    /**
+     * The path to the embedded copy of script.aculo.us packaged with Tapestry.
+     *
+     * @since 5.2.0.0
+     */
+    public static final String SCRIPTACULOUS  = "tapestry.scriptaculous";
+    
+
+    /**
+     * The path to the embedded datepicker.
+     *
+     * @since 5.2.0.0
+     */
+    public static final String DATEPICKER  = "tapestry.datepicker";
+    
+
+    /**
+     * The path to the embedded copy of blackbird packaged with Tapestry.
+     *
+     * @since 5.2.0.0
+     */
+    public static final String BLACKBIRD  = "tapestry.blackbird";
+
 }

Modified: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java?rev=831728&r1=831727&r2=831728&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/services/TapestryModule.java Sun Nov  1 19:00:09 2009
@@ -2032,17 +2032,17 @@
                           VersionUtils.readVersionNumber(
                                   "META-INF/maven/org.apache.tapestry/tapestry-core/pom.properties"));
 
-        configuration.add("tapestry.default-cookie-max-age", "7 d");
+        configuration.add(SymbolConstants.COOKIE_MAX_AGE, "7 d");
 
-        configuration.add("tapestry.start-page-name", "start");
+        configuration.add(SymbolConstants.START_PAGE_NAME, "start");
 
-        configuration.add("tapestry.default-stylesheet", "classpath:/org/apache/tapestry5/default.css");
+        configuration.add(SymbolConstants.DEFAULT_STYLESHEET, "classpath:/org/apache/tapestry5/default.css");
         configuration.add("tapestry.spacer-image", "classpath:/org/apache/tapestry5/spacer.gif");
 
-        configuration.add("tapestry.page-pool.soft-limit", "5");
-        configuration.add("tapestry.page-pool.soft-wait", "10 ms");
-        configuration.add("tapestry.page-pool.hard-limit", "20");
-        configuration.add("tapestry.page-pool.active-window", "10 m");
+        configuration.add(SymbolConstants.PAGE_POOL_SOFT_LIMIT, "5");
+        configuration.add(SymbolConstants.PAGE_POOL_SOFT_WAIT, "10 ms");
+        configuration.add(SymbolConstants.PAGE_POOL_HARD_LIMIT, "20");
+        configuration.add(SymbolConstants.PAGE_POOL_ACTIVE_WINDOW, "10 m");
 
         configuration.add(SymbolConstants.SUPPRESS_REDIRECT_FROM_ACTION_REQUESTS, "false");
 
@@ -2063,16 +2063,16 @@
         // releases to be accidentally left lying around). There's also a ClasspathAliasManager
         // contribution based on the path.
 
-        configuration.add("tapestry.scriptaculous", "classpath:${tapestry.scriptaculous.path}");
+        configuration.add(SymbolConstants.SCRIPTACULOUS, "classpath:${tapestry.scriptaculous.path}");
         configuration.add("tapestry.scriptaculous.path", "org/apache/tapestry5/scriptaculous_1_8_2");
 
         // Likewise for WebFX DatePicker, currently version 1.0.6
 
         configuration.add("tapestry.datepicker.path", "org/apache/tapestry5/datepicker_106");
-        configuration.add("tapestry.datepicker", "classpath:${tapestry.datepicker.path}");
+        configuration.add(SymbolConstants.DATEPICKER, "classpath:${tapestry.datepicker.path}");
 
         configuration.add("tapestry.blackbird.path", "org/apache/tapestry5/blackbird_1_0");
-        configuration.add("tapestry.blackbird", "classpath:${tapestry.blackbird.path}");
+        configuration.add(SymbolConstants.BLACKBIRD, "classpath:${tapestry.blackbird.path}");
 
         configuration.add(SymbolConstants.PERSISTENCE_STRATEGY, PersistenceConstants.SESSION);