vgritsenko    2002/10/21 20:21:58

  Modified:    .        changes.xml
               src/java/org/apache/cocoon/generation
                        SessionAttributeGenerator.java
  Log:
      Src attribute can be used now with SessionAttributeGenerator to specify
      session attribute name. Old syntax preserved.
  
  Revision  Changes    Path
  1.271     +5 -1      xml-cocoon2/changes.xml
  
  Index: changes.xml
  ===================================================================
  RCS file: /home/cvs/xml-cocoon2/changes.xml,v
  retrieving revision 1.270
  retrieving revision 1.271
  diff -u -r1.270 -r1.271
  --- changes.xml       22 Oct 2002 02:22:14 -0000      1.270
  +++ changes.xml       22 Oct 2002 03:21:58 -0000      1.271
  @@ -41,6 +41,10 @@
   
    <release version="@version@" date="@date@">
     <action dev="VG" type="update">
  +    Src attribute can be used now with SessionAttributeGenerator to specify
  +    session attribute name. Old syntax preserved.
  +  </action>
  +  <action dev="VG" type="update">
       Local parameters in SessionStateAction still do override global parameters,
       but do NOT change global parameters.
     </action>
  
  
  
  1.2       +16 -17    
xml-cocoon2/src/java/org/apache/cocoon/generation/SessionAttributeGenerator.java
  
  Index: SessionAttributeGenerator.java
  ===================================================================
  RCS file: 
/home/cvs/xml-cocoon2/src/java/org/apache/cocoon/generation/SessionAttributeGenerator.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- SessionAttributeGenerator.java    5 Mar 2002 15:45:11 -0000       1.1
  +++ SessionAttributeGenerator.java    22 Oct 2002 03:21:58 -0000      1.2
  @@ -70,24 +70,28 @@
   import java.util.Map;
   
   /**
  - * Generates a document from a session attribute. The attribute may be a DOM node, 
an
  - * an <code>XMLizable</code>, or any other object, and is streamed using the same
  - * rules as for &lt;xsp:expr&gt; in XSPs (see {@link XSPObjectHelper}).
  + * Generates a document from a session attribute. The attribute may be a DOM
  + * node, an <code>XMLizable</code>, or any other object, and is streamed using
  + * the same rules as for &lt;xsp:expr&gt; in XSPs (see {@link XSPObjectHelper}).
    * <p>
  - * This generator has 2 parameters :
  + * Name of the session attribute is specified using src attribute of the generate
  + * tag, or, if no src tag present, using attr-name parameter.
  + * <p>
  + * This generator has 2 parameters:
    * <ul>
  - * <li><code>attr-name</code> : the session attribute name (mandatory).
  + * <li><code>attr-name</code> : the session attribute name (mandatory if no src
  + *     attribute specified).
    * </li>
  - * <li><code>root-element</code> (optional) : the name of the root element of the 
produced
  - *     document. This parameter is optional if the session attribute is a DOM or an
  - *     <code>XMLizable</code>.
  + * <li><code>root-element</code> (optional) : the name of the root element of the
  + *     produced document. This parameter is optional if the session attribute is
  + *     a DOM or an <code>XMLizable</code>.
    * </li>
    * </ul>
    * <p>
    * Example usage :
    * <pre>
    *   &lt;map:generator name="session-attr" logger="sitemap.generator.session-attr"
  - *     src="org.apache.cocoon.generation.ReadDOMSessionGenerator"/&gt;
  + *     src="org.apache.cocoon.generation.SessionAttributeGenerator"/&gt;
    *   ...
    *   &lt;map:generate type="session-attr"&gt;
    *     &lt;map:parameter name="attr-name" value="myAttribute"/&gt;
  @@ -101,8 +105,7 @@
    * @author <a href="mailto:sylvain@;apache.org">Sylvain Wallez</a>
    * @version $Id$
    */
  -
  -public class SessionAttributeGenerator extends AbstractGenerator{
  +public class SessionAttributeGenerator extends AbstractGenerator {
   
       public static final String ATTR_NAME = "attr-name";
       public static final String ELEMENT_NAME = "root-element";
  @@ -125,7 +128,7 @@
           this.elementName = par.getParameter(ELEMENT_NAME, null);
           
           // Get the attribute name
  -        String attrName = par.getParameter(ATTR_NAME, null);
  +        String attrName = par.getParameter(ATTR_NAME, src);
           if (attrName == null) {
               String msg = "SessionAttributeGenerator needs an attribute name !";
               getLogger().error(msg);
  @@ -141,13 +144,11 @@
           
           // Controls
           if (this.attrObject == null) {
  -            
               if (this.elementName == null) {
                   // Can't generate nothing...
                   String msg = "Session attribute '" + attrName + "' doesn't exist";
                   getLogger().error(msg);
                   throw new ProcessingException(msg);
  -                
               } else {
                   if (getLogger().isDebugEnabled()) {
                       getLogger().debug("Session attribute '" + attrName +
  @@ -155,9 +156,7 @@
                           "' element.");
                   }
               }
  -
           } else {
  -            
               // Need an element name for non-xml objects
               if (this.elementName == null &&
                   ! (this.attrObject instanceof XMLizable) &&
  
  
  

----------------------------------------------------------------------
In case of troubles, e-mail:     [EMAIL PROTECTED]
To unsubscribe, e-mail:          [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to