01: /*
02: * Copyright 2005-2006 the original author or authors.
03: *
04: * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
05: * in compliance with the License. You may obtain a copy of the License at
06: *
07: * http://www.apache.org/licenses/LICENSE-2.0
08: *
09: * Unless required by applicable law or agreed to in writing, software distributed under the License
10: * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
11: * or implied. See the License for the specific language governing permissions and limitations under
12: * the License.
13: */
14:
15: package org.strecks.validator;
16:
17: /**
18: * Simple interface for validating an object. Implementations are generally two types:
19: * <ul>
20: * <li><code>Validators</code> which uses raw form values. In this case, the parameterized type
21: * should be assignable from the type of the form property</li>
22: * <li><code>Validators</code> which use converted form values. In this case, validator needs to
23: * be used in conjunction with a <code>Converter</code>. At least one of the validators should be
24: * parameterized to the actual conversion type (e.g. <code>Integer</code>). Other validators can
25: * be parameterized to types assignable from the type of the converted value of the form property
26: * </li>
27: * </ul>
28: *
29: * Returns true if validation is successful, otherwise false.
30: * @author Phil Zoio
31: */
32: public interface Validator<T extends Object> {
33:
34: /**
35: * Returns true if validation is successful, otherwise false
36: */
37: public boolean validate(T value);
38: }
|