Code
The object and variable declarations are the following:
FdoIConnectionCapabilities * connectionCapabilities;
// FdoThreadCapability is an enumerated type
FdoThreadCapability threadCapability;
// FdoSpatialContextExtentType is an enumerated
type
FdoSpatialContextExtentType * spatialContextExtentTypes;
FdoInt32 numSpatialContexts;
// FdoLockType is an enumerated type
FdoLockType * lockTypes;
FdoInt32 numLockTypes;
bool supportsLocking;
bool supportsTimeout;
bool supportsTransactions;
bool supportsLongTransactions;
bool supportsSQL;
bool supportsConfiguration;
The method calls are the following:
connectionCapabilities = connection->GetConnectionCapabilities();
// GetThreadCapability() returns a single
value
threadCapability = connectionCapabilities->GetThreadCapability();
// GetSpatialContextTypes() returns a list
spatialContextExtentTypes = connectionCapabilities->
GetSpatialContextTypes(numSpatialContexts);
// loop through the spatialContextExtentTypes
supportsLocking = connectionCapabilities->SupportsLocking();
// GetLockTypes() returns a list
lockTypes = connectionCapabilities->GetLockTypes(numLockTypes);
// loop through the lockTypes
supportsTimeout = connectionCapabilities->SupportsTimeout();
supportsTransactions = connectionCapabilities->
SupportsTransactions();
supportsLongTransactions = connectionCapabilities->
SupportsLongTransactions();
supportsSQL = connectionCapabilities->SupportsSQL();
supportsConfiguration = connectionCapabilities->
SupportsConfiguration();