1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.springmodules.validation.util.condition;
18
19 /**
20 * Represents a instantCondition that can be checked against an object.
21 *
22 * @author Uri Boness
23 */
24 public interface Condition {
25
26 /**
27 * Returns whether the given object adheres to this condition.
28 *
29 * @param object The checked object.
30 * @return <code>true</code> if the object adheres to this condition, <code>false</code> otherwise.
31 */
32 boolean check(Object object);
33
34 /**
35 * Creates and returns a new condition that represents the logical AND of this condition and the given one.
36 *
37 * @param condition The condition to intersect with this condition.
38 * @return A new condition that represents the logical AND of this condition and the given one.
39 */
40 Condition and(Condition condition);
41
42 /**
43 * Creates and returns a new condition that represents the logical OR of this condition and the given one.
44 *
45 * @param condition The condition to unite with this condition.
46 * @return A new condition that represents the logical OR of this condition and the given one.
47 */
48 Condition or(Condition condition);
49
50 }