User: rt Date: 2008-01-30 07:49:08+0000 Modified: dba/connectivity/source/drivers/ado/AConnection.cxx
Log: INTEGRATION: CWS dba24d (1.28.78); FILE MERGED 2007/11/21 12:40:39 oj 1.28.78.1: #i68854# impl TypeSettingInfo for Oracle and some clean up File Changes: Directory: /dba/connectivity/source/drivers/ado/ ================================================ File [changed]: AConnection.cxx Url: http://dba.openoffice.org/source/browse/dba/connectivity/source/drivers/ado/AConnection.cxx?r1=1.28&r2=1.29 Delta lines: +15 -21 --------------------- --- AConnection.cxx 2007-03-26 13:56:26+0000 1.28 +++ AConnection.cxx 2008-01-30 07:49:05+0000 1.29 @@ -95,7 +95,6 @@ OConnection::OConnection(ODriver* _pDriver) throw(SQLException, RuntimeException) : OSubComponent<OConnection, OConnection_BASE>((::cppu::OWeakObject*)_pDriver, this), m_bClosed(sal_False), - m_xMetaData(NULL), m_xCatalog(NULL), m_pDriver(_pDriver), m_pAdoConnection(NULL), @@ -148,6 +147,8 @@ { osl_incrementInterlockedCount( &m_refCount ); + setConnectionInfo(info); + sal_Int32 nLen = url.indexOf(':'); nLen = url.indexOf(':',nLen+1); ::rtl::OUString aDSN(url.copy(nLen+1)),aUID,aPWD; @@ -156,18 +157,18 @@ sal_Int32 nTimeout = 20; sal_Bool bSilent = sal_True; - const PropertyValue *pBegin = info.getConstArray(); - const PropertyValue *pEnd = pBegin + info.getLength(); - for(;pBegin != pEnd;++pBegin) - { - if(!pBegin->Name.compareToAscii("Timeout")) - pBegin->Value >>= nTimeout; - else if(!pBegin->Name.compareToAscii("Silent")) - pBegin->Value >>= bSilent; - else if(!pBegin->Name.compareToAscii("user")) - pBegin->Value >>= aUID; - else if(!pBegin->Name.compareToAscii("password")) - pBegin->Value >>= aPWD; + const PropertyValue *pIter = info.getConstArray(); + const PropertyValue *pEnd = pIter + info.getLength(); + for(;pIter != pEnd;++pIter) + { + if(!pIter->Name.compareToAscii("Timeout")) + pIter->Value >>= nTimeout; + else if(!pIter->Name.compareToAscii("Silent")) + pIter->Value >>= bSilent; + else if(!pIter->Name.compareToAscii("user")) + pIter->Value >>= aUID; + else if(!pIter->Name.compareToAscii("password")) + pIter->Value >>= aPWD; } if(m_pAdoConnection) @@ -513,13 +514,7 @@ { ::osl::MutexGuard aGuard(m_aMutex); - // m_aTables.disposing(); - for (OWeakRefArray::iterator i = m_aStatements.begin(); m_aStatements.end() != i; ++i) - { - Reference< XInterface > xStatement( i->get() ); - ::comphelper::disposeComponent( xStatement ); - } - m_aStatements.clear(); + OConnection_BASE::disposing(); m_bClosed = sal_True; m_xMetaData = ::com::sun::star::uno::WeakReference< ::com::sun::star::sdbc::XDatabaseMetaData>(); @@ -538,7 +533,6 @@ m_pAdoConnection = NULL; dispose_ChildImpl(); - OConnection_BASE::disposing(); } // ----------------------------------------------------------------------------- sal_Int64 SAL_CALL OConnection::getSomething( const ::com::sun::star::uno::Sequence< sal_Int8 >& rId ) throw (::com::sun::star::uno::RuntimeException) --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
