LibreOffice Module connectivity (master) 1
|
#include <fanalyzer.hxx>
Public Member Functions | |
OSQLAnalyzer (OConnection *_pConnection) | |
~OSQLAnalyzer () | |
OConnection * | getConnection () const |
void | bindEvaluationRow (OValueRefRow const &_pRow) |
void | bindSelectRow (const OValueRefRow &_pRow) |
bind the select columns if they contain a function which needs a row value More... | |
void | bindParameterRow (OValueRefRow const &_pRow) |
binds the row to parameter for the restrictions More... | |
void | dispose () |
void | start (OSQLParseNode const *pSQLParseNode) |
bool | hasRestriction () const |
bool | hasFunctions () const |
bool | evaluateRestriction () |
void | setSelectionEvaluationResult (OValueRefRow const &_pRow, const std::vector< sal_Int32 > &_rColumnMapping) |
void | setOrigColumns (const css::uno::Reference< css::container::XNameAccess > &rCols) |
Static Public Member Functions | |
static OOperandAttr * | createOperandAttr (sal_Int32 _nPos, const css::uno::Reference< css::beans::XPropertySet > &_xCol) |
Private Types | |
typedef std::pair< ::rtl::Reference< OPredicateCompiler >,::rtl::Reference< OPredicateInterpreter > > | TPredicates |
Static Private Member Functions | |
static void | bindRow (OCodeList &rCodeList, const OValueRefRow &_pRow) |
Private Attributes | |
std::vector< TPredicates > | m_aSelectionEvaluations |
::rtl::Reference< OPredicateCompiler > | m_aCompiler |
::rtl::Reference< OPredicateInterpreter > | m_aInterpreter |
OConnection * | m_pConnection |
bool | m_bHasSelectionCode |
bool | m_bSelectionFirstTime |
Definition at line 27 of file fanalyzer.hxx.
|
private |
Definition at line 29 of file fanalyzer.hxx.
OSQLAnalyzer::OSQLAnalyzer | ( | OConnection * | _pConnection | ) |
Definition at line 34 of file fanalyzer.cxx.
References m_aCompiler, and m_aInterpreter.
OSQLAnalyzer::~OSQLAnalyzer | ( | ) |
Definition at line 44 of file fanalyzer.cxx.
void OSQLAnalyzer::bindEvaluationRow | ( | OValueRefRow const & | _pRow | ) |
Definition at line 134 of file fanalyzer.cxx.
References bindRow(), and m_aCompiler.
void OSQLAnalyzer::bindParameterRow | ( | OValueRefRow const & | _pRow | ) |
binds the row to parameter for the restrictions
_pRow | the parameter row |
Definition at line 55 of file FNoException.cxx.
References connectivity::file::OOperandRow::bindValue(), code, and m_aCompiler.
|
staticprivate |
Definition at line 112 of file fanalyzer.cxx.
References connectivity::file::OOperandRow::bindValue(), and code.
Referenced by bindEvaluationRow(), and bindSelectRow().
void OSQLAnalyzer::bindSelectRow | ( | const OValueRefRow & | _pRow | ) |
bind the select columns if they contain a function which needs a row value
_pRow | the result row |
Definition at line 124 of file fanalyzer.cxx.
References bindRow(), and m_aSelectionEvaluations.
|
static |
Definition at line 139 of file fanalyzer.cxx.
References _nPos.
Referenced by connectivity::file::OPredicateCompiler::execute_Operand().
void OSQLAnalyzer::dispose | ( | void | ) |
Definition at line 186 of file fanalyzer.cxx.
References m_aCompiler, and m_aSelectionEvaluations.
|
inline |
Definition at line 61 of file fanalyzer.hxx.
References m_aInterpreter.
Referenced by connectivity::file::OResultSet::ExecuteRow().
|
inline |
Definition at line 45 of file fanalyzer.hxx.
References m_pConnection.
Referenced by connectivity::file::OPredicateCompiler::execute_BETWEEN(), connectivity::file::OPredicateCompiler::execute_COMPARE(), connectivity::file::OPredicateCompiler::execute_LIKE(), connectivity::file::OPredicateCompiler::execute_Operand(), connectivity::file::OPredicateCompiler::executeFunction(), and connectivity::file::OPredicateCompiler::start().
bool OSQLAnalyzer::hasFunctions | ( | ) | const |
Definition at line 150 of file fanalyzer.cxx.
References m_aSelectionEvaluations, m_bHasSelectionCode, and m_bSelectionFirstTime.
Referenced by connectivity::file::OResultSet::Move(), and connectivity::file::OResultSet::sortRows().
bool OSQLAnalyzer::hasRestriction | ( | ) | const |
Definition at line 145 of file fanalyzer.cxx.
References m_aCompiler.
Referenced by connectivity::file::OResultSet::ExecuteRow(), connectivity::file::OResultSet::Move(), connectivity::file::OResultSet::OpenImpl(), and connectivity::file::OResultSet::sortRows().
void OSQLAnalyzer::setOrigColumns | ( | const css::uno::Reference< css::container::XNameAccess > & | rCols | ) |
Definition at line 196 of file fanalyzer.cxx.
References m_aCompiler, and m_aSelectionEvaluations.
void OSQLAnalyzer::setSelectionEvaluationResult | ( | OValueRefRow const & | _pRow, |
const std::vector< sal_Int32 > & | _rColumnMapping | ||
) |
Definition at line 168 of file fanalyzer.cxx.
References m_aSelectionEvaluations, map, and nPos.
Referenced by connectivity::file::OResultSet::Move(), connectivity::file::OResultSet::OpenImpl(), and connectivity::file::OResultSet::sortRows().
void OSQLAnalyzer::start | ( | OSQLParseNode const * | pSQLParseNode | ) |
Definition at line 49 of file fanalyzer.cxx.
References connectivity::OSQLParseNode::count(), DBG_ASSERT, connectivity::OSQLParseNode::getChild(), connectivity::OSQLParseNode::getNodeType(), i, m_aCompiler, m_aSelectionEvaluations, m_pConnection, connectivity::Name, SQL_ISPUNCTUATION, SQL_ISRULE, and connectivity::OMetaConnection::throwGenericSQLException().
|
private |
Definition at line 32 of file fanalyzer.hxx.
Referenced by bindEvaluationRow(), bindParameterRow(), dispose(), hasRestriction(), OSQLAnalyzer(), setOrigColumns(), and start().
|
private |
Definition at line 33 of file fanalyzer.hxx.
Referenced by evaluateRestriction(), and OSQLAnalyzer().
|
private |
Definition at line 31 of file fanalyzer.hxx.
Referenced by bindSelectRow(), dispose(), hasFunctions(), setOrigColumns(), setSelectionEvaluationResult(), and start().
|
mutableprivate |
Definition at line 36 of file fanalyzer.hxx.
Referenced by hasFunctions().
|
mutableprivate |
Definition at line 37 of file fanalyzer.hxx.
Referenced by hasFunctions().
|
private |
Definition at line 34 of file fanalyzer.hxx.
Referenced by getConnection(), and start().