User: kz Date: 2006/12/13 08:20:50 Modified: dba/connectivity/source/drivers/mozab/mozillasrc/MNSMozabProxy.cxx
Log: INTEGRATION: CWS dba22ui (1.8.20); FILE MERGED 2006/12/04 11:19:14 fs 1.8.20.2: properly recognize invalid LDAP connections / #i71773# STR_COULD_NOT_CONNECT_LDAP 2006/10/25 10:15:46 fs 1.8.20.1: during #i62664#: new .hrc File Changes: Directory: /dba/connectivity/source/drivers/mozab/mozillasrc/ ============================================================= File [changed]: MNSMozabProxy.cxx Url: http://dba.openoffice.org/source/browse/dba/connectivity/source/drivers/mozab/mozillasrc/MNSMozabProxy.cxx?r1=1.8&r2=1.9 Delta lines: +14 -16 --------------------- --- MNSMozabProxy.cxx 17 Sep 2006 03:01:27 -0000 1.8 +++ MNSMozabProxy.cxx 13 Dec 2006 16:20:47 -0000 1.9 @@ -39,9 +39,7 @@ #include "MNSMozabProxy.hxx" #endif -#ifndef CONNECTIVITY_SHARED_RES_HRC -#include "conn_shared_res.hrc" -#endif +#include "resource/mozab_res.hrc" #ifndef _CONNECTIVITY_MAB_DATABASEMETADATAHELPER_HXX_ #include "MDatabaseMetaDataHelper.hxx" @@ -239,14 +237,17 @@ namespace connectivity { namespace mozab { - class MLDAPMessageListener : public nsILDAPMessageListener { + class MLDAPMessageListener : public nsILDAPMessageListener + { NS_DECL_ISUPPORTS NS_DECL_NSILDAPMESSAGELISTENER MLDAPMessageListener(); virtual ~MLDAPMessageListener(); - sal_Bool connected(); + sal_Bool initialized() const; + sal_Bool goodConnection() const { return initialized() && m_GoodConnection; } + protected: ::osl::Mutex m_aMutex; @@ -274,10 +275,9 @@ { } -sal_Bool MLDAPMessageListener::connected() +sal_Bool MLDAPMessageListener::initialized() const { - - return m_aCondition.check(); + return const_cast< MLDAPMessageListener* >( this )->m_aCondition.check(); } void MLDAPMessageListener::setConnectionStatus( sal_Bool _good ) @@ -291,10 +291,7 @@ NS_IMETHODIMP MLDAPMessageListener::OnLDAPInit(nsILDAPConnection* /*aConn*/, nsresult aStatus ) { - // Make sure that the Init() worked properly - if ( NS_FAILED(aStatus ) ) { - setConnectionStatus( sal_False ); - } + setConnectionStatus( NS_SUCCEEDED( aStatus ) ); return aStatus; } @@ -344,10 +341,11 @@ case ProxiedFunc::FUNC_TESTLDAP_IS_LDAP_CONNECTED: if (m_Args->arg5) { - if ( ((MLDAPMessageListener*)m_Args->arg5)->connected()) - { - rv = 0; - } + const MLDAPMessageListener* pListener( static_cast< const MLDAPMessageListener* >( m_Args->arg5 ) ); + if ( pListener->initialized() ) + rv = pListener->goodConnection() ? 0 : PR_NOT_CONNECTED_ERROR; + else + rv = (nsresult)PR_CONNECT_TIMEOUT_ERROR; } break; case ProxiedFunc::FUNC_TESTLDAP_RELEASE_RESOURCE: --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
