Coverage Report - pt.digitalis.dif.dem.objects.parameters.constraints.impl.ParameterConstraintAlphabeticImpl
 
Classes in this File Line Coverage Branch Coverage Complexity
ParameterConstraintAlphabeticImpl
0%
0/11
0%
0/6
1,4
ParameterConstraintAlphabeticImpl$1
0%
0/3
N/A
1,4
 
 1  0
 /**
 2  
  * 2007, Digitalis Informatica. All rights reserved. Distribuicao e Gestao de Informatica, Lda. Estrada de Paco de Arcos
 3  
  * num.9 - Piso -1 2780-666 Paco de Arcos Telefone: (351) 21 4408990 Fax: (351) 21 4408999 http://www.digitalis.pt
 4  
  */
 5  
 package pt.digitalis.dif.dem.objects.parameters.constraints.impl;
 6  
 
 7  
 import java.util.ArrayList;
 8  
 import java.util.HashMap;
 9  
 import java.util.List;
 10  
 import java.util.Map;
 11  
 
 12  
 import org.apache.commons.lang.StringUtils;
 13  
 
 14  
 import pt.digitalis.dif.dem.interfaces.IStageInstance;
 15  
 import pt.digitalis.dif.dem.objects.parameters.constraints.AbstractParameterConstraint;
 16  
 
 17  
 /**
 18  
  * Alphabetic parameter constraint implementation
 19  
  * 
 20  
  * @author Pedro Viegas <a href="mailto:pviegas@digitalis.pt">pviegas@digitalis.pt</a>
 21  
  * @created Oct 28, 2009
 22  
  */
 23  0
 public class ParameterConstraintAlphabeticImpl extends AbstractParameterConstraint {
 24  
 
 25  
     /** Supported classes by numeric constraints */
 26  
     @SuppressWarnings("serial")
 27  0
     final static private List<String> supportedClasses = new ArrayList<String>() {
 28  
 
 29  
         {
 30  0
             add(String.class.getCanonicalName());
 31  
         }
 32  
     };
 33  
 
 34  
     /** Last tested value */
 35  
     String lastTestedValue;
 36  
 
 37  
     /**
 38  
      * @see pt.digitalis.dif.dem.objects.parameters.constraints.IParameterConstraint#configureConstraint(java.lang.String)
 39  
      */
 40  
     public void configureConstraint(String configurationString)
 41  
     {
 42  
         // Nothing to do. No parameters to parse.
 43  0
     }
 44  
 
 45  
     /**
 46  
      * @see pt.digitalis.dif.dem.objects.parameters.constraints.AbstractParameterConstraint#getErrorMessageValues(boolean)
 47  
      */
 48  
     @Override
 49  
     protected Map<String, String> getErrorMessageValues(boolean parseValues)
 50  
     {
 51  0
         Map<String, String> substitutions = new HashMap<String, String>();
 52  0
         if (parseValues)
 53  
         {
 54  0
             substitutions.put("value", lastTestedValue);
 55  
         }
 56  
 
 57  0
         return substitutions;
 58  
     }
 59  
 
 60  
     /**
 61  
      * @see pt.digitalis.dif.dem.objects.parameters.constraints.IParameterConstraint#getJavaScriptValidationCondition()
 62  
      */
 63  
     public String getJavaScriptValidationCondition()
 64  
     {
 65  0
         return "(new RegExp(/^([a-zA-Z0-9 \u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+)$/).test(value))";
 66  
     }
 67  
 
 68  
     /**
 69  
      * @see pt.digitalis.dif.dem.objects.parameters.constraints.IParameterConstraint#isSupportedClass(java.lang.Class)
 70  
      */
 71  
     public boolean isSupportedClass(Class<?> clazz)
 72  
     {
 73  0
         return supportedClasses.contains(clazz.getCanonicalName());
 74  
     }
 75  
 
 76  
     /**
 77  
      * @see pt.digitalis.dif.dem.objects.parameters.constraints.IParameterConstraint#validateConstraint(java.lang.String,
 78  
      *      pt.digitalis.dif.dem.interfaces.IStageInstance)
 79  
      */
 80  
     public boolean validateConstraint(String value, IStageInstance stageInstance)
 81  
     {
 82  0
         lastTestedValue = value;
 83  
 
 84  0
         return (value == null || StringUtils.isAlphaSpace(value));
 85  
     }
 86  
 }