Tag: cws_src680_dba201a User: oj Date: 05/05/09 05:45:23 Modified: /dba/connectivity/source/drivers/ado/ ADatabaseMetaData.cxx, Aolevariant.cxx, Awrapado.cxx
Log: merger from dba201 File Changes: Directory: /dba/connectivity/source/drivers/ado/ ================================================ File [changed]: ADatabaseMetaData.cxx Url: http://dba.openoffice.org/source/browse/dba/connectivity/source/drivers/ado/ADatabaseMetaData.cxx?r1=1.16&r2=1.16.34.1 Delta lines: +31 -25 --------------------- --- ADatabaseMetaData.cxx 10 Mar 2005 15:22:20 -0000 1.16 +++ ADatabaseMetaData.cxx 9 May 2005 12:45:20 -0000 1.16.34.1 @@ -2,9 +2,9 @@ * * $RCSfile: ADatabaseMetaData.cxx,v $ * - * $Revision: 1.16 $ + * $Revision: 1.16.34.1 $ * - * last change: $Author: vg $ $Date: 2005/03/10 15:22:20 $ + * last change: $Author: oj $ $Date: 2005/05/09 12:45:20 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -164,7 +164,7 @@ m_pADOConnection->OpenSchema(adSchemaCatalogs,vtEmpty,vtEmpty,&pRecordset); ADOS::ThrowException(*m_pADOConnection,*this); - Reference< XResultSet > xRef = NULL; + Reference< XResultSet > xRef; ODatabaseMetaDataResultSet* pResult = new ODatabaseMetaDataResultSet(pRecordset); pResult->setCatalogsMap(); @@ -187,7 +187,7 @@ m_pADOConnection->OpenSchema(adSchemaSchemata,vtEmpty,vtEmpty,&pRecordset); ADOS::ThrowException(*m_pADOConnection,*this); - Reference< XResultSet > xRef = NULL; + Reference< XResultSet > xRef; ODatabaseMetaDataResultSet* pResult = new ODatabaseMetaDataResultSet(pRecordset); pResult->setSchemasMap(); @@ -202,7 +202,7 @@ ADORecordset *pRecordset = m_pADOConnection->getColumnPrivileges(catalog,schema,table,columnNamePattern); ADOS::ThrowException(*m_pADOConnection,*this); - Reference< XResultSet > xRef = NULL; + Reference< XResultSet > xRef; ODatabaseMetaDataResultSet* pResult = new ODatabaseMetaDataResultSet(pRecordset); pResult->setColumnPrivilegesMap(); @@ -217,7 +217,7 @@ ADORecordset *pRecordset = m_pADOConnection->getColumns(catalog,schemaPattern,tableNamePattern,columnNamePattern); ADOS::ThrowException(*m_pADOConnection,*this); - Reference< XResultSet > xRef = NULL; + Reference< XResultSet > xRef; ODatabaseMetaDataResultSet* pResult = new ODatabaseMetaDataResultSet(pRecordset); pResult->setColumnsMap(); @@ -233,7 +233,7 @@ ADORecordset *pRecordset = m_pADOConnection->getTables(catalog,schemaPattern,tableNamePattern,types); ADOS::ThrowException(*m_pADOConnection,*this); - Reference< XResultSet > xRef = NULL; + Reference< XResultSet > xRef; ODatabaseMetaDataResultSet* pResult = new ODatabaseMetaDataResultSet(pRecordset); pResult->setTablesMap(); @@ -249,7 +249,7 @@ ADORecordset *pRecordset = m_pADOConnection->getProcedureColumns(catalog,schemaPattern,procedureNamePattern,columnNamePattern); ADOS::ThrowException(*m_pADOConnection,*this); - Reference< XResultSet > xRef = NULL; + Reference< XResultSet > xRef; ODatabaseMetaDataResultSet* pResult = new ODatabaseMetaDataResultSet(pRecordset); pResult->setProcedureColumnsMap(); @@ -266,7 +266,7 @@ ADORecordset *pRecordset = m_pADOConnection->getProcedures(catalog,schemaPattern,procedureNamePattern); ADOS::ThrowException(*m_pADOConnection,*this); - Reference< XResultSet > xRef = NULL; + Reference< XResultSet > xRef; ODatabaseMetaDataResultSet* pResult = new ODatabaseMetaDataResultSet(pRecordset); pResult->setProceduresMap(); @@ -278,7 +278,11 @@ Reference< XResultSet > SAL_CALL ODatabaseMetaData::getVersionColumns( const Any& catalog, const ::rtl::OUString& schema, const ::rtl::OUString& table ) throw(SQLException, RuntimeException) { - return new ODatabaseMetaDataResultSet(NULL); + Reference< XResultSet > xRef; + ::connectivity::ODatabaseMetaDataResultSet* pResult = new ::connectivity::ODatabaseMetaDataResultSet(); + xRef = pResult; + pResult->setVersionColumnsMap(); + return xRef; } // ------------------------------------------------------------------------- sal_Int32 SAL_CALL ODatabaseMetaData::getMaxBinaryLiteralLength( ) throw(SQLException, RuntimeException) @@ -348,7 +352,7 @@ ADORecordset *pRecordset = m_pADOConnection->getExportedKeys(catalog,schema,table); ADOS::ThrowException(*m_pADOConnection,*this); - Reference< XResultSet > xRef = NULL; + Reference< XResultSet > xRef; ODatabaseMetaDataResultSet* pResult = new ODatabaseMetaDataResultSet(pRecordset); pResult->setCrossReferenceMap(); xRef = pResult; @@ -362,7 +366,7 @@ ADORecordset *pRecordset = m_pADOConnection->getImportedKeys(catalog,schema,table); ADOS::ThrowException(*m_pADOConnection,*this); - Reference< XResultSet > xRef = NULL; + Reference< XResultSet > xRef; ODatabaseMetaDataResultSet* pResult = new ODatabaseMetaDataResultSet(pRecordset); pResult->setCrossReferenceMap(); @@ -377,7 +381,7 @@ ADORecordset *pRecordset = m_pADOConnection->getPrimaryKeys(catalog,schema,table); ADOS::ThrowException(*m_pADOConnection,*this); - Reference< XResultSet > xRef = NULL; + Reference< XResultSet > xRef; ODatabaseMetaDataResultSet* pResult = new ODatabaseMetaDataResultSet(pRecordset); pResult->setPrimaryKeysMap(); @@ -393,7 +397,7 @@ ADORecordset *pRecordset = m_pADOConnection->getIndexInfo(catalog,schema,table,unique,approximate); ADOS::ThrowException(*m_pADOConnection,*this); - Reference< XResultSet > xRef = NULL; + Reference< XResultSet > xRef; ODatabaseMetaDataResultSet* pResult = new ODatabaseMetaDataResultSet(pRecordset); pResult->setIndexInfoMap(); @@ -406,17 +410,18 @@ const Any& catalog, const ::rtl::OUString& schema, const ::rtl::OUString& table, sal_Int32 scope, sal_Bool nullable ) throw(SQLException, RuntimeException) { - Reference< XResultSet > xRef = NULL; + Reference< XResultSet > xRef; - ODatabaseMetaDataResultSet* pResult = new ODatabaseMetaDataResultSet(NULL); + ::connectivity::ODatabaseMetaDataResultSet* pResult = new ::connectivity::ODatabaseMetaDataResultSet(); xRef = pResult; + pResult->setBestRowIdentifierMap(); return xRef; } // ------------------------------------------------------------------------- Reference< XResultSet > SAL_CALL ODatabaseMetaData::getTablePrivileges( const Any& catalog, const ::rtl::OUString& schemaPattern, const ::rtl::OUString& tableNamePattern ) throw(SQLException, RuntimeException) { - Reference< XResultSet > xRef = NULL; + Reference< XResultSet > xRef; if(!ADOS::isJetEngine(m_pConnection->getEngineType())) { // the jet provider doesn't support this method // Create elements used in the array @@ -475,7 +480,7 @@ ADORecordset *pRecordset = m_pADOConnection->getCrossReference(primaryCatalog,primarySchema,primaryTable,foreignCatalog,foreignSchema,foreignTable); ADOS::ThrowException(*m_pADOConnection,*this); - Reference< XResultSet > xRef = NULL; + Reference< XResultSet > xRef; ODatabaseMetaDataResultSet* pResult = new ODatabaseMetaDataResultSet(pRecordset); pResult->setCrossReferenceMap(); @@ -696,10 +701,11 @@ Reference< XResultSet > SAL_CALL ODatabaseMetaData::getTableTypes( ) throw(SQLException, RuntimeException) { // Create elements used in the array - Reference< XResultSet > xRef = NULL; + Reference< XResultSet > xRef; - ODatabaseMetaDataResultSet* pResult = new ODatabaseMetaDataResultSet(NULL); + ::connectivity::ODatabaseMetaDataResultSet* pResult = new ::connectivity::ODatabaseMetaDataResultSet(); xRef = pResult; + pResult->setTableTypes(); return xRef; } // ------------------------------------------------------------------------- @@ -1153,7 +1159,7 @@ // ------------------------------------------------------------------------- Reference< XResultSet > SAL_CALL ODatabaseMetaData::getUDTs( const Any& catalog, const ::rtl::OUString& schemaPattern, const ::rtl::OUString& typeNamePattern, const Sequence< sal_Int32 >& types ) throw(SQLException, RuntimeException) { - Reference< XResultSet > xRef = NULL; + Reference< XResultSet > xRef; ODatabaseMetaDataResultSet* pResult = new ODatabaseMetaDataResultSet(NULL); xRef = pResult; File [changed]: Aolevariant.cxx Url: http://dba.openoffice.org/source/browse/dba/connectivity/source/drivers/ado/Aolevariant.cxx?r1=1.9&r2=1.9.218.1 Delta lines: +4 -4 ------------------- --- Aolevariant.cxx 22 May 2003 10:49:38 -0000 1.9 +++ Aolevariant.cxx 9 May 2005 12:45:20 -0000 1.9.218.1 @@ -2,9 +2,9 @@ * * $RCSfile: Aolevariant.cxx,v $ * - * $Revision: 1.9 $ + * $Revision: 1.9.218.1 $ * - * last change: $Author: vg $ $Date: 2003/05/22 10:49:38 $ + * last change: $Author: oj $ $Date: 2005/05/09 12:45:20 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses File [changed]: Awrapado.cxx Url: http://dba.openoffice.org/source/browse/dba/connectivity/source/drivers/ado/Awrapado.cxx?r1=1.14&r2=1.14.104.1 Delta lines: +40 -27 --------------------- --- Awrapado.cxx 1 Jun 2004 10:06:32 -0000 1.14 +++ Awrapado.cxx 9 May 2005 12:45:20 -0000 1.14.104.1 @@ -2,9 +2,9 @@ * * $RCSfile: Awrapado.cxx,v $ * - * $Revision: 1.14 $ + * $Revision: 1.14.104.1 $ * - * last change: $Author: obo $ $Date: 2004/06/01 10:06:32 $ + * last change: $Author: oj $ $Date: 2005/05/09 12:45:20 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -67,6 +67,10 @@ #ifndef _COMPHELPER_TYPES_HXX_ #include <comphelper/types.hxx> #endif +#ifndef _RTL_USTRBUF_HXX_ +#include <rtl/ustrbuf.hxx> +#endif + namespace connectivity { @@ -2020,40 +2024,49 @@ { // Create elements used in the array HRESULT hr = S_OK; - SAFEARRAYBOUND rgsabound[1]; - SAFEARRAY *psa = NULL; OLEVariant varCriteria[4]; - // Create SafeArray Bounds and initialize the array - rgsabound[0].lLbound = 0; - rgsabound[0].cElements = sizeof varCriteria / sizeof varCriteria[0]; - psa = SafeArrayCreate( VT_VARIANT, 1, rgsabound ); - sal_Int32 nPos=0; - if(catalog.hasValue()) - varCriteria[nPos].setString(::comphelper::getString(catalog)); + ::rtl::OUString sCatalog; + if ( catalog.hasValue() && (catalog >>= sCatalog) ) + varCriteria[nPos].setString(sCatalog); - hr = SafeArrayPutElement(psa,&nPos,&varCriteria[nPos]);nPos++;// TABLE_CATALOG + ++nPos; if(schemaPattern.getLength() && schemaPattern.toChar() != '%') varCriteria[nPos].setString(schemaPattern); - hr = SafeArrayPutElement(psa,&nPos,&varCriteria[nPos]);nPos++;// TABLE_SCHEMA + ++nPos; if(tableNamePattern.toChar() != '%') varCriteria[nPos].setString(tableNamePattern); - hr = SafeArrayPutElement(psa,&nPos,&varCriteria[nPos]);nPos++;// TABLE_NAME - ::rtl::OUString aTypes,aComma = ::rtl::OUString::createFromAscii(","); - const ::rtl::OUString* pBegin = types.getConstArray(); - const ::rtl::OUString* pEnd = pBegin + types.getLength(); - for(;pBegin != pEnd;++pBegin) - aTypes = aTypes + *pBegin + aComma; - - if(aTypes.getLength()) - varCriteria[nPos].setString(aTypes); - // else - // varCriteria[nPos].setString(::rtl::OUString::createFromAscii("TABLE")); + ++nPos; + ::rtl::OUStringBuffer aTypes; + ::rtl::OUString aComma = ::rtl::OUString::createFromAscii(","); + const ::rtl::OUString* pIter = types.getConstArray(); + const ::rtl::OUString* pEnd = pIter + types.getLength(); + for( ; pIter != pEnd ; ++pIter) + { + if ( aTypes.getLength() ) + aTypes.append(aComma); + aTypes.append(*pIter); + } + + ::rtl::OUString sTypeNames = aTypes.makeStringAndClear(); + if ( sTypeNames.getLength() ) + varCriteria[nPos].setString(sTypeNames); - hr = SafeArrayPutElement(psa,&nPos,&varCriteria[nPos]);nPos++;// TABLE_TYPE + // Create SafeArray Bounds and initialize the array + const sal_Int32 nCrit = sizeof varCriteria / sizeof varCriteria[0]; + SAFEARRAYBOUND rgsabound[1]; + rgsabound[0].lLbound = 0; + rgsabound[0].cElements = nCrit; + SAFEARRAY *psa = SafeArrayCreate( VT_VARIANT, 1, rgsabound ); + + // Set the values for each element of the array + for( long i = 0 ; i < nCrit && SUCCEEDED( hr );i++) + { + hr = SafeArrayPutElement(psa, &i,&varCriteria[i]); + } OLEVariant vtEmpty; vtEmpty.setNoArg(); --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
