svn-gvsig-desktop / trunk / org.gvsig.desktop / org.gvsig.desktop.compat.cdc / org.gvsig.fmap.dal / org.gvsig.fmap.dal.api / src / main / java / org / gvsig / fmap / dal / SQLBuilder.java @ 43020
History | View | Annotate | Download (9.27 KB)
1 | 43020 | jjdelcerro | package org.gvsig.fmap.dal; |
---|---|---|---|
2 | |||
3 | import java.util.List; |
||
4 | |||
5 | public interface SQLBuilder extends ExpressionBuilder { |
||
6 | |||
7 | public enum Privilege { |
||
8 | SELECT, |
||
9 | INSERT, |
||
10 | UPDATE, |
||
11 | DELETE, |
||
12 | TRUNCATE, |
||
13 | REFERENCE, |
||
14 | TRIGGER, |
||
15 | ALL |
||
16 | }; |
||
17 | |||
18 | public interface Statement extends Visitable { |
||
19 | |||
20 | } |
||
21 | |||
22 | public interface SQLConfig extends Config { |
||
23 | public final static String default_schema = "default_schema"; |
||
24 | |||
25 | public final static String allowAutomaticValues = "allowAutomaticValues"; |
||
26 | |||
27 | public final static String ST_ExtentAggregate = "ST_ExtentAggregate"; |
||
28 | public final static String ST_UnionAggregate = "ST_UnionAggregate"; |
||
29 | public final static String count = "count"; |
||
30 | public final static String count_distinct = "count_distinct"; |
||
31 | |||
32 | public final static String type_boolean = "type_boolean"; |
||
33 | public final static String type_byte = "type_byte"; |
||
34 | public final static String type_bytearray = "type_bytearray"; |
||
35 | public final static String type_geometry = "type_geometry"; |
||
36 | public final static String type_char = "type_char"; |
||
37 | public final static String type_date = "type_date"; |
||
38 | public final static String type_double = "type_double"; |
||
39 | public final static String type_numeric_p = "type_numeric_p"; |
||
40 | public final static String type_numeric_ps = "type_numeric_ps"; |
||
41 | public final static String type_bigdecimal = "type_bigdecimal"; |
||
42 | public final static String type_float = "type_float"; |
||
43 | public final static String type_int = "type_int"; |
||
44 | public final static String type_long = "type_long"; |
||
45 | public final static String type_string = "type_string"; |
||
46 | public final static String type_string_p = "type_string_p"; |
||
47 | public final static String type_time = "type_time"; |
||
48 | public final static String type_timestamp = "type_timestamp"; |
||
49 | public final static String type_version = "type_version"; |
||
50 | public final static String type_URI = "type_URI"; |
||
51 | public final static String type_URL = "type_URL"; |
||
52 | public final static String type_FILE = "type_FILE"; |
||
53 | public final static String type_FOLDER = "type_FOLDER"; |
||
54 | |||
55 | public final static String DELETE_FROM_table_WHERE_expresion = "DELETE_FROM_table_WHERE_expresion"; |
||
56 | public final static String DELETE_FROM_table = "DELETE_FROM_table"; |
||
57 | public final static String INSERT_INTO_table_columns_VALUES_values = "INSERT_INTO_table_columns_VALUES_values"; |
||
58 | public final static String UPDATE_TABLE_STATISTICS_table = "UPDATE_TABLE_STATISTICS_table"; |
||
59 | public final static String DROP_TABLE_table = "DROP_TABLE_table"; |
||
60 | public final static String DELETE_GEOMETRY_COLUMN_FROM_TABLE_schema_table = "DELETE_GEOMETRY_COLUMN_FROM_TABLE_schema_table"; |
||
61 | public final static String DELETE_GEOMETRY_COLUMN_FROM_TABLE_table = "DELETE_GEOMETRY_COLUMN_FROM_TABLE_table"; |
||
62 | public final static String UPDATE_table_SET_columnsAndValues_WHERE_expresion = "UPDATE_table_SET_columnsAndValues_WHERE_expresion"; |
||
63 | public final static String UPDATE_table_SET_columnsAndValues = "UPDATE_table_SET_columnsAndValues"; |
||
64 | public final static String GRANT_privileges_ON_table_TO_role = "GRANT_privileges_ON_table_TO_role"; |
||
65 | |||
66 | } |
||
67 | |||
68 | public interface TableNameBuilder extends Visitable { |
||
69 | public TableNameBuilder database(String name); |
||
70 | public TableNameBuilder schema(String name); |
||
71 | public TableNameBuilder name(String name); |
||
72 | public String getDatabase(); |
||
73 | public String getSchema(); |
||
74 | public String getName(); |
||
75 | public boolean has_database(); |
||
76 | public boolean has_schema(); |
||
77 | } |
||
78 | |||
79 | public interface CountBuilder extends Value { |
||
80 | public CountBuilder all();
|
||
81 | public CountBuilder column(Value value);
|
||
82 | public CountBuilder distinct();
|
||
83 | } |
||
84 | |||
85 | public interface SelectColumnBuilder extends Visitable { |
||
86 | public SelectColumnBuilder name(String name); |
||
87 | public SelectColumnBuilder value(Value value);
|
||
88 | public SelectColumnBuilder as(String alias); |
||
89 | public SelectColumnBuilder as_geometry();
|
||
90 | public SelectColumnBuilder all();
|
||
91 | public String getName(); |
||
92 | public String getAlias(); |
||
93 | public String getValue(); |
||
94 | } |
||
95 | |||
96 | public interface InsertColumnBuilder extends Visitable { |
||
97 | public InsertColumnBuilder name(String name); |
||
98 | public InsertColumnBuilder with_value(Value value);
|
||
99 | public String getName(); |
||
100 | public Value getValue();
|
||
101 | } |
||
102 | |||
103 | public interface UpdateColumnBuilder extends InsertColumnBuilder { |
||
104 | @Override
|
||
105 | public UpdateColumnBuilder name(String name); |
||
106 | @Override
|
||
107 | public UpdateColumnBuilder with_value(Value value);
|
||
108 | @Override
|
||
109 | public String getName(); |
||
110 | @Override
|
||
111 | public Value getValue();
|
||
112 | } |
||
113 | |||
114 | public interface FromBuilder extends Visitable { |
||
115 | public TableNameBuilder table();
|
||
116 | public FromBuilder subquery(String subquery); |
||
117 | public FromBuilder custom(String passthrough); |
||
118 | } |
||
119 | |||
120 | public interface OrderByBuilder extends Visitable { |
||
121 | public OrderByBuilder column(String name); |
||
122 | public OrderByBuilder ascending(boolean asc); |
||
123 | public OrderByBuilder ascending();
|
||
124 | public OrderByBuilder descending();
|
||
125 | public OrderByBuilder custom(String order); |
||
126 | } |
||
127 | |||
128 | public interface SelectBuilder extends Statement { |
||
129 | public SelectColumnBuilder column();
|
||
130 | public FromBuilder from();
|
||
131 | public ExpressionBuilder where();
|
||
132 | public OrderByBuilder order_by();
|
||
133 | public SelectBuilder distinct();
|
||
134 | public SelectBuilder limit(long limit); |
||
135 | public SelectBuilder offset(long offset); |
||
136 | public boolean has_column(String name); |
||
137 | public boolean has_where(); |
||
138 | public boolean has_from(); |
||
139 | public boolean has_order_by(); |
||
140 | public boolean has_limit(); |
||
141 | public boolean has_offset(); |
||
142 | } |
||
143 | |||
144 | public interface UpdateBuilder extends Statement { |
||
145 | public TableNameBuilder table();
|
||
146 | public UpdateColumnBuilder column();
|
||
147 | public ExpressionBuilder where();
|
||
148 | public boolean has_where(); |
||
149 | } |
||
150 | |||
151 | public interface InsertBuilder extends Statement { |
||
152 | public TableNameBuilder table();
|
||
153 | public InsertColumnBuilder column();
|
||
154 | } |
||
155 | |||
156 | public interface DeleteBuilder extends Statement { |
||
157 | public TableNameBuilder table();
|
||
158 | public ExpressionBuilder where();
|
||
159 | public boolean has_where(); |
||
160 | } |
||
161 | |||
162 | public interface AlterTableBuilder extends Statement { |
||
163 | public TableNameBuilder table();
|
||
164 | public AlterTableBuilder drop_column(String columnName); |
||
165 | public AlterTableBuilder add_column(String columnName, int type, int type_p, int type_s, boolean isPk, boolean allowNulls, boolean isAutomatic, Object defaultValue); |
||
166 | public AlterTableBuilder alter_column(String columnName, int type, int type_p, int type_s, boolean isPk, boolean allowNulls, boolean isAutomatic, Object defaultValue); |
||
167 | public AlterTableBuilder rename_column(String source, String target); |
||
168 | public List<String> toStrings(); |
||
169 | } |
||
170 | |||
171 | public interface CreateTableBuilder extends Statement { |
||
172 | public TableNameBuilder table();
|
||
173 | public CreateTableBuilder add_column(String columnName, int type, int type_p, int type_s, boolean isPk, boolean allowNulls, boolean isAutomatic, Object defaultValue); |
||
174 | public List<String> toStrings(); |
||
175 | } |
||
176 | |||
177 | public interface UpdateTableStatisticsBuilder extends Statement { |
||
178 | public TableNameBuilder table();
|
||
179 | public List<String> toStrings(); |
||
180 | } |
||
181 | |||
182 | public interface GrantRoleBuilder { |
||
183 | public GrantRoleBuilder privilege(Privilege privilege);
|
||
184 | public GrantRoleBuilder select();
|
||
185 | public GrantRoleBuilder insert();
|
||
186 | public GrantRoleBuilder delete();
|
||
187 | public GrantRoleBuilder truncate();
|
||
188 | public GrantRoleBuilder reference();
|
||
189 | public GrantRoleBuilder update();
|
||
190 | public GrantRoleBuilder trigger();
|
||
191 | public GrantRoleBuilder all();
|
||
192 | } |
||
193 | |||
194 | public interface GrantBuilder extends Statement { |
||
195 | public TableNameBuilder table();
|
||
196 | public GrantRoleBuilder role(String name); |
||
197 | public List<String> toStrings(); |
||
198 | } |
||
199 | |||
200 | public interface DropTableBuilder extends Statement { |
||
201 | public TableNameBuilder table();
|
||
202 | public List<String> toStrings(); |
||
203 | } |
||
204 | |||
205 | public String default_schema(); |
||
206 | |||
207 | public String sqltype(int dataType, int p, int s); |
||
208 | |||
209 | public SelectBuilder select();
|
||
210 | |||
211 | public UpdateBuilder update();
|
||
212 | |||
213 | public InsertBuilder insert();
|
||
214 | |||
215 | public DeleteBuilder delete();
|
||
216 | |||
217 | public AlterTableBuilder alter_table();
|
||
218 | |||
219 | public CreateTableBuilder create_table();
|
||
220 | |||
221 | public GrantBuilder grant();
|
||
222 | |||
223 | public DropTableBuilder drop_table();
|
||
224 | |||
225 | public UpdateTableStatisticsBuilder update_table_statistics();
|
||
226 | |||
227 | public CountBuilder count();
|
||
228 | |||
229 | public Function ST_ExtentAggregate(Value geom);
|
||
230 | |||
231 | public Function ST_UnionAggregate(Value geom);
|
||
232 | |||
233 | } |