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, version 2.0,
6    as published by the Free Software Foundation.
7 
8    This program is also distributed with certain software (including
9    but not limited to OpenSSL) that is licensed under separate terms,
10    as designated in a particular file or component or in included license
11    documentation.  The authors of MySQL hereby grant you an additional
12    permission to link the program and your derivative works with the
13    separately licensed software that they have included with MySQL.
14 
15    This program is distributed in the hope that it will be useful,
16    but WITHOUT ANY WARRANTY; without even the implied warranty of
17    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18    GNU General Public License, version 2.0, for more details.
19 
20    You should have received a copy of the GNU General Public License
21    along with this program; if not, write to the Free Software
22    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
23 */
24 
25 package com.mysql.clusterj.core.store;
26 
27 import java.math.BigDecimal;
28 import java.math.BigInteger;
29 
30 /**
31  *
32  */
33 public interface ScanFilter {
34 
35     public enum BinaryCondition{COND_GE, COND_LE, COND_EQ, COND_GT, COND_LT, COND_LIKE}
36 
37     public enum Group {GROUP_AND, GROUP_OR, GROUP_NAND, GROUP_NOR}
38 
begin()39     public void begin();
40 
begin(Group group)41     public void begin(Group group);
42 
cmpBigInteger(BinaryCondition condition, Column storeColumn, BigInteger value)43     public void cmpBigInteger(BinaryCondition condition, Column storeColumn, BigInteger value);
44 
cmpBoolean(BinaryCondition condition, Column storeColumn, boolean value)45     public void cmpBoolean(BinaryCondition condition, Column storeColumn, boolean value);
46 
cmpByte(BinaryCondition condition, Column storeColumn, byte b)47     public void cmpByte(BinaryCondition condition, Column storeColumn, byte b);
48 
cmpBytes(BinaryCondition condition, Column storeColumn, byte[] value)49     public void cmpBytes(BinaryCondition condition, Column storeColumn, byte[] value);
50 
cmpDecimal(BinaryCondition condition, Column storeColumn, BigDecimal value)51     public void cmpDecimal(BinaryCondition condition, Column storeColumn, BigDecimal value);
52 
cmpDouble(BinaryCondition condition, Column storeColumn, double value)53     public void cmpDouble(BinaryCondition condition, Column storeColumn, double value);
54 
cmpFloat(BinaryCondition condition, Column storeColumn, float value)55     public void cmpFloat(BinaryCondition condition, Column storeColumn, float value);
56 
cmpShort(BinaryCondition condition, Column storeColumn, short shortValue)57     public void cmpShort(BinaryCondition condition, Column storeColumn, short shortValue);
58 
cmpInt(BinaryCondition condition, Column storeColumn, int value)59     public void cmpInt(BinaryCondition condition, Column storeColumn, int value);
60 
cmpLong(BinaryCondition condition, Column storeColumn, long longValue)61     public void cmpLong(BinaryCondition condition, Column storeColumn, long longValue);
62 
cmpString(BinaryCondition condition, Column storeColumn, String value)63     public void cmpString(BinaryCondition condition, Column storeColumn, String value);
64 
end()65     public void end();
66 
isNull(Column storeColumn)67     public void isNull(Column storeColumn);
68 
isNotNull(Column storeColumn)69     public void isNotNull(Column storeColumn);
70 
delete()71     public void delete();
72 
73 }
74