User: obo Date: 2006/07/10 07:18:50 Modified: dba/connectivity/source/commontools/TColumnsHelper.cxx
Log: INTEGRATION: CWS qiq (1.6.104); FILE MERGED 2006/06/27 13:55:30 fs 1.6.104.3: RESYNC: (1.6-1.7); FILE MERGED 2006/06/16 11:32:28 fs 1.6.104.2: during #i51143#: refactored VCollection: - createEmptyObject now named createDescriptor - cloneObject removed - appendObject now returns the newly created object (previously done via a subsequent call to cloneObject) 2006/05/23 13:24:20 fs 1.6.104.1: some refactoring of compose/quoteTableName and friends, in preparation of #i51143# File Changes: Directory: /dba/connectivity/source/commontools/ ================================================ File [changed]: TColumnsHelper.cxx Url: http://dba.openoffice.org/source/browse/dba/connectivity/source/commontools/TColumnsHelper.cxx?r1=1.7&r2=1.8 Delta lines: +22 -33 --------------------- --- TColumnsHelper.cxx 20 Jun 2006 01:03:29 -0000 1.7 +++ TColumnsHelper.cxx 10 Jul 2006 14:18:48 -0000 1.8 @@ -130,10 +130,7 @@ ColumnInformationMap::iterator aFind = m_pImpl->m_aColumnInfo.find(_rName); if ( aFind == m_pImpl->m_aColumnInfo.end() ) // we have to fill it { - Reference<XDatabaseMetaData> xMetaData = xConnection->getMetaData(); - sal_Bool bUseCatalogInSelect = isDataSourcePropertyEnabled(xConnection,::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("UseCatalogInSelect")),sal_True); - sal_Bool bUseSchemaInSelect = isDataSourcePropertyEnabled(xConnection,::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("UseSchemaInSelect")),sal_True); - ::rtl::OUString sComposedName = ::dbtools::composeTableName(xMetaData,m_pTable,sal_True,::dbtools::eInDataManipulation,bUseCatalogInSelect,bUseSchemaInSelect); + ::rtl::OUString sComposedName = ::dbtools::composeTableNameForSelect( xConnection, m_pTable ); collectColumnInformation(xConnection,sComposedName,::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("*")) ,m_pImpl->m_aColumnInfo); aFind = m_pImpl->m_aColumnInfo.find(_rName); } @@ -167,32 +164,24 @@ } } // ------------------------------------------------------------------------- -Reference< XPropertySet > OColumnsHelper::createEmptyObject() +Reference< XPropertySet > OColumnsHelper::createDescriptor() { return new OColumn(sal_True); } // ----------------------------------------------------------------------------- -sdbcx::ObjectType OColumnsHelper::cloneObject(const Reference< XPropertySet >& _xDescriptor) -{ - Reference<XPropertySet> xProp = createEmptyObject(); - ::comphelper::copyProperties(_xDescriptor,xProp); - return xProp; -} -// ----------------------------------------------------------------------------- // XAppend -void OColumnsHelper::appendObject( const Reference< XPropertySet >& descriptor ) +sdbcx::ObjectType OColumnsHelper::appendObject( const ::rtl::OUString& _rForName, const Reference< XPropertySet >& descriptor ) { ::osl::MutexGuard aGuard(m_rMutex); OSL_ENSURE(m_pTable,"OColumnsHelper::appendByDescriptor: Table is null!"); - OSL_ENSURE(descriptor.is(),"OColumnsHelper::appendByDescriptor: descriptor is null!"); + if ( !m_pTable || m_pTable->isNew() ) + return cloneDescriptor( descriptor ); - if ( descriptor.is() && m_pTable && !m_pTable->isNew() ) - { Reference<XDatabaseMetaData> xMetaData = m_pTable->getConnection()->getMetaData(); ::rtl::OUString aSql = ::rtl::OUString::createFromAscii("ALTER TABLE "); ::rtl::OUString aQuote = xMetaData->getIdentifierQuoteString( ); - aSql += ::dbtools::composeTableName(xMetaData,m_pTable,sal_True,::dbtools::eInTableDefinitions); + aSql += ::dbtools::composeTableName( xMetaData, m_pTable, ::dbtools::eInTableDefinitions, false, false, true ); aSql += ::rtl::OUString::createFromAscii(" ADD "); aSql += ::dbtools::createStandardColumnPart(descriptor,m_pTable->getConnection()); @@ -202,7 +191,7 @@ xStmt->execute(aSql); ::comphelper::disposeComponent(xStmt); } - } + return createObject( _rForName ); } // ------------------------------------------------------------------------- // XDrop @@ -215,7 +204,7 @@ Reference<XDatabaseMetaData> xMetaData = m_pTable->getConnection()->getMetaData(); ::rtl::OUString aQuote = xMetaData->getIdentifierQuoteString( ); - aSql += ::dbtools::composeTableName(xMetaData,m_pTable,sal_True,::dbtools::eInTableDefinitions); + aSql += ::dbtools::composeTableName( xMetaData, m_pTable, ::dbtools::eInTableDefinitions, false, false, true ); aSql += ::rtl::OUString::createFromAscii(" DROP "); aSql += ::dbtools::quoteName( aQuote,_sElementName); --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
