| java.lang.Object org.deegree.io.datastore.sql.AbstractRequestHandler org.deegree.io.datastore.sql.FeatureFetcher org.deegree.io.datastore.sql.QueryHandler
QueryHandler | public QueryHandler(AbstractSQLDatastore ds, TableAliasGenerator aliasGenerator, Connection conn, MappedFeatureType[] rootFts, Query query) throws DatastoreException(Code) | | Creates a new instance of QueryHandler from the given parameters.
Parameters: ds - datastore that spawned this QueryHandler Parameters: aliasGenerator - used to generate unique aliases for the tables in the SELECT statements Parameters: conn - JDBCConnection to execute the generated SELECT statements against Parameters: rootFts - the root feature types that are queried, more than one type means that the types are joined Parameters: query - query to perform throws: DatastoreException - |
buildInitialSelect | protected StatementBuffer buildInitialSelect(SelectManager selectManager) throws DatastoreException(Code) | | Builds the initial SELECT statement.
This statement determines all feature ids that are affected by the filter, but also SELECTs all properties that
are stored in the root feature types' tables (to improve efficiency).
The statement is structured like this:
SELECT
- comma-separated list of qualified columns/functions to fetch from root tables
FROM
- comma-separated list of tables and their aliases (this is needed to constrain the paths to selected
XPath-PropertyNames)
WHERE
- SQL representation of the filter expression
ORDER BY
- qualified sort criteria columns/functions
Parameters: selectManager - associated SelectManager initial select statement throws: DatastoreException - |
Methods inherited from org.deegree.io.datastore.sql.FeatureFetcher | protected void appendQualifiedContentList(StatementBuffer query, String tableAlias, List<List<SimpleContent>> fetchContents)(Code)(Java Doc) protected Map<SimpleContent, Integer> buildResultPosMap(List<List<SimpleContent>> fetchContents)(Code)(Java Doc) protected List<List<SimpleContent>> determineFetchContents(MappedFeatureType ft, PropertyType[] requestedProps) throws DatastoreException(Code)(Java Doc) protected Feature extractFeature(FeatureId fid, Map<MappedPropertyType, Collection<PropertyPath>> requestedPropertyMap, Map<SimpleContent, Integer> resultPosMap, Object[] resultValues) throws SQLException, DatastoreException, UnknownCRSException(Code)(Java Doc) protected FeatureId extractFeatureId(MappedFeatureType ft, Map<SimpleContent, Integer> mfMap, Object[] resultValues) throws DatastoreException(Code)(Java Doc)
|
Methods inherited from org.deegree.io.datastore.sql.AbstractRequestHandler | public void appendColumnsList(StatementBuffer query, String[] columns)(Code)(Java Doc) protected void appendFeatureIdColumns(MappedFeatureType featureType, String tableAlias, StatementBuffer query)(Code)(Java Doc) protected void appendFeatureIdConstraint(StatementBuffer query, FeatureId fid)(Code)(Java Doc) protected void appendFeatureIdConstraint(StatementBuffer query, FeatureId fid, String tableAlias)(Code)(Java Doc) protected void appendJoinCondition(TableRelation tableRelation, String fromAlias, String toAlias, StatementBuffer query)(Code)(Java Doc) protected void appendJoins(TableRelation[] tableRelation, String fromAlias, String[] toAliases, StatementBuffer query)(Code)(Java Doc) public void appendQualifiedColumn(StatementBuffer query, String tableAlias, String column)(Code)(Java Doc) public void appendQualifiedColumnsList(StatementBuffer query, String tableAlias, String[] columns)(Code)(Java Doc) public List<FeatureId> determineAffectedAndModifiableFIDs(MappedFeatureType ft, Filter filter, String lockId) throws DatastoreException(Code)(Java Doc) public List<FeatureId> determineAffectedFIDs(MappedFeatureType ft, Filter filter) throws DatastoreException(Code)(Java Doc) public Map<MappedFeaturePropertyType, List<FeatureId>> determineSubFeatures(FeatureId fid) throws DatastoreException(Code)(Java Doc) public Set<FeatureId> determineSuperFeatures(FeatureId fid) throws DatastoreException(Code)(Java Doc) protected FeatureId extractFeatureId(ResultSet rs, MappedFeatureType ft) throws SQLException, DatastoreException(Code)(Java Doc) protected List<FeatureId> extractFeatureIds(ResultSet rs, MappedFeatureType ft) throws SQLException, DatastoreException(Code)(Java Doc)
|
|
|