[fdo-commits] r754 -
branches/3.2.x/Providers/GenericRdbms/Src/Fdo/FeatureCommands
svn_fdo at osgeo.org
svn_fdo at osgeo.org
Wed Feb 14 18:54:38 EST 2007
Author: danstoica
Date: 2007-02-14 18:54:38 -0500 (Wed, 14 Feb 2007)
New Revision: 754
Modified:
branches/3.2.x/Providers/GenericRdbms/Src/Fdo/FeatureCommands/FdoRdbmsSelectCommand.cpp
Log:
Validate spatial operators in the filter at Execute() time.
Modified: branches/3.2.x/Providers/GenericRdbms/Src/Fdo/FeatureCommands/FdoRdbmsSelectCommand.cpp
===================================================================
--- branches/3.2.x/Providers/GenericRdbms/Src/Fdo/FeatureCommands/FdoRdbmsSelectCommand.cpp 2007-02-14 23:52:20 UTC (rev 753)
+++ branches/3.2.x/Providers/GenericRdbms/Src/Fdo/FeatureCommands/FdoRdbmsSelectCommand.cpp 2007-02-14 23:54:38 UTC (rev 754)
@@ -29,8 +29,9 @@
#include "FdoRdbmsFeatureSubsetReader.h"
#include "LockUtility.h"
#include "FdoRdbmsFilterProcessor.h"
+#include <FdoCommonFilterExecutor.h>
+#include <FdoCommonSchemaUtil.h>
-
#define SELECT_CLEANUP \
if ( qid != -1) {\
try { \
@@ -101,6 +102,15 @@
filterConstrain.groupByProperties = mGroupingCol;
filterConstrain.orderByProperties = mOrderingIdentifiers;
+ if ( this->GetFilterRef() != NULL )
+ {
+ FdoPtr<FdoIConnection> conn = GetConnection();
+ FdoPtr<FdoIFilterCapabilities> filterCaps = conn->GetFilterCapabilities();
+ FdoPtr<FdoClassDefinition> classDef = FdoCommonSchemaUtil::GetLogicalClassDefinition(conn, classDefinition->GetName(), NULL);
+
+ FdoCommonFilterExecutor::ValidateFilter( classDef, this->GetFilterRef(), mIdentifiers, filterCaps);
+ }
+
// Call FilterToSql just to populate the filter's list of geometric conditions;
FdoString * sqlString = flterProcessor->FilterToSql( this->GetFilterRef(), this->GetClassNameRef()->GetText(), SqlCommandType_Select, FdoCommandType_Select, &filterConstrain, isForUpdate );
More information about the fdo-commits
mailing list