Changes between Version 7 and Version 8 of MapGuideRfc84


Ignore:
Timestamp:
Sep 16, 2009, 12:52:18 AM (15 years ago)
Author:
leaf
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • MapGuideRfc84

    v7 v8  
    3030== Proposed Solution ==
    3131
    32 The following two methods will be added to class !MgFeatureService to allow users to set fetch size for a FdoISelect and FdoISelectAggregate command.
     32The following method will be added to class !MgFeatureQueryOptions to allow users to set fetch size. When calling method MgFeatureService::SelectFeatures(...) and MgFeatureService::SelectAggregate(...), fetch size will be used.
    3333
    3434{{{
     35    //////////////////////////////////////////////////////////////////////////////
    3536    /// \brief
    36     /// Selects features from a feature source according to the
    37     /// criteria set in the MgFeatureQueryOptions argument The
    38     /// criteria are applied to all of the features in the feature
    39     /// source. Use the coordinateSystem argument to set the target
    40     /// coordinate system if you want to transform and use fetchSize
    41     /// argument to set the fetch size of query.
     37    /// For queries that return a large number of objects
     38    /// some feature sources support improving performance by setting
     39    /// fetch size in order to reduce the number of database server
     40    /// round trips required to satisfy the selection criteria.
     41    /// Providers that do not use a fetch size will ignore the fetch
     42    /// size parameter.  This does not affect the actual results of
     43    /// queries as it is a performance tuning parameter.
    4244    ///
    43     /// \param resource (MgResourceIdentifier)
    44     /// A resource identifier for the feature source.
    45     /// \param className (String/string)
    46     /// The name of the feature class from which
    47     /// the properties of interest are selected.
    48     /// \param options (MgFeatureQueryOptions)
    49     /// MgFeatureQueryOptions instance
    50     /// containing all required filters for this
    51     /// select operation.
    52     /// \param coordinateSystem (String/string)
    53     /// The name of the coordinate system to transform to.
     45    /// <!-- Syntax in .Net, Java, and PHP -->
     46    /// \htmlinclude DotNetSyntaxTop.html
     47    /// void SetFetchSize(int fetchSize);
     48    /// \htmlinclude SyntaxBottom.html
     49    /// \htmlinclude JavaSyntaxTop.html
     50    /// void SetFetchSize(int fetchSize);
     51    /// \htmlinclude SyntaxBottom.html
     52    /// \htmlinclude PHPSyntaxTop.html
     53    /// void SetFetchSize(int fetchSize);
     54    /// \htmlinclude SyntaxBottom.html
     55    ///
    5456    /// \param fetchSize (int)
    55     /// The fetch size of query. This method returns all data
    56     /// of query if setting the fetch size to 0.
     57    /// The fetch size of query. The query returns all of query
     58    /// results if setting the fetch size to 0.
    5759    ///
    5860    /// \return
    59     /// Returns an MgFeatureReader containing the set of selected
    60     /// features.
     61    /// Returns nothing.
    6162    ///
    62     virtual MgFeatureReader* SelectFeatures(   
    63                                   MgResourceIdentifier* resource,
    64                                   CREFSTRING className,
    65                                   MgFeatureQueryOptions* options,
    66                                   CREFSTRING coordinateSystem,
    67                                   INT32 fetchSize ) = 0;
    68 
    69     /// \brief
    70     /// Selects groups of features from a feature source and applies
    71     /// filters to each of the groups according to the criteria set
    72     /// in the MgFeatureAggregateOptions argument. Use fetchSize
    73     /// argument to set the fetch size of query.
    74     ///
    75     /// \param resource (MgResourceIdentifier)
    76     /// A resource identifier for the feature
    77     /// source.
    78     /// \param className (String/string)
    79     /// The name of the feature class on which
    80     /// the select operation is performed.
    81     /// \param options (MgFeatureAggregateOptions)
    82     /// An MgFeatureAggregateOptions instance
    83     /// containing all the criteria and filters
    84     /// required for this select operation.
    85     /// \param fetchSize (int)
    86     /// The fetch size of query. This method returns all data
    87     /// of query if setting the fetch size to 0.
    88     ///
    89     /// \return
    90     /// Returns an MgDataReader containing the group values.
    91     ///
    92     virtual MgDataReader* SelectAggregate(
    93                                  MgResourceIdentifier* resource,
    94                                  CREFSTRING className,
    95                                  MgFeatureAggregateOptions* options,
    96                                  INT32 fetchSize) = 0;
     63    void SetFetchSize(INT32 fetchSize);
    9764}}}
    9865