]> review.fuel-infra Code Review - packages/trusty/mysql-wsrep-5.6.git/blob
df6ff9fe409a37f09acca8e4b7c62c6e6e542380
[packages/trusty/mysql-wsrep-5.6.git] /
1 /*
2    Copyright (c) 2010, 2011, Oracle and/or its affiliates. All rights reserved.
3
4    This program is free software; you can redistribute it and/or modify
5    it under the terms of the GNU General Public License as published by
6    the Free Software Foundation; version 2 of the License.
7
8    This program is distributed in the hope that it will be useful,
9    but WITHOUT ANY WARRANTY; without even the implied warranty of
10    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11    GNU General Public License for more details.
12
13    You should have received a copy of the GNU General Public License
14    along with this program; if not, write to the Free Software
15    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
16 */
17
18 package com.mysql.clusterj.query;
19
20 /** PredicateOperand represents a column or parameter that can be compared to
21  * another
22  *
23  */
24 public interface PredicateOperand {
25
26     /** Return a Predicate representing comparing this to another using
27      * "equal to" semantics.
28      *
29      * @param other the other PredicateOperand
30      * @return a new Predicate
31      */
32     Predicate equal(PredicateOperand other);
33
34     /** Return a Predicate representing comparing this to another using
35      * "greater than" semantics.
36      *
37      * @param other the other PredicateOperand
38      * @return a new Predicate
39      */
40     Predicate greaterThan(PredicateOperand other);
41
42     /** Return a Predicate representing comparing this to another using
43      * "greater than or equal to" semantics.
44      *
45      * @param other the other PredicateOperand
46      * @return a new Predicate
47      */
48     Predicate greaterEqual(PredicateOperand other);
49
50     /** Return a Predicate representing comparing this to another using
51      * "less than" semantics.
52      *
53      * @param other the other PredicateOperand
54      * @return a new Predicate
55      */
56     Predicate lessThan(PredicateOperand other);
57
58     /** Return a Predicate representing comparing this to another using
59      * "less than or equal to" semantics.
60      *
61      * @param other the other PredicateOperand
62      * @return a new Predicate
63      */
64     Predicate lessEqual(PredicateOperand other);
65
66     /** Return a Predicate representing comparing this to another using
67      * "between" semantics.
68      *
69      * @param lower another PredicateOperand
70      * @param upper another PredicateOperand
71      * @return a new Predicate
72      */
73     Predicate between(PredicateOperand lower, PredicateOperand upper);
74
75     /** Return a Predicate representing comparing this to a collection of
76      * values using "in" semantics.
77      *
78      * @param other another PredicateOperand
79      * @return a new Predicate
80      */
81     Predicate in(PredicateOperand other);
82
83     /** Return a Predicate representing comparing this to another using 
84      * "like" semantics.
85      *
86      * @param other another PredicateOperand
87      * @return a new Predicate
88      */
89     Predicate like(PredicateOperand other);
90
91 }