You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by hl...@apache.org on 2003/01/25 03:34:03 UTC

cvs commit: jakarta-tapestry/doc/src/UsersGuide/images README

hlship      2003/01/24 18:34:03

  Modified:    doc/src/common TapestryLinks.xml
               doc/src/UsersGuide configuration.xml TapestryUsersGuide.xml
  Added:       doc/src/UsersGuide/images README
  Log:
  Add list of application extension points to user's guide.
  
  Revision  Changes    Path
  1.22      +7 -2      jakarta-tapestry/doc/src/common/TapestryLinks.xml
  
  Index: TapestryLinks.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/doc/src/common/TapestryLinks.xml,v
  retrieving revision 1.21
  retrieving revision 1.22
  diff -u -r1.21 -r1.22
  --- TapestryLinks.xml	22 Jan 2003 16:51:19 -0000	1.21
  +++ TapestryLinks.xml	25 Jan 2003 02:34:03 -0000	1.22
  @@ -31,6 +31,7 @@
   <!ENTITY BaseEngine '<ulink url="&ApiRoot;/engine/BaseEngine.html"><classname>BaseEngine</classname></ulink>'>
   <!ENTITY BasePage '<ulink url="&ApiRoot;/html/BasePage.html"><classname>BasePage</classname></ulink>'>
   <!ENTITY Default '<ulink url="&ApiRoot;/bean/Default.html"><classname>Default</classname></ulink>'>
  +<!ENTITY DefaultValuePersister '<ulink url="&ApiRoot;/record/DefaultValuePersister.html"><classname>DefaultValuePersister</classname></ulink>'>
   <!ENTITY Enum '<ulink url="&ApiRoot;/util/Enum.html"><classname>Enum</classname></ulink>'>
   <!ENTITY EnumPropertySelectionModel '<ulink url="&ApiRoot;/form/EnumPropertySelectionModel.html"><classname>EnumPropertySelectionModel</classname></ulink>'>
   <!ENTITY EvenOdd '<ulink url="&ApiRoot;/bean/EvenOdd.html"><classname>EvenOdd</classname></ulink>'>
  @@ -45,14 +46,17 @@
   <!ENTITY IEngineService '<ulink url="&ApiRoot;/IEngineService.html"><classname>IEngineService</classname></ulink>'>
   <!ENTITY ILifecycle '<classname>ILifecycle</classname>'>
   <!ENTITY IMarkupWriter '<ulink url="&ApiRoot;/IMarkupWriter.html"><classname>IMarkupWriter</classname></ulink>'>
  +<!ENTITY IMonitor '<ulink url="&ApiRoot;/IMonitor.html"><classname>IMonitor</classname></ulink>'>
   <!ENTITY IPage '<ulink url="&ApiRoot;/IPage.html"><classname>IPage</classname></ulink>'>
   <!ENTITY IPageRecorder '<ulink url="&ApiRoot;/IPageRecorder.html"><classname>IPageRecorder</classname></ulink>'>
   <!ENTITY IPropertySelectionModel '<ulink url="&ApiRoot;/form/IPropertySelectionModel.html"><classname>IPropertySelectionModel</classname></ulink>'>
   <!ENTITY IPropertySource '<ulink url="&ApiRoot;/IPropertySource.html"><classname>IPropertySource</classname></ulink>'>
   <!ENTITY IPoolable '<ulink url="&ApiRoot;/util/pool/IPoolable.html"><classname>IPoolable</classname></ulink>'>
   <!ENTITY IRequestCycle '<ulink url="&ApiRoot;/IRequestCycle.html"><classname>IRequestCycle</classname></ulink>'>
  +<!ENTITY IRequestDecoder '<ulink url="&ApiRoot;/IRequestDecoder.html"><classname>IRequestDecoder</classname></ulink>'>
   <!ENTITY IValidator '<ulink url="&ApiRoot;/valid/IValidator.html"><classname>IValidator</classname></ulink>'>
   <!ENTITY IValidationDelegate '<ulink url="&ApiRoot;/valid/IValidationDelegate.html"><classname>IValidationDelegate</classname></ulink>'>
  +<!ENTITY IValuePersister '<ulink url="&ApiRoot;/record/IValuePersister.html"><classname>IValuePersister</classname></ulink>'>
   <!ENTITY IField '<ulink url="&ApiRoot;/valid/IField.html"><classname>IField</classname></ulink>'>
   <!ENTITY IUploadFile '<ulink url="&ApiRoot;/IUploadFile.html"><classname>IUploadFile</classname></ulink>'>
   <!ENTITY PageCleanupListener '<ulink url="&ApiRoot;/event/PageCleanupListener.html"><classname>PageCleanupListener</classname></ulink>'>
  @@ -111,6 +115,7 @@
   
   <!ENTITY Ant '<ulink url="http://jakarta.apache.org/ant">Ant</ulink>'>
   <!ENTITY BSF '<ulink url="http://jakarta.apache.org/bsf">BSF</ulink>'>
  +<!ENTITY BCEL '<ulink url="http://jakarta.apache.org/bcel">BCEL</ulink>'>
   <!ENTITY DocBook '<ulink url="http://docbook.sourceforge.net/">DocBook</ulink>'>
   <!ENTITY Eclipse '<ulink url="http://www.eclipse.org">Eclipse</ulink>'>
   <!ENTITY Fop '<ulink url="http://xml.apache.org/fop">FOP</ulink>'>
  @@ -121,7 +126,7 @@
   <!ENTITY Jython '<ulink url="http://www.jython.org">Jython</ulink>'>
   <!ENTITY OGNL '<ulink url="http://www.ognl.org">OGNL</ulink>'>
   <!ENTITY Saxon '<ulink url="http://sf.net/projects/saxon">Saxon</ulink>'>
  -<!ENTITY TapestryHomePage '<ulink url="http://tapestry.sf.net">Tapestry Home Page</ulink>'>
  +<!ENTITY TapestryHomePage '<ulink url="http://jakarta.apache.org/proposals/tapestry">Tapestry Home Page</ulink>'>
   <!ENTITY TapestryProjectPage '<ulink url="http://sf.net/projects/tapestry">Tapestry Project Page</ulink>'>
   
   <!-- Other useful stuff -->
  
  
  
  1.4       +80 -3     jakarta-tapestry/doc/src/UsersGuide/configuration.xml
  
  Index: configuration.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/doc/src/UsersGuide/configuration.xml,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- configuration.xml	22 Jan 2003 16:51:19 -0000	1.3
  +++ configuration.xml	25 Jan 2003 02:34:03 -0000	1.4
  @@ -137,13 +137,14 @@
   <para>
   Tapestry occasionally must obtain a value for a configuration property.    These configuration
   properties are items that are frequently optional, and don't fit into any particular
  -specification.  Many are related to the runtime environment, such as ...
  +specification.  Many are related to the runtime environment, such as which class to instantiate as the
  +Visit object.
   </para>
   
   <para>
   Tapestry
   is very flexible about where values for such properties may be obtained.  In general,
  -the search path for properties is:
  +the search path for configuration properties is:
   </para>
   
   <itemizedlist>
  @@ -351,6 +352,82 @@
   
   </section>  <!-- configuration.search-path -->
   
  +<section id="configuration.extensions">
  +	<title>Application Extensions</title>
  +	
  +<para>Tapestry is designed for flexibility; this extends beyond simply configuration
  +	behavior, and encompasses actually replacing or augmenting behavior.  In some cases,
  +	it is necessary to subclass framework classes in order to alter behavior, but in
  +	many cases, it is possible to use an application extension.
  +	</para>
  +	
  +<para>
  +	Application extensions are JavaBeans declared in the application specification using
  +	the &spec.extension; element.  Each extension consists of a name, a Java class
  +	to instantiate, and an optional configuration (that is, properties of the
  +	bean may be set).  The framework has a finite number of extension points.  If an extension
  +	bean with the correct name exists, it will be used at that extension point.
  +	</para>
  +	
  +	<para>
  +	Each application extension must implement an interface particular
  +	to the extension point.
  +	</para>
  +	
  +<variablelist>
  +	<title>Application Extension Points</title>
  +	
  +<varlistentry>
  +	<term>net.sf.tapestry.property-source (&IPropertySource;)</term>
  +	<listitem>
  +	<para>
  +		This extension
  +		is fit into the configuration property search path, after the servlet context, but
  +		before JVM system properties.  A typical use would be to access some set of configuration
  +		properties stored in a database.
  +		</para>	
  +		</listitem>
  +</varlistentry>
  +
  +<varlistentry>
  +	<term>net.sf.tapestry.request-decoder (&IRequestDecoder;)</term>
  +	<listitem>
  +	<para>
  +		A request decoder is used
  +		to identify the actual server name, server port, scheme and request URI for the
  +		request.  In some configurations, a firewall may invalidate the values provided by
  +		the actual &HttpServletRequest; (the values reflect the internal server forwarded
  +		to by the firewall, not the actual values used by the external client).  A
  +		request decoder knows how to determine the actual values.</para>	
  +	</listitem>	
  +</varlistentry>	
  +
  +<varlistentry>
  +	<term>net.sf.tapestry.monitor (&IMonitor;)</term>
  +
  +	<listitem>
  +	<para>A monitor is informed
  +	about key events during each request and it intended to support performance
  +	monitoring.
  +	</para>	
  +	</listitem>	
  +</varlistentry>
  +
  +<varlistentry>
  +	<term>net.sf.tapestry.value-persister (&IValuePersister;)</term>
  +
  +	<listitem>
  +	<para>
  +	An object responsible for copying persistent page properties for storage.  If not
  +	provided, an instance of &DefaultValuePersister; is used.
  +	</para>
  +	</listitem>	
  +</varlistentry>
  +
  +</variablelist>
  +
  +	
  +</section>  <!-- configuration.extensions -->
   
   
   </chapter>
  
  
  
  1.4       +2 -2      jakarta-tapestry/doc/src/UsersGuide/TapestryUsersGuide.xml
  
  Index: TapestryUsersGuide.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-tapestry/doc/src/UsersGuide/TapestryUsersGuide.xml,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- TapestryUsersGuide.xml	24 Jan 2003 00:49:34 -0000	1.3
  +++ TapestryUsersGuide.xml	25 Jan 2003 02:34:03 -0000	1.4
  @@ -85,7 +85,7 @@
       </author>
       <copyright>
         <year>2003</year>
  -      <holder>Howard M. Lewis Ship</holder>
  +      <holder>The Apache Software Foundation</holder>
       </copyright>
     </bookinfo>
         
  
  
  
  1.1                  jakarta-tapestry/doc/src/UsersGuide/images/README
  
  Index: README
  ===================================================================
  Images for the user's guide.  Eventually, we'll move over stuff from the Developer's Guide.