Kaydet (Commit) 369e2d3e authored tarafından Lionel Elie Mamane's avatar Lionel Elie Mamane

fdo#66464 initialise static join info at construct time

to ensure that isReadOnly returns something sensible as soon as construct() finishes

Change-Id: I5f9bef049297c5232df0ecdb9084add968a0052f
üst ed76237e
...@@ -136,11 +136,6 @@ void OptimisticSet::construct(const Reference< XResultSet>& _xDriverSet,const OU ...@@ -136,11 +136,6 @@ void OptimisticSet::construct(const Reference< XResultSet>& _xDriverSet,const OU
OKeySetValue keySetValue((ORowSetValueVector *)NULL,::std::pair<sal_Int32,Reference<XRow> >(0,(Reference<XRow>)NULL)); OKeySetValue keySetValue((ORowSetValueVector *)NULL,::std::pair<sal_Int32,Reference<XRow> >(0,(Reference<XRow>)NULL));
m_aKeyMap.insert(OKeySetMatrix::value_type(0,keySetValue)); m_aKeyMap.insert(OKeySetMatrix::value_type(0,keySetValue));
m_aKeyIter = m_aKeyMap.begin(); m_aKeyIter = m_aKeyMap.begin();
}
void OptimisticSet::makeNewStatement( )
{
OUStringBuffer aFilter = createKeyFilter();
Reference< XSingleSelectQueryComposer> xSourceComposer(m_xComposer,UNO_QUERY); Reference< XSingleSelectQueryComposer> xSourceComposer(m_xComposer,UNO_QUERY);
Reference< XMultiServiceFactory > xFactory(m_xConnection, UNO_QUERY_THROW); Reference< XMultiServiceFactory > xFactory(m_xConnection, UNO_QUERY_THROW);
...@@ -156,6 +151,17 @@ void OptimisticSet::makeNewStatement( ) ...@@ -156,6 +151,17 @@ void OptimisticSet::makeNewStatement( )
m_aSqlIterator.traverseAll(); m_aSqlIterator.traverseAll();
fillJoinedColumns_throw(m_aSqlIterator.getJoinConditions()); fillJoinedColumns_throw(m_aSqlIterator.getJoinConditions());
}
void OptimisticSet::makeNewStatement( )
{
OUStringBuffer aFilter = createKeyFilter();
Reference< XSingleSelectQueryComposer> xSourceComposer(m_xComposer,UNO_QUERY);
Reference< XMultiServiceFactory > xFactory(m_xConnection, UNO_QUERY_THROW);
Reference<XSingleSelectQueryComposer> xAnalyzer(xFactory->createInstance(SERVICE_NAME_SINGLESELECTQUERYCOMPOSER),UNO_QUERY);
xAnalyzer->setElementaryQuery(xSourceComposer->getElementaryQuery());
const OUString sComposerFilter = m_xComposer->getFilter(); const OUString sComposerFilter = m_xComposer->getFilter();
if ( !m_sRowSetFilter.isEmpty() || !sComposerFilter.isEmpty() ) if ( !m_sRowSetFilter.isEmpty() || !sComposerFilter.isEmpty() )
{ {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment