craigmcc    2003/02/08 13:20:20

  Modified:    src/share/org/apache/struts/util RequestUtils.java
  Log:
  Formally document the behavior of forwardURL() so that people will know
  what to expect (and what we test for).  No functionality changes.
  
  Revision  Changes    Path
  1.83      +38 -8     
jakarta-struts/src/share/org/apache/struts/util/RequestUtils.java
  
  Index: RequestUtils.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-struts/src/share/org/apache/struts/util/RequestUtils.java,v
  retrieving revision 1.82
  retrieving revision 1.83
  diff -u -r1.82 -r1.83
  --- RequestUtils.java 7 Feb 2003 05:25:23 -0000       1.82
  +++ RequestUtils.java 8 Feb 2003 21:20:19 -0000       1.83
  @@ -1350,10 +1350,40 @@
       }
   
       /**
  -     * Return the context-relative URL that corresponds to the specified
  -     * {@link ForwardConfig}, relative to the module associated
  -     * with the current {@link ModuleConfig}. The forward path is
  -     * gracefully prefixed with a '/' according to the boolean.
  +     * <p>Return the context-relative URL that corresponds to the specified
  +     * {@link ForwardConfig}, calculated based on the properties of the
  +     * {@link ForwardConfig} instance as follows:</p>
  +     * <ul>
  +     * <li>If the <code>contextRelative</code> property is set, it is
  +     *     assumed that the <code>path</code> property contains a path
  +     *     that is already context-relative:
  +     *     <ul>
  +     *     <li>If the <code>path</code> property value starts with a slash,
  +     *         it is returned unmodified.</li>
  +     *     <li>If the <code>path</code> property value does not start
  +     *         with a slash, a slash is prepended.</li>
  +     *     </ul></li>
  +     * <li>Acquire the <code>forwardPattern</code> property from the
  +     *     <code>ControllerConfig</code> for the application module used
  +     *     to process this request.  If no pattern was configured, default
  +     *     to a pattern of <code>$M$P</code>, which is compatible with the
  +     *     hard-coded mapping behavior in Struts 1.0.</li>
  +     * <li>Process the acquired <code>forwardPattern</code>, performing the
  +     *     following substitutions:
  +     *     <ul>
  +     *     <li><strong>$M</strong> - Replaced by the module prefix for the
  +     *         application module processing this request.</li>
  +     *     <li><strong>$P</strong> - Replaced by the <code>path</code>
  +     *         property of the specified {@link ForwardConfig}, prepended
  +     *         with a slash if it does not start with one.</li>
  +     *     <li><strong>$$</strong> - Replaced by a single dollar sign
  +     *         character.</li>
  +     *     <li><strong>$x</strong> (where "x" is any charater not listed
  +     *         above) - Silently omit these two characters from the result
  +     *         value.  (This has the side effect of causing all other
  +     *         $+letter combinations to be reserved.)</li>
  +     *     </ul></li>
  +     * </ul>
        *
        * @param request The servlet request we are processing
        * @param forward ForwardConfig to be evaluated
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to