User: obo Date: 2006/07/10 08:10:06 Modified: dba/dbaccess/source/core/dataaccess/connection.hxx
Log: INTEGRATION: CWS qiq (1.23.4); FILE MERGED 2006/05/30 08:23:21 fs 1.23.4.4: createObjectNames -> getObjectNames (the thing is stateless, so no need to re-create it every time) 2006/05/24 06:41:37 fs 1.23.4.3: #i51143# implement XConnectionTools 2006/05/11 11:25:53 fs 1.23.4.2: #i51143# derive from XWarningsSupplier (already implemented, but not derived) 2006/05/10 14:23:54 fs 1.23.4.1: #i51143# when connecting, check for conflicts between query and table names, and warn about them File Changes: Directory: /dba/dbaccess/source/core/dataaccess/ ================================================ File [changed]: connection.hxx Url: http://dba.openoffice.org/source/browse/dba/dbaccess/source/core/dataaccess/connection.hxx?r1=1.23&r2=1.24 Delta lines: +72 -35 --------------------- --- connection.hxx 4 May 2006 08:37:32 -0000 1.23 +++ connection.hxx 10 Jul 2006 15:10:04 -0000 1.24 @@ -35,6 +35,26 @@ #ifndef _DBA_CORE_CONNECTION_HXX_ #define _DBA_CORE_CONNECTION_HXX_ +#ifndef _DBASHARED_APITOOLS_HXX_ +#include "apitools.hxx" +#endif +#ifndef _DBA_CORE_QUERYCONTAINER_HXX_ +#include "querycontainer.hxx" +#endif +#ifndef _DBA_CORE_TABLECONTAINER_HXX_ +#include "tablecontainer.hxx" +#endif +#ifndef _DBA_CORE_VIEWCONTAINER_HXX_ +#include "viewcontainer.hxx" +#endif +#ifndef DBA_CORE_REFRESHLISTENER_HXX +#include "RefreshListener.hxx" +#endif +#ifndef DBA_CORE_WARNINGS_HXX +#include "warning.hxx" +#endif + +/** === begin UNO includes === **/ #ifndef _COM_SUN_STAR_CONTAINER_XCHILD_HPP_ #include <com/sun/star/container/XChild.hpp> #endif @@ -62,32 +82,26 @@ #ifndef _COM_SUN_STAR_SDB_XQUERIESSUPPLIER_HPP_ #include <com/sun/star/sdb/XQueriesSupplier.hpp> #endif -#ifndef _CPPUHELPER_IMPLBASE11_HXX_ -#include <cppuhelper/implbase11.hxx> -#endif -#ifndef _DBASHARED_APITOOLS_HXX_ -#include "apitools.hxx" +#ifndef _COM_SUN_STAR_LANG_XMULTISERVICEFACTORY_HPP_ +#include <com/sun/star/lang/XMultiServiceFactory.hpp> #endif -#ifndef _DBA_CORE_QUERYCONTAINER_HXX_ -#include "querycontainer.hxx" +#ifndef _COM_SUN_STAR_SDB_TOOLS_XCONNECTIONTOOLS_HPP_ +#include <com/sun/star/sdb/tools/XConnectionTools.hpp> #endif -#ifndef _DBA_CORE_TABLECONTAINER_HXX_ -#include "tablecontainer.hxx" +/** === end UNO includes === **/ + +#if ! defined(INCLUDED_COMPHELPER_IMPLBASE_VAR_HXX_13) +#define INCLUDED_COMPHELPER_IMPLBASE_VAR_HXX_13 +#define COMPHELPER_IMPLBASE_INTERFACE_NUMBER 13 +#include <comphelper/implbase_var.hxx> #endif -#ifndef _DBA_CORE_VIEWCONTAINER_HXX_ -#include "viewcontainer.hxx" + +#ifndef COMPHELPER_COMPONENTCONTEXT_HXX +#include <comphelper/componentcontext.hxx> #endif + #ifndef _CONNECTIVITY_CONNECTIONWRAPPER_HXX_ -#include "connectivity/ConnectionWrapper.hxx" -#endif -#ifndef DBA_CORE_REFRESHLISTENER_HXX -#include "RefreshListener.hxx" -#endif -#ifndef DBA_CORE_WARNINGS_HXX -#include "warning.hxx" -#endif -#ifndef _COM_SUN_STAR_LANG_XMULTISERVICEFACTORY_HPP_ -#include <com/sun/star/lang/XMultiServiceFactory.hpp> +#include <connectivity/ConnectionWrapper.hxx> #endif //........................................................................ @@ -97,10 +111,11 @@ //========================================================================== //========================================================================== -typedef ::cppu::ImplHelper11< ::com::sun::star::container::XChild +typedef ::comphelper::ImplHelper13 < ::com::sun::star::container::XChild , ::com::sun::star::sdbcx::XTablesSupplier , ::com::sun::star::sdbcx::XViewsSupplier , ::com::sun::star::sdbc::XConnection + , ::com::sun::star::sdbc::XWarningsSupplier , ::com::sun::star::sdb::XQueriesSupplier , ::com::sun::star::sdb::XSQLQueryComposerFactory , ::com::sun::star::sdb::XCommandPreparation @@ -108,6 +123,7 @@ , ::com::sun::star::lang::XMultiServiceFactory , ::com::sun::star::sdbcx::XUsersSupplier , ::com::sun::star::sdbcx::XGroupsSupplier + , ::com::sun::star::sdb::tools::XConnectionTools > OConnection_Base; class ODatabaseSource; @@ -131,8 +147,9 @@ // the filter as set on the parent data link at construction of the connection ::com::sun::star::uno::Sequence< ::rtl::OUString > m_aTableFilter; ::com::sun::star::uno::Sequence< ::rtl::OUString > m_aTableTypeFilter; - ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > m_xORB; + ::comphelper::ComponentContext m_aContext; ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection > m_xMasterConnection; + ::com::sun::star::uno::Reference< ::com::sun::star::sdb::tools::XConnectionTools > m_xConnectionTools; OTableContainer* m_pTables; OViewContainer* m_pViews; @@ -220,6 +237,11 @@ // XGroupsSupplier virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess > SAL_CALL getGroups( ) throw(::com::sun::star::uno::RuntimeException); + // XConnectionTools + virtual ::com::sun::star::uno::Reference< ::com::sun::star::sdb::tools::XTableName > SAL_CALL createTableName( ) throw (::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::sdb::tools::XObjectNames > SAL_CALL getObjectNames( ) throw (::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Reference< ::com::sun::star::sdb::tools::XDataSourceMetaData > SAL_CALL getDataSourceMetaData( ) throw (::com::sun::star::uno::RuntimeException); + // IRefreshListener virtual void refresh(const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess >& _rToBeRefreshed); @@ -231,6 +253,21 @@ } ::com::sun::star::uno::Reference< ::com::sun::star::sdbcx::XTablesSupplier > getMasterTables(); + +private: + /** checks whether or not there are naming conflicts between tables and queries + */ + void impl_checkTableQueryNames_nothrow(); + + /** loads the XConnectionTools implementation which we forward the respective functionality to + + @throws ::com::sun::star::uno::RuntimeException + if the implementation cannot be loaded + + @postcond + m_xConnectionTools is nol <NULL/> + */ + void impl_loadConnectionTools_throw(); }; //........................................................................ --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
