KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > daffodilwoods > daffodildb > server > sql99 > dql > plan > condition > _BVEPlan


1 package com.daffodilwoods.daffodildb.server.sql99.dql.plan.condition;
2
3 import com.daffodilwoods.daffodildb.server.sql99.dql.plan.condition._BVESingleTablePlan;
4 import com.daffodilwoods.daffodildb.server.sql99.expression.booleanvalueexpression.*;
5 import com.daffodilwoods.daffodildb.server.sql99.dql.plan.condition._AllTablesJoinRelation;
6 import com.daffodilwoods.daffodildb.server.sql99.dql.*;
7 import com.daffodilwoods.database.resource.DException;
8 import com.daffodilwoods.daffodildb.server.sql99.common.TableDetails;
9
10 /**
11  * It represents the plan for condition. It is needed in optimal execution of
12  * condition.
13  * <p>Title: </p>
14  * <p>Description: </p>
15  * <p>Copyright: Copyright (c) 2003</p>
16  * <p>Company: </p>
17  * @author unascribed
18  * @version 1.0
19  */

20
21 public interface _BVEPlan {
22
23    /**
24     * It is required to get the type of condition, so as to optimally merge it
25     * with some other conditions.
26     * @return int type representing conditionwhich can be SINGLETABLE, JOIN,
27     * AGGREGATES.
28     * @throws DException
29     */

30
31    public int getType() throws DException;
32
33    /**
34     * It helps in obtaining tables, to which columns present in condition,
35     * belongs.
36     * @return tables belonging to condition
37     * @throws DException
38     */

39
40    public TableDetails[] getTableDetails() throws DException;
41
42    /**
43     * It helps in obtaining aggregate condition.
44     * @return aggregate condition
45     * @throws DException
46     */

47
48    public booleanvalueexpression getAggregateCondition() throws DException;
49
50    /**
51     * It helps in getting condition which can't be shifted to single table,
52     * and can't be considered as join or aggregate. It is solved as non indexed
53     * condition.
54     * @return non indexed condition
55     * @throws DException
56     */

57
58    public booleanvalueexpression getRemainingCondition() throws DException;
59
60    /**
61     * It helps in obtaining all the join relations present in query.
62     * @return Join relations for all tables.
63     * @throws DException
64     */

65
66    public _AllTablesJoinRelation getAllTableJoinRelation() throws DException;
67
68    /**
69     * It is required to get conditions which are restricted to single table.
70     * @return Array of BveSingleTablePlan.
71     * @throws DException
72     */

73
74    public _BVESingleTablePlan[] getBVESingleTablePlans() throws DException;
75
76    /**
77     * Sets the conditions for single table.
78     * @param bveSingleTablePlans
79     * @throws DException
80     */

81
82    public void setBVESingleTablePlans(_BVESingleTablePlan[] bveSingleTablePlans) throws DException;
83
84    /**
85     * Sets the non indexed condition.
86     * @param remainingCondition
87     * @throws DException
88     */

89
90    public void setRemainingCondition(booleanvalueexpression remainingCondition) throws DException;
91 }
92
Popular Tags