/* * Copyright 2001-2008 Geert Bevin <gbevin[remove] at uwyn dot com> * Distributed under the terms of the GNU Lesser General License, v2.1 or later * $Id: WhereQuery.java 3918 2008-04-14 17:35:35Z gbevin $ */ package com.uwyn.rife.database.queries; import com.uwyn.rife.database.exceptions.DbQueryException; import java.util.List; interface WhereQuery<QueryType extends WhereQuery> { QueryType whereSubselect(Select query); QueryType where(String where); QueryType whereAnd(String where); QueryType whereOr(String where); WhereGroup<QueryType> startWhere(); WhereGroupAnd<QueryType> startWhereAnd(); WhereGroupOr<QueryType> startWhereOr(); QueryType where(String field, String operator, char value); QueryType where(String field, String operator, boolean value); QueryType where(String field, String operator, byte value); QueryType where(String field, String operator, double value); QueryType where(String field, String operator, float value); QueryType where(String field, String operator, int value); QueryType where(String field, String operator, long value); QueryType where(String field, String operator, short value); QueryType where(String field, String operator, Select query); QueryType where(String field, String operator, Object value); QueryType whereAnd(String field, String operator, char value); QueryType whereAnd(String field, String operator, boolean value); QueryType whereAnd(String field, String operator, byte value); QueryType whereAnd(String field, String operator, double value); QueryType whereAnd(String field, String operator, float value); QueryType whereAnd(String field, String operator, int value); QueryType whereAnd(String field, String operator, long value); QueryType whereAnd(String field, String operator, short value); QueryType whereAnd(String field, String operator, Select query); QueryType whereAnd(String field, String operator, Object value); QueryType whereOr(String field, String operator, char value); QueryType whereOr(String field, String operator, boolean value); QueryType whereOr(String field, String operator, byte value); QueryType whereOr(String field, String operator, double value); QueryType whereOr(String field, String operator, float value); QueryType whereOr(String field, String operator, int value); QueryType whereOr(String field, String operator, long value); QueryType whereOr(String field, String operator, short value); QueryType whereOr(String field, String operator, Select query); QueryType whereOr(String field, String operator, Object value); QueryType where(Object bean) throws DbQueryException; QueryType whereIncluded(Object bean, String[] includedFields) throws DbQueryException; QueryType whereExcluded(Object bean, String[] excludedFields) throws DbQueryException; QueryType whereFiltered(Object bean, String[] includedFields, String[] excludedFields) throws DbQueryException; void addWhereParameters(List<String> parameters); }