blob: db2d5109463b50c018b092e2d82343ceb8081b0d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
/*
* Copyright 2000-2013 Vaadin Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
package com.vaadin.data.validator;
import com.vaadin.data.Property;
import com.vaadin.data.util.converter.StringToIntegerConverter;
/**
* String validator for integers. See
* {@link com.vaadin.data.validator.AbstractStringValidator} for more
* information.
*
* @author Vaadin Ltd.
* @since 5.4
* @deprecated As of 7.0. Use a {@link StringToIntegerConverter} converter on
* the field instead or bind the field to a {@link Property} of type
* {@link Integer}.
*/
@SuppressWarnings("serial")
@Deprecated
public class IntegerValidator extends AbstractStringValidator {
/**
* Creates a validator for checking that a string can be parsed as an
* integer.
*
* @param errorMessage
* the message to display in case the value does not validate.
* @deprecated As of 7.0. Use an Integer converter on the field instead
* and/or use an {@link IntegerRangeValidator} for validating
* that the value is inside a given range.
*/
@Deprecated
public IntegerValidator(String errorMessage) {
super(errorMessage);
}
@Override
protected boolean isValidValue(String value) {
try {
Integer.parseInt(value);
return true;
} catch (Exception e) {
return false;
}
}
@Override
public void validate(Object value) throws InvalidValueException {
if (value != null && value instanceof Integer) {
// Allow Integers to pass through the validator for easier
// migration. Otherwise a TextField connected to an integer property
// with an IntegerValidator will fail.
return;
}
super.validate(value);
}
}
|