Changes between Version 37 and Version 38 of FDORfc34


Ignore:
Timestamp:
Sep 6, 2009, 11:14:09 PM (15 years ago)
Author:
klain
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • FDORfc34

    v37 v38  
    619619== Provider Implementation ==
    620620
    621 Providers will be required to implement the above functionality. Instead of each provider to implement all of newly added pure virtual functions, three utility abstract classes are added to provide the default implementation as mentioned above under Fdo/Utilities/Common: FdoIFeatureReaderDefault, FdoIDataReaderDefault, FdoISqlReaderDefault. Then the provider specific implementation will simply derive from the new classes. That involves changing one line in header file for each provider (some providers may not link {{{FdoCommon}}} and need to add that dependancy). Take FdoIDataReaderDefault as an example:
    622 
    623 {{{
    624 class FdoIFeatureReaderDefault: public FdoIFeatureReader
     621Providers will be required to implement the above functionality. Instead of each provider to implement all of newly added pure virtual functions, three utility abstract classes are added to provide the default implementation as mentioned above under Fdo/Utilities/Common: FdoDefaultFeatureReader, FdoDefaultDataReader, FdoDefaultSqlReader. Then the provider specific implementation will simply derive from the new classes. That involves changing one line in header file for each provider (some providers may not link {{{FdoCommon}}} and need to add that dependancy). Take FdoDefaultDataReader as an example:
     622
     623{{{
     624class FdoDefaultFeatureReader: public FdoIFeatureReader
    625625{
    626626public:
     
    647647All pure virtual functions for access by index are overrided with the default implementation in a similar way. e.g.
    648648{{{
    649 FdoBoolean FdoIFeatureReaderByIndex::IsNull(FdoInt32 index)
     649FdoBoolean FdoDefaultFeatureReader::IsNull(FdoInt32 index)
    650650{
    651651    FdoStringP propName = GetPropertyName(index);
     
    656656Changes to provider specific implementation:
    657657{{{
    658 Class XYZFeatureReader: public FdoIFeatureReaderDefault
     658Class XYZFeatureReader: public FdoDefaultFeatureReader
    659659{
    660660    // no other changes