|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
ObjectDefaultSQLBuilder
public class DefaultSQLBuilder
Builds a complete SQL query to select the specified attributes for the specified feature type, using a specified filter to generate a WHERE clause.
The actual WHERE clause is generated by the SQLEncoder class or appropriate subclass for a particular database. If a specific encoder is to be used, it must be specified to the constructor for this class.
In order to implement the functionality of the application-specified Filter, this is split into a 'preQueryFilter' which can be incorporated into the SQL query itself and a 'postQueryFilter. The encoder capabilities are used to determine how much of the function can be performed by the database directly and how much has to be performed on the result set.
modules/library/jdbc (gt2-jdbc.jar) (Maven report) (SVN head)| Field Summary | |
|---|---|
protected ClientTransactionAccessor |
accessor
Deprecated. |
protected SQLEncoder |
encoder
Deprecated. |
protected FeatureType |
ft
Deprecated. |
| Constructor Summary | |
|---|---|
DefaultSQLBuilder()
Deprecated. Constructs an instance of this class with a default SQLEncoder |
|
DefaultSQLBuilder(SQLEncoder encoder)
Deprecated. |
|
DefaultSQLBuilder(SQLEncoder encoder,
FeatureType featureType,
ClientTransactionAccessor accessor)
Deprecated. Constructs an instance of this class using the encoder class specified. |
|
| Method Summary | |
|---|---|
String |
buildSQLQuery(String typeName,
FIDMapper mapper,
AttributeType[] attrTypes,
Filter filter)
Deprecated. Constructs the full SQL SELECT statement for the supplied Filter. |
Filter |
getPostQueryFilter(Filter filter)
Deprecated. Return the postQueryFilter that must be applied to the database query result set. |
Filter |
getPreQueryFilter(Filter filter)
Deprecated. Return the preQueryFilter that can be used to generate the WHERE clause. |
protected void |
splitFilter(Filter filter)
Deprecated. |
void |
sqlColumns(StringBuffer sql,
FIDMapper mapper,
AttributeType[] attributes)
Deprecated. Appends the names of the columns to be selected. |
void |
sqlFrom(StringBuffer sql,
String typeName)
Deprecated. Constructs the FROM clause for a featureType sql: FROM typeName
|
void |
sqlGeometryColumn(StringBuffer sql,
AttributeType geomAttribute)
Deprecated. Generates the select column specification for a geometry column. |
void |
sqlOrderBy(StringBuffer sql,
SortBy[] sortBy)
Deprecated. Generates the order by clause. |
void |
sqlWhere(StringBuffer sql,
Filter preFilter)
Deprecated. Constructs WHERE clause, if needed, for FILTER. |
| Methods inherited from class Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected SQLEncoder encoder
protected FeatureType ft
protected ClientTransactionAccessor accessor
| Constructor Detail |
|---|
public DefaultSQLBuilder()
public DefaultSQLBuilder(SQLEncoder encoder)
This constructor should not be used to obtain Pre/Post filters, as these methods require a FeatureType to function properly.
encoder - the specific encoder to be used.
public DefaultSQLBuilder(SQLEncoder encoder,
FeatureType featureType,
ClientTransactionAccessor accessor)
encoder - the specific encoder to be used.featureType - accessor - client-side transaction handler; may be null.| Method Detail |
|---|
public Filter getPostQueryFilter(Filter filter)
getPostQueryFilter in interface SQLBuilderfilter - the application filter which must be applied
public Filter getPreQueryFilter(Filter filter)
getPreQueryFilter in interface SQLBuilderfilter - the application filter which must be applied
protected void splitFilter(Filter filter)
public void sqlFrom(StringBuffer sql,
String typeName)
sql: FROM typeName
sqlFrom in interface SQLBuildersql - the StringBuffer that the WHERE clause should be appended totypeName - the name of the table (feature type) to be queried
public void sqlWhere(StringBuffer sql,
Filter preFilter)
throws SQLEncoderException
sql: WHERE filter encoding
sqlWhere in interface SQLBuildersql - The StringBuffer that the WHERE clause should be appended topreFilter - The filter to be used by the encoder class to generate
the WHERE clause
SQLEncoderException - Not thrown here but may be thrown by the
encoder
public String buildSQLQuery(String typeName,
FIDMapper mapper,
AttributeType[] attrTypes,
Filter filter)
throws SQLEncoderException
The statement is constructed by concatenating the SELECT column list, FROM table specification and WHERE clause appropriate to the supplied Filter.
buildSQLQuery in interface SQLBuildertypeName - The name of the table (feature type) to be queriedmapper - FIDMapper to identify the FID columns in the tableattrTypes - The specific attribute columns to be selectedfilter - The Filter that will be used by the encoder to construct
the WHERE clause
SQLEncoderException - Not thrown by this method but may be thrown
by the encoder class
public void sqlColumns(StringBuffer sql,
FIDMapper mapper,
AttributeType[] attributes)
sqlGeometryColumn is invoked for any special handling for geometry columns.
sqlColumns in interface SQLBuildersql - StringBuffer to be appended tomapper - FIDMapper to provide the name(s) of the FID columnsattributes - Array of columns to be selectedpostgisDataStore.SQLBuilder#sqlColumns(java.lang.StringBuffer,
postgisDataStore.FIDMapper.FIDMapper,
org.geotools.feature.AttributeType[])
public void sqlGeometryColumn(StringBuffer sql,
AttributeType geomAttribute)
This should typically be overridden in the subclass to return a meaningful value that the attribute i/o handler can process.
sql - A StringBuffer that the column specification can be appended
togeomAttribute - An AttributeType for a geometry attribute
public void sqlOrderBy(StringBuffer sql,
SortBy[] sortBy)
throws SQLEncoderException
This uses the standard ASC,DESC sql keywords to denote ascending,descending sort respectivley.
sqlOrderBy in interface SQLBuilderSQLEncoderException
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||