DSIExtColumnsMetadataSource Class Reference

Default implementation for column metadata. More...

Inherits Simba::SQLEngine::DSIExtPartiallyFilteredMetadataSource.

List of all members.

Public Member Functions

void CloseCursor ()
 Closes the DSI's internal result cursor and clears associated memory.
 DSIExtColumnsMetadataSource (Simba::DSI::DSIMetadataRestrictions &in_restrictions, AutoPtr< Simba::SQLEngine::DSIExtMetadataHelper > in_metadataHelper, Simba::SQLEngine::DSIExtSqlDataEngine *in_dataEngine)
 Constructor.
bool GetMetadata (Simba::DSI::DSIOutputMetadataColumnTag in_columnTag, SqlData *in_data, simba_signed_native in_offset, simba_signed_native in_maxSize)
 Fills in in_data with data for the given column in the current row.
bool Move (Simba::DSI::DSIDirection in_direction, simba_signed_native in_offset)
 Traverses the result set, moving on to the next row.
virtual ~DSIExtColumnsMetadataSource ()
 Destructor.

Protected Member Functions

const Simba::DSI::IColumnsGetColumns () const
simba_int32 GetCurrentColumn () const
const
Simba::SQLEngine::DSIExtResultSet
GetCurrentTable () const

Detailed Description

Default implementation for column metadata.

This source contains the following output columns as defined by SimbaEngine: DSI_CATALOG_NAME_COLUMN_TAG DSI_SCHEMA_NAME_COLUMN_TAG DSI_TABLE_NAME_COLUMN_TAG DSI_COLUMN_NAME_COLUMN_TAG DSI_DATA_TYPE_COLUMN_TAG DSI_DATA_TYPE_NAME_COLUMN_TAG DSI_COLUMN_SIZE_COLUMN_TAG DSI_BUFFER_LENGTH_COLUMN_TAG DSI_DECIMAL_DIGITS_COLUMN_TAG DSI_NUM_PREC_RADIX_COLUMN_TAG DSI_NULLABLE_COLUMN_TAG DSI_REMARKS_COLUMN_TAG DSI_COLUMN_DEF_COLUMN_TAG DSI_SQL_DATA_TYPE_COLUMN_TAG DSI_SQL_DATETIME_SUB_COLUMN_TAG DSI_CHAR_OCTET_LENGTH_COLUMN_TAG DSI_ORDINAL_POSITION_TAG DSI_IS_NULLABLE_COLUMN_TAG DSI_USER_DATA_TYPE_COLUMN_TAG

The implementation of Move() must respond to the above mentioned columns.


Constructor & Destructor Documentation

Constructor.

Parameters:
in_restrictions Restrictions that may be applied to the metadata table.
in_metadataHelper The helper object to retrieve the tables list. (OWN)
in_dataEngine The data engine to use to open tables. (NOT OWN)
virtual ~DSIExtColumnsMetadataSource (  )  [virtual]

Destructor.


Member Function Documentation

void CloseCursor (  )  [virtual]

Closes the DSI's internal result cursor and clears associated memory.

Implements DSIMetadataSource.

const Simba::DSI::IColumns& GetColumns (  )  const [inline, protected]
simba_int32 GetCurrentColumn (  )  const [inline, protected]
const Simba::SQLEngine::DSIExtResultSet& GetCurrentTable (  )  const [inline, protected]
bool GetMetadata ( Simba::DSI::DSIOutputMetadataColumnTag  in_columnTag,
SqlData in_data,
simba_signed_native  in_offset,
simba_signed_native  in_maxSize 
) [virtual]

Fills in in_data with data for the given column in the current row.

The target column is identified by in_columnTag which can be found in DSIMetadataColumnIdentifierDefns.h

Parameters:
in_columnTag Identifier that identifies a column.
in_data Holds a buffer to store the requested data.
in_offset Number of bytes in the data to skip before copying into in_data.
in_maxSize Maximum number of bytes of data to return in in_data.
Returns:
True if there is more data; false otherwise.

Implements DSIMetadataSource.

bool Move ( Simba::DSI::DSIDirection  in_direction,
simba_signed_native  in_offset 
) [virtual]

Traverses the result set, moving on to the next row.

Parameters:
in_direction Direction to traverse through a result set.
in_offset Number of bytes in the data to skip.
Returns:
True if there are more rows to traverse; false if there are no more rows left.

Implements DSIMetadataSource.


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