dgraham     2003/08/27 16:33:25

  Modified:    src/share/org/apache/struts/taglib/html
                        JavascriptValidatorTag.java
  Log:
  Refactored stopOnError logic into its own method.
  
  Revision  Changes    Path
  1.38      +28 -17    
jakarta-struts/src/share/org/apache/struts/taglib/html/JavascriptValidatorTag.java
  
  Index: JavascriptValidatorTag.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-struts/src/share/org/apache/struts/taglib/html/JavascriptValidatorTag.java,v
  retrieving revision 1.37
  retrieving revision 1.38
  diff -u -r1.37 -r1.38
  --- JavascriptValidatorTag.java       28 Jul 2003 14:38:15 -0000      1.37
  +++ JavascriptValidatorTag.java       27 Aug 2003 23:33:25 -0000      1.38
  @@ -418,15 +418,8 @@
   
           List actions = this.createActionList(resources, form);
   
  -        Object stopOnErrorObj = 
pageContext.getAttribute(ValidatorPlugIn.STOP_ON_ERROR_KEY + '.'+ config.getPrefix(),
  -                PageContext.APPLICATION_SCOPE);
  -        boolean stopOnError = true;
  -        if (stopOnErrorObj != null && (stopOnErrorObj instanceof Boolean)) {
  -            stopOnError = ((Boolean)stopOnErrorObj).booleanValue();
  -        }
  -
  -
  -        
results.append(this.getJavascriptBegin(this.createMethods(actions,stopOnError)));
  +        final String methods = this.createMethods(actions, 
this.stopOnError(config));
  +        results.append(this.getJavascriptBegin(methods));
   
           for (Iterator i = actions.iterator(); i.hasNext();) {
               ValidatorAction va = (ValidatorAction) i.next();
  @@ -532,6 +525,27 @@
       }
   
       /**
  +     * Determines if validations should stop on an error.
  +     * @param config The <code>ModuleConfig</code> used to lookup the 
  +     * stopOnError setting.
  +     * @return <code>true</code> if validations should stop on errors.
  +     */
  +    private boolean stopOnError(ModuleConfig config) {
  +        Object stopOnErrorObj =
  +            pageContext.getAttribute(
  +                ValidatorPlugIn.STOP_ON_ERROR_KEY + '.' + config.getPrefix(),
  +                PageContext.APPLICATION_SCOPE);
  +                
  +        boolean stopOnError = true;
  +        
  +        if (stopOnErrorObj instanceof Boolean) {
  +            stopOnError = ((Boolean) stopOnErrorObj).booleanValue();
  +        }
  +        
  +        return stopOnError;
  +    }
  +
  +    /**
        * Creates the JavaScript methods list from the given actions.
        * @param actions A List of ValidatorAction objects.
        * @param stopOnError If true, behaves like released version of struts 1.1
  @@ -540,10 +554,7 @@
        */
       private String createMethods(List actions, boolean stopOnError) {
           String methods = null;
  -        String methodOperator = " && ";
  -        if (!stopOnError) {
  -            methodOperator= " & ";
  -        }
  +        final String methodOperator = stopOnError ? " && " : " & ";
   
           Iterator iter = actions.iterator();
           while (iter.hasNext()) {
  
  
  

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

Reply via email to