1 package org.seasar.cubby.validator.validators;
2
3 import org.seasar.cubby.util.CubbyUtils;
4 import org.seasar.cubby.validator.BaseValidator;
5 import org.seasar.cubby.validator.ValidationContext;
6
7
8
9
10
11
12 public class MinSizeValidator extends BaseValidator {
13
14
15
16
17 private final int min;
18
19
20
21
22
23 public MinSizeValidator(final int min) {
24 this(min, "valid.minSize");
25 }
26
27
28
29
30
31
32 public MinSizeValidator(final int min, final String messageKey) {
33 this.min = min;
34 this.setMessageKey(messageKey);
35 }
36
37 public String validate(final ValidationContext ctx) {
38 final Object value = ctx.getValue();
39 if (value == null) {
40 return null;
41 }
42 int size = CubbyUtils.getObjectSize(value);
43 if (size >= min) {
44 return null;
45 } else {
46 return getMessage(getPropertyMessage(ctx.getName()), min);
47 }
48 }
49 }