Classes in this File | Line Coverage | Branch Coverage | Complexity | ||||
DefaultValidationRules |
|
| 0.0;0 |
1 | package org.seasar.cubby.validator; | |
2 | ||
3 | import java.util.ArrayList; | |
4 | import java.util.List; | |
5 | ||
6 | /** | |
7 | * 入力検証を保持するクラス | |
8 | * @author agata | |
9 | */ | |
10 | public class DefaultValidationRules implements ValidationRules { | |
11 | ||
12 | /** | |
13 | * 入力検証ルールのリス? | |
14 | */ | |
15 | 12 | public final List<ValidationRule> rules = new ArrayList<ValidationRule>(); |
16 | ||
17 | /** | |
18 | * メ?セージキーのプリフィ?クス | |
19 | */ | |
20 | private final String resourceKeyPrefix; | |
21 | ||
22 | /** | |
23 | * メ?セージキーのプリフィ?クスなし?コンストラクタ | |
24 | */ | |
25 | public DefaultValidationRules() { | |
26 | 11 | this(null); |
27 | 11 | } |
28 | ||
29 | /** | |
30 | * メ?セージキーのプリフィ?クス付きのコンストラクタ | |
31 | * @param resourceKeyPrefix メ?セージキーのプリフィ?クス | |
32 | */ | |
33 | 12 | public DefaultValidationRules(final String resourceKeyPrefix) { |
34 | 12 | this.resourceKeyPrefix = resourceKeyPrefix; |
35 | 12 | initialize(); |
36 | 12 | } |
37 | ||
38 | /** | |
39 | * 初期化メソ?ド?? | |
40 | * こ?メソ?ドをサブクラスでオーバ?ライドして??目の入力検証ルールを追?します?? | |
41 | */ | |
42 | public void initialize() { | |
43 | 9 | } |
44 | ||
45 | /** | |
46 | * 入力検証ルールを追?します?? | |
47 | * @param rule 入力検証ルール | |
48 | */ | |
49 | protected void add(final ValidationRule rule) { | |
50 | 15 | rules.add(rule); |
51 | 15 | } |
52 | ||
53 | /** | |
54 | * 入力検証ルールを追?します?? | |
55 | * ?目名?メ?セージキーとしてパラメータ名が使用されます?? | |
56 | * @param paramName パラメータ? | |
57 | * @param validators 入力検証ルールリス? | |
58 | */ | |
59 | public void add(final String paramName, final Validator... validators) { | |
60 | 14 | add(paramName, paramName, validators); |
61 | 14 | } |
62 | /** | |
63 | * ?目名?メ?セージキーを指定して入力検証ルールを追?します?? | |
64 | * @param paramName パラメータ? | |
65 | * @param paramNameMessageKey ?目名?メ?セージキー | |
66 | * @param validators 入力検証ルールリス? | |
67 | */ | |
68 | public void add(final String paramName, final String paramNameMessageKey, final Validator... validators) { | |
69 | 14 | add(new PropertyValidationRule(paramName, makePropertyNameKey(paramNameMessageKey), validators)); |
70 | 14 | } |
71 | ||
72 | /** | |
73 | * メ?セージキーを作?します?? | |
74 | * キーのプリフィ?クスが指定されて?た?合?メ?セージキーに付加します?? | |
75 | * @param messageKey メ?セージキー | |
76 | * @return 作?後?メ?セージキー | |
77 | */ | |
78 | private String makePropertyNameKey(final String messageKey) { | |
79 | 14 | if (resourceKeyPrefix == null) { |
80 | 12 | return messageKey; |
81 | } else { | |
82 | 2 | return resourceKeyPrefix + messageKey; |
83 | } | |
84 | } | |
85 | ||
86 | /** | |
87 | * 入力検証ルールを取得します?? | |
88 | * @see ValidationRules#getRules() | |
89 | */ | |
90 | public List<ValidationRule> getRules() { | |
91 | 8 | return rules; |
92 | } | |
93 | ||
94 | } |