Classes in this File | Line Coverage | Branch Coverage | Complexity | ||||
ParameterConstraintAlphabeticImpl |
|
| 1.4;1,4 | ||||
ParameterConstraintAlphabeticImpl$1 |
|
| 1.4;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 | } |