DSIExtOperationHandlerFactory Class Reference

A "factory" class that creates handlers to handle passing-down operations such as filters, joins, aggregations and unions. More...

List of all members.

Public Member Functions

virtual AutoPtr
< IAggregationHandler
CreateAggregationHandler (SharedPtr< DSIExtResultSet > in_table)
 Create an AGGREGATION handler to handle passing down an AGGREGATION operation on the given table.
virtual AutoPtr< IDistinctHandlerCreateDistinctHandler ()
 Create a DISTINCT handler to handle passing down DISTINCT operations.
virtual AutoPtr
< IBooleanExprHandler
CreateFilterHandler (SharedPtr< DSIExtResultSet > in_table)
 Create a filter handler to handle passing down filters onto the table.
virtual AutoPtr
< IBooleanExprHandler
CreateJoinHandler (SharedPtr< DSIExtResultSet > in_table1, SharedPtr< DSIExtResultSet > in_table2, AEJoinType in_joinType)
 Create a JOIN condition handler to handle passing down JOIN operations.
virtual AutoPtr
< IProjectionHandler
CreateProjectionHandler (SharedPtr< DSIExtResultSet > in_table)
 Create a PROJECTION handler to handle passing down a PROJECTION operation on the given table.
virtual AutoPtr< ISortHandlerCreateSortHandler (SharedPtr< DSIExtResultSet > in_table)
 Create a SORT handler to handle passing down SORT operations.
virtual AutoPtr< ITopHandlerCreateTopHandler (SharedPtr< DSIExtResultSet > in_table)
 Create a TOP handler to handle passing down TOP N operations.
virtual AutoPtr< IUnionHandlerCreateUnionHandler ()
 Create a UNION handler to handle passing down UNION operations.
virtual void SetParameterSetCount (simba_unsigned_native in_paramSetCount)
 Inform the factory of the number of parameter sets which will be used in the execution of any statements which will be optimized by the handlers created by this factory from this point on (until the next time this method is called).
virtual ~DSIExtOperationHandlerFactory ()
 Destructor.

Protected Member Functions

 DSIExtOperationHandlerFactory ()
 Default constructor.

Protected Attributes

simba_unsigned_native m_paramSetCount
 The last value set by SetParameterSetCount().

Detailed Description

A "factory" class that creates handlers to handle passing-down operations such as filters, joins, aggregations and unions.


Constructor & Destructor Documentation

virtual ~DSIExtOperationHandlerFactory (  )  [inline, virtual]

Destructor.

DSIExtOperationHandlerFactory (  )  [inline, protected]

Default constructor.


Member Function Documentation

virtual AutoPtr<IAggregationHandler> CreateAggregationHandler ( SharedPtr< DSIExtResultSet in_table  )  [virtual]

Create an AGGREGATION handler to handle passing down an AGGREGATION operation on the given table.

The default implementation in this class returns NULL. That is, no AGGREGATION pass-down is supported.

See also:
IAggregationHandler
Parameters:
in_table The table on which the aggregation operates. Cannot be NULL.
Returns:
an AGGREGATION handler to handle passing down AGGREGATION operations if the feature is supported, NULL otherwise. (OWN)
virtual AutoPtr<IDistinctHandler> CreateDistinctHandler (  )  [virtual]

Create a DISTINCT handler to handle passing down DISTINCT operations.

The default implementation in this class returns NULL. That is, no DISTINCT pass-down is supported.

See also:
IDistinctHandler
Returns:
a DISTINCT handler to handle passing down DISTINCT operations if the feature is supported, NULL otherwise. (OWN)
virtual AutoPtr<IBooleanExprHandler> CreateFilterHandler ( SharedPtr< DSIExtResultSet in_table  )  [virtual]

Create a filter handler to handle passing down filters onto the table.

The default implementation in this class returns NULL. That is, no filter pass-down is supported.

See also:
IBooleanExprHandler
Parameters:
in_table The table on which to apply filters. Cannot be NULL.
Returns:
a filter handler to handle passing down filters if the feature is supported, NULL otherwise. (OWN)
virtual AutoPtr<IBooleanExprHandler> CreateJoinHandler ( SharedPtr< DSIExtResultSet in_table1,
SharedPtr< DSIExtResultSet in_table2,
AEJoinType  in_joinType 
) [virtual]

Create a JOIN condition handler to handle passing down JOIN operations.

The default implementation in this class returns NULL. That is, no JOIN pass-down is supported.

See also:
IBooleanExprHandler
Parameters:
in_table1 The first table of the join. Cannot be NULL.
in_table2 The second table of the join. Cannot be NULL.
in_joinType The type of the join being applied.
Returns:
a JOIN handler condition to handle passing down JOIN operations if the feature is supported, NULL otherwise. (OWN)
virtual AutoPtr<IProjectionHandler> CreateProjectionHandler ( SharedPtr< DSIExtResultSet in_table  )  [virtual]

Create a PROJECTION handler to handle passing down a PROJECTION operation on the given table.

The default implementation in this class returns NULL. That is, no PROJECTION pass-down is supported.

See also:
IProjectionHandler
Parameters:
in_table The table on which the projection operates. Cannot be NULL.
Returns:
a PROJECTION handler to handle passing down PROJECTION operations if the feature is supported, NULL otherwise. (OWN)
virtual AutoPtr<ISortHandler> CreateSortHandler ( SharedPtr< DSIExtResultSet in_table  )  [virtual]

Create a SORT handler to handle passing down SORT operations.

The default implementation in this class returns NULL. That is, no SORT pass-down is supported.

See also:
ISortHandler
Parameters:
in_table The table on which the SORT operates. Cannot be NULL.
Returns:
a SORT handler to handle passing down SORT operations if the feature is supported, NULL otherwise. (OWN)
virtual AutoPtr<ITopHandler> CreateTopHandler ( SharedPtr< DSIExtResultSet in_table  )  [virtual]

Create a TOP handler to handle passing down TOP N operations.

The default implementation in this class returns NULL. That is, no TOP N pass-down is supported.

See also:
ITopHandler
Parameters:
in_table The table on which the TOP N operates. Cannot be NULL.
Returns:
a TOP handler to handle passing down TOP N operations if the feature is supported, NULL otherwise. (OWN)
virtual AutoPtr<IUnionHandler> CreateUnionHandler (  )  [virtual]

Create a UNION handler to handle passing down UNION operations.

The default implementation in this class returns NULL. That is, no UNION pass-down is supported.

See also:
IUnionHandler
Returns:
a UNION handler to handle passing down UNION operations if the feature is supported, NULL otherwise. (OWN)
virtual void SetParameterSetCount ( simba_unsigned_native  in_paramSetCount  )  [virtual]

Inform the factory of the number of parameter sets which will be used in the execution of any statements which will be optimized by the handlers created by this factory from this point on (until the next time this method is called).

If a sub-class overrides this function, it should call the base class implementation.

NOTE: The main purpose of this method is to allow this factory to distinguish between a count of 1 and a count greater than 1. If the count is greater than 1, then any handler created by this factory after this method was called may NOT inspect the value of any parameter nodes (as this value will vary between parameter sets, and any optimization taken based on this value would be invalid.)

Parameters:
in_paramSetCount The number of parameter sets for which any statement optimized by a handler created by this factory will be executed.

Member Data Documentation

simba_unsigned_native m_paramSetCount [protected]

The last value set by SetParameterSetCount().


The documentation for this class was generated from the following file:

Generated on Wed May 17 14:21:17 2017 for SimbaEngine 10.1.3.1011 by simba