1*b1cdbd2cSJim Jagielski /************************************************************** 2*b1cdbd2cSJim Jagielski * 3*b1cdbd2cSJim Jagielski * Licensed to the Apache Software Foundation (ASF) under one 4*b1cdbd2cSJim Jagielski * or more contributor license agreements. See the NOTICE file 5*b1cdbd2cSJim Jagielski * distributed with this work for additional information 6*b1cdbd2cSJim Jagielski * regarding copyright ownership. The ASF licenses this file 7*b1cdbd2cSJim Jagielski * to you under the Apache License, Version 2.0 (the 8*b1cdbd2cSJim Jagielski * "License"); you may not use this file except in compliance 9*b1cdbd2cSJim Jagielski * with the License. You may obtain a copy of the License at 10*b1cdbd2cSJim Jagielski * 11*b1cdbd2cSJim Jagielski * http://www.apache.org/licenses/LICENSE-2.0 12*b1cdbd2cSJim Jagielski * 13*b1cdbd2cSJim Jagielski * Unless required by applicable law or agreed to in writing, 14*b1cdbd2cSJim Jagielski * software distributed under the License is distributed on an 15*b1cdbd2cSJim Jagielski * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*b1cdbd2cSJim Jagielski * KIND, either express or implied. See the License for the 17*b1cdbd2cSJim Jagielski * specific language governing permissions and limitations 18*b1cdbd2cSJim Jagielski * under the License. 19*b1cdbd2cSJim Jagielski * 20*b1cdbd2cSJim Jagielski *************************************************************/ 21*b1cdbd2cSJim Jagielski 22*b1cdbd2cSJim Jagielski 23*b1cdbd2cSJim Jagielski #ifndef _DBA_CORE_CONNECTION_HXX_ 24*b1cdbd2cSJim Jagielski #define _DBA_CORE_CONNECTION_HXX_ 25*b1cdbd2cSJim Jagielski 26*b1cdbd2cSJim Jagielski #include "apitools.hxx" 27*b1cdbd2cSJim Jagielski #include "querycontainer.hxx" 28*b1cdbd2cSJim Jagielski #include "tablecontainer.hxx" 29*b1cdbd2cSJim Jagielski #include "viewcontainer.hxx" 30*b1cdbd2cSJim Jagielski #include "RefreshListener.hxx" 31*b1cdbd2cSJim Jagielski 32*b1cdbd2cSJim Jagielski /** === begin UNO includes === **/ 33*b1cdbd2cSJim Jagielski #include <com/sun/star/container/XChild.hpp> 34*b1cdbd2cSJim Jagielski #include <com/sun/star/lang/DisposedException.hpp> 35*b1cdbd2cSJim Jagielski #include <com/sun/star/sdb/XSQLQueryComposerFactory.hpp> 36*b1cdbd2cSJim Jagielski #include <com/sun/star/sdb/XCommandPreparation.hpp> 37*b1cdbd2cSJim Jagielski #include <com/sun/star/sdbcx/XTablesSupplier.hpp> 38*b1cdbd2cSJim Jagielski #include <com/sun/star/sdbcx/XViewsSupplier.hpp> 39*b1cdbd2cSJim Jagielski #include <com/sun/star/sdbcx/XUsersSupplier.hpp> 40*b1cdbd2cSJim Jagielski #include <com/sun/star/sdbcx/XGroupsSupplier.hpp> 41*b1cdbd2cSJim Jagielski #include <com/sun/star/sdb/XQueriesSupplier.hpp> 42*b1cdbd2cSJim Jagielski #include <com/sun/star/lang/XMultiServiceFactory.hpp> 43*b1cdbd2cSJim Jagielski #include <com/sun/star/sdb/tools/XConnectionTools.hpp> 44*b1cdbd2cSJim Jagielski #include <com/sun/star/sdb/application/XTableUIProvider.hpp> 45*b1cdbd2cSJim Jagielski /** === end UNO includes === **/ 46*b1cdbd2cSJim Jagielski 47*b1cdbd2cSJim Jagielski #if ! defined(INCLUDED_COMPHELPER_IMPLBASE_VAR_HXX_14) 48*b1cdbd2cSJim Jagielski #define INCLUDED_COMPHELPER_IMPLBASE_VAR_HXX_14 49*b1cdbd2cSJim Jagielski #define COMPHELPER_IMPLBASE_INTERFACE_NUMBER 14 50*b1cdbd2cSJim Jagielski #include <comphelper/implbase_var.hxx> 51*b1cdbd2cSJim Jagielski #endif 52*b1cdbd2cSJim Jagielski #include <comphelper/componentcontext.hxx> 53*b1cdbd2cSJim Jagielski #include <comphelper/stl_types.hxx> 54*b1cdbd2cSJim Jagielski #include <connectivity/ConnectionWrapper.hxx> 55*b1cdbd2cSJim Jagielski #include <connectivity/warningscontainer.hxx> 56*b1cdbd2cSJim Jagielski 57*b1cdbd2cSJim Jagielski //........................................................................ 58*b1cdbd2cSJim Jagielski namespace dbaccess 59*b1cdbd2cSJim Jagielski { 60*b1cdbd2cSJim Jagielski //........................................................................ 61*b1cdbd2cSJim Jagielski 62*b1cdbd2cSJim Jagielski //========================================================================== 63*b1cdbd2cSJim Jagielski //========================================================================== 64*b1cdbd2cSJim Jagielski typedef ::comphelper::ImplHelper14 < ::com::sun::star::container::XChild 65*b1cdbd2cSJim Jagielski , ::com::sun::star::sdbcx::XTablesSupplier 66*b1cdbd2cSJim Jagielski , ::com::sun::star::sdbcx::XViewsSupplier 67*b1cdbd2cSJim Jagielski , ::com::sun::star::sdbc::XConnection 68*b1cdbd2cSJim Jagielski , ::com::sun::star::sdbc::XWarningsSupplier 69*b1cdbd2cSJim Jagielski , ::com::sun::star::sdb::XQueriesSupplier 70*b1cdbd2cSJim Jagielski , ::com::sun::star::sdb::XSQLQueryComposerFactory 71*b1cdbd2cSJim Jagielski , ::com::sun::star::sdb::XCommandPreparation 72*b1cdbd2cSJim Jagielski , ::com::sun::star::lang::XServiceInfo 73*b1cdbd2cSJim Jagielski , ::com::sun::star::lang::XMultiServiceFactory 74*b1cdbd2cSJim Jagielski , ::com::sun::star::sdbcx::XUsersSupplier 75*b1cdbd2cSJim Jagielski , ::com::sun::star::sdbcx::XGroupsSupplier 76*b1cdbd2cSJim Jagielski , ::com::sun::star::sdb::tools::XConnectionTools 77*b1cdbd2cSJim Jagielski , ::com::sun::star::sdb::application::XTableUIProvider 78*b1cdbd2cSJim Jagielski > OConnection_Base; 79*b1cdbd2cSJim Jagielski 80*b1cdbd2cSJim Jagielski class ODatabaseSource; 81*b1cdbd2cSJim Jagielski //========================================================================== 82*b1cdbd2cSJim Jagielski //= OConnection 83*b1cdbd2cSJim Jagielski //========================================================================== 84*b1cdbd2cSJim Jagielski class OConnection :public ::comphelper::OBaseMutex 85*b1cdbd2cSJim Jagielski ,public OSubComponent 86*b1cdbd2cSJim Jagielski ,public ::connectivity::OConnectionWrapper 87*b1cdbd2cSJim Jagielski ,public OConnection_Base 88*b1cdbd2cSJim Jagielski ,public IRefreshListener 89*b1cdbd2cSJim Jagielski { 90*b1cdbd2cSJim Jagielski protected: 91*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Reference< ::com::sun::star::sdbcx::XTablesSupplier > 92*b1cdbd2cSJim Jagielski m_xMasterTables; // just to avoid the recreation of the catalog 93*b1cdbd2cSJim Jagielski OWeakRefArray m_aStatements; 94*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess > 95*b1cdbd2cSJim Jagielski m_xQueries; 96*b1cdbd2cSJim Jagielski OWeakRefArray m_aComposers; 97*b1cdbd2cSJim Jagielski 98*b1cdbd2cSJim Jagielski // the filter as set on the parent data link at construction of the connection 99*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Sequence< ::rtl::OUString > m_aTableFilter; 100*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Sequence< ::rtl::OUString > m_aTableTypeFilter; 101*b1cdbd2cSJim Jagielski ::comphelper::ComponentContext m_aContext; 102*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection > m_xMasterConnection; 103*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Reference< ::com::sun::star::sdb::tools::XConnectionTools > m_xConnectionTools; 104*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Reference< ::com::sun::star::sdb::application::XTableUIProvider > m_xTableUIProvider; 105*b1cdbd2cSJim Jagielski 106*b1cdbd2cSJim Jagielski // defines the helper services for example to query the command of a view 107*b1cdbd2cSJim Jagielski // @ see com.sun.star.sdb.tools.XViewAccess 108*b1cdbd2cSJim Jagielski DECLARE_STL_USTRINGACCESS_MAP( ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface>, TSupportServices); 109*b1cdbd2cSJim Jagielski TSupportServices m_aSupportServices; 110*b1cdbd2cSJim Jagielski 111*b1cdbd2cSJim Jagielski 112*b1cdbd2cSJim Jagielski OTableContainer* m_pTables; 113*b1cdbd2cSJim Jagielski OViewContainer* m_pViews; 114*b1cdbd2cSJim Jagielski ::dbtools::WarningsContainer m_aWarnings; 115*b1cdbd2cSJim Jagielski oslInterlockedCount m_nInAppend; 116*b1cdbd2cSJim Jagielski sal_Bool m_bSupportsViews; // true when the getTableTypes return "VIEW" as type 117*b1cdbd2cSJim Jagielski sal_Bool m_bSupportsUsers; 118*b1cdbd2cSJim Jagielski sal_Bool m_bSupportsGroups; 119*b1cdbd2cSJim Jagielski 120*b1cdbd2cSJim Jagielski protected: 121*b1cdbd2cSJim Jagielski virtual ~OConnection(); 122*b1cdbd2cSJim Jagielski public: 123*b1cdbd2cSJim Jagielski OConnection(ODatabaseSource& _rDB 124*b1cdbd2cSJim Jagielski ,::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection >& _rxMaster 125*b1cdbd2cSJim Jagielski ,const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _rxORB); 126*b1cdbd2cSJim Jagielski 127*b1cdbd2cSJim Jagielski // com::sun::star::lang::XTypeProvider 128*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > SAL_CALL getTypes() throw (::com::sun::star::uno::RuntimeException); 129*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId() throw (::com::sun::star::uno::RuntimeException); 130*b1cdbd2cSJim Jagielski 131*b1cdbd2cSJim Jagielski // com::sun::star::uno::XInterface 132*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type & rType ) throw (::com::sun::star::uno::RuntimeException); 133*b1cdbd2cSJim Jagielski virtual void SAL_CALL acquire() throw( ); 134*b1cdbd2cSJim Jagielski virtual void SAL_CALL release() throw( ); 135*b1cdbd2cSJim Jagielski 136*b1cdbd2cSJim Jagielski // OComponentHelper 137*b1cdbd2cSJim Jagielski virtual void SAL_CALL disposing(void); 138*b1cdbd2cSJim Jagielski 139*b1cdbd2cSJim Jagielski // ::com::sun::star::container::XChild 140*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL getParent( ) throw(::com::sun::star::uno::RuntimeException); 141*b1cdbd2cSJim Jagielski virtual void SAL_CALL setParent( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >& Parent ) throw(::com::sun::star::lang::NoSupportException, ::com::sun::star::uno::RuntimeException); 142*b1cdbd2cSJim Jagielski 143*b1cdbd2cSJim Jagielski // ::com::sun::star::sdbcx::XTablesSupplier 144*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess > SAL_CALL getTables( ) throw(::com::sun::star::uno::RuntimeException); 145*b1cdbd2cSJim Jagielski // ::com::sun::star::sdbcx::XViewsSupplier 146*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess > SAL_CALL getViews( ) throw(::com::sun::star::uno::RuntimeException); 147*b1cdbd2cSJim Jagielski 148*b1cdbd2cSJim Jagielski // ::com::sun::star::sdb::XQueriesSupplier 149*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess > SAL_CALL getQueries( ) throw(::com::sun::star::uno::RuntimeException); 150*b1cdbd2cSJim Jagielski 151*b1cdbd2cSJim Jagielski // ::com::sun::star::sdb::XSQLQueryComposerFactory 152*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Reference< ::com::sun::star::sdb::XSQLQueryComposer > SAL_CALL createQueryComposer( ) throw(::com::sun::star::uno::RuntimeException); 153*b1cdbd2cSJim Jagielski 154*b1cdbd2cSJim Jagielski // ::com::sun::star::sdb::XCommandPreparation 155*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XPreparedStatement > SAL_CALL prepareCommand( const ::rtl::OUString& command, sal_Int32 commandType ) throw(::com::sun::star::sdbc::SQLException, ::com::sun::star::uno::RuntimeException); 156*b1cdbd2cSJim Jagielski 157*b1cdbd2cSJim Jagielski // ::com::sun::star::sdbc::XWarningsSupplier 158*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Any SAL_CALL getWarnings( ) throw(::com::sun::star::sdbc::SQLException, ::com::sun::star::uno::RuntimeException); 159*b1cdbd2cSJim Jagielski virtual void SAL_CALL clearWarnings( ) throw(::com::sun::star::sdbc::SQLException, ::com::sun::star::uno::RuntimeException); 160*b1cdbd2cSJim Jagielski 161*b1cdbd2cSJim Jagielski // ::com::sun::star::lang::XServiceInfo 162*b1cdbd2cSJim Jagielski virtual ::rtl::OUString SAL_CALL getImplementationName( ) throw(::com::sun::star::uno::RuntimeException); 163*b1cdbd2cSJim Jagielski virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& ServiceName ) throw(::com::sun::star::uno::RuntimeException); 164*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames( ) throw(::com::sun::star::uno::RuntimeException); 165*b1cdbd2cSJim Jagielski 166*b1cdbd2cSJim Jagielski // XConnection 167*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XStatement > SAL_CALL createStatement( ) throw(::com::sun::star::sdbc::SQLException, ::com::sun::star::uno::RuntimeException); 168*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XPreparedStatement > SAL_CALL prepareStatement( const ::rtl::OUString& sql ) throw(::com::sun::star::sdbc::SQLException, ::com::sun::star::uno::RuntimeException); 169*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XPreparedStatement > SAL_CALL prepareCall( const ::rtl::OUString& sql ) throw(::com::sun::star::sdbc::SQLException, ::com::sun::star::uno::RuntimeException); 170*b1cdbd2cSJim Jagielski virtual ::rtl::OUString SAL_CALL nativeSQL( const ::rtl::OUString& sql ) throw(::com::sun::star::sdbc::SQLException, ::com::sun::star::uno::RuntimeException); 171*b1cdbd2cSJim Jagielski virtual void SAL_CALL setAutoCommit( sal_Bool autoCommit ) throw(::com::sun::star::sdbc::SQLException, ::com::sun::star::uno::RuntimeException); 172*b1cdbd2cSJim Jagielski virtual sal_Bool SAL_CALL getAutoCommit( ) throw(::com::sun::star::sdbc::SQLException, ::com::sun::star::uno::RuntimeException); 173*b1cdbd2cSJim Jagielski virtual void SAL_CALL commit( ) throw(::com::sun::star::sdbc::SQLException, ::com::sun::star::uno::RuntimeException); 174*b1cdbd2cSJim Jagielski virtual void SAL_CALL rollback( ) throw(::com::sun::star::sdbc::SQLException, ::com::sun::star::uno::RuntimeException); 175*b1cdbd2cSJim Jagielski virtual sal_Bool SAL_CALL isClosed( ) throw(::com::sun::star::sdbc::SQLException, ::com::sun::star::uno::RuntimeException); 176*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XDatabaseMetaData > SAL_CALL getMetaData( ) throw(::com::sun::star::sdbc::SQLException, ::com::sun::star::uno::RuntimeException); 177*b1cdbd2cSJim Jagielski virtual void SAL_CALL setReadOnly( sal_Bool readOnly ) throw(::com::sun::star::sdbc::SQLException, ::com::sun::star::uno::RuntimeException); 178*b1cdbd2cSJim Jagielski virtual sal_Bool SAL_CALL isReadOnly( ) throw(::com::sun::star::sdbc::SQLException, ::com::sun::star::uno::RuntimeException); 179*b1cdbd2cSJim Jagielski virtual void SAL_CALL setCatalog( const ::rtl::OUString& catalog ) throw(::com::sun::star::sdbc::SQLException, ::com::sun::star::uno::RuntimeException); 180*b1cdbd2cSJim Jagielski virtual ::rtl::OUString SAL_CALL getCatalog( ) throw(::com::sun::star::sdbc::SQLException, ::com::sun::star::uno::RuntimeException); 181*b1cdbd2cSJim Jagielski virtual void SAL_CALL setTransactionIsolation( sal_Int32 level ) throw(::com::sun::star::sdbc::SQLException, ::com::sun::star::uno::RuntimeException); 182*b1cdbd2cSJim Jagielski virtual sal_Int32 SAL_CALL getTransactionIsolation( ) throw(::com::sun::star::sdbc::SQLException, ::com::sun::star::uno::RuntimeException); 183*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess > SAL_CALL getTypeMap( ) throw(::com::sun::star::sdbc::SQLException, ::com::sun::star::uno::RuntimeException); 184*b1cdbd2cSJim Jagielski virtual void SAL_CALL setTypeMap( const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess >& typeMap ) throw(::com::sun::star::sdbc::SQLException, ::com::sun::star::uno::RuntimeException); 185*b1cdbd2cSJim Jagielski 186*b1cdbd2cSJim Jagielski // ::com::sun::star::sdbc::XCloseable 187*b1cdbd2cSJim Jagielski virtual void SAL_CALL close( ) throw(::com::sun::star::sdbc::SQLException, ::com::sun::star::uno::RuntimeException); 188*b1cdbd2cSJim Jagielski 189*b1cdbd2cSJim Jagielski // XMultiServiceFactory 190*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL createInstance( const ::rtl::OUString& aServiceSpecifier ) throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException); 191*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL createInstanceWithArguments( const ::rtl::OUString& ServiceSpecifier, const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& Arguments ) throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException); 192*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getAvailableServiceNames( ) throw (::com::sun::star::uno::RuntimeException); 193*b1cdbd2cSJim Jagielski 194*b1cdbd2cSJim Jagielski // XUsersSupplier 195*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess > SAL_CALL getUsers( ) throw(::com::sun::star::uno::RuntimeException); 196*b1cdbd2cSJim Jagielski // XGroupsSupplier 197*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess > SAL_CALL getGroups( ) throw(::com::sun::star::uno::RuntimeException); 198*b1cdbd2cSJim Jagielski 199*b1cdbd2cSJim Jagielski // XConnectionTools 200*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Reference< ::com::sun::star::sdb::tools::XTableName > SAL_CALL createTableName( ) throw (::com::sun::star::uno::RuntimeException); 201*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Reference< ::com::sun::star::sdb::tools::XObjectNames > SAL_CALL getObjectNames( ) throw (::com::sun::star::uno::RuntimeException); 202*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Reference< ::com::sun::star::sdb::tools::XDataSourceMetaData > SAL_CALL getDataSourceMetaData( ) throw (::com::sun::star::uno::RuntimeException); 203*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess > SAL_CALL getFieldsByCommandDescriptor( ::sal_Int32 commandType, const ::rtl::OUString& command, ::com::sun::star::uno::Reference< ::com::sun::star::lang::XComponent >& keepFieldsAlive ) throw (::com::sun::star::sdbc::SQLException, ::com::sun::star::uno::RuntimeException); 204*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Reference< ::com::sun::star::sdb::XSingleSelectQueryComposer > SAL_CALL getComposer( ::sal_Int32 commandType, const ::rtl::OUString& command ) throw (::com::sun::star::uno::RuntimeException); 205*b1cdbd2cSJim Jagielski 206*b1cdbd2cSJim Jagielski // XTableUIProvider 207*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Reference< ::com::sun::star::graphic::XGraphic > SAL_CALL getTableIcon( const ::rtl::OUString& TableName, ::sal_Int32 ColorMode ) throw (::com::sun::star::uno::RuntimeException); 208*b1cdbd2cSJim Jagielski virtual ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL getTableEditor( const ::com::sun::star::uno::Reference< ::com::sun::star::sdb::application::XDatabaseDocumentUI >& DocumentUI, const ::rtl::OUString& TableName ) throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException); 209*b1cdbd2cSJim Jagielski 210*b1cdbd2cSJim Jagielski // IRefreshListener 211*b1cdbd2cSJim Jagielski virtual void refresh(const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess >& _rToBeRefreshed); 212*b1cdbd2cSJim Jagielski 213*b1cdbd2cSJim Jagielski protected: checkDisposed()214*b1cdbd2cSJim Jagielski inline void checkDisposed() throw (::com::sun::star::lang::DisposedException) 215*b1cdbd2cSJim Jagielski { 216*b1cdbd2cSJim Jagielski if ( rBHelper.bDisposed || !m_xConnection.is() ) 217*b1cdbd2cSJim Jagielski throw ::com::sun::star::lang::DisposedException(); 218*b1cdbd2cSJim Jagielski } 219*b1cdbd2cSJim Jagielski 220*b1cdbd2cSJim Jagielski ::com::sun::star::uno::Reference< ::com::sun::star::sdbcx::XTablesSupplier > getMasterTables(); 221*b1cdbd2cSJim Jagielski 222*b1cdbd2cSJim Jagielski private: 223*b1cdbd2cSJim Jagielski /** checks whether or not there are naming conflicts between tables and queries 224*b1cdbd2cSJim Jagielski */ 225*b1cdbd2cSJim Jagielski void impl_checkTableQueryNames_nothrow(); 226*b1cdbd2cSJim Jagielski 227*b1cdbd2cSJim Jagielski /** loads the XConnectionTools implementation which we forward the respective functionality to 228*b1cdbd2cSJim Jagielski 229*b1cdbd2cSJim Jagielski @throws ::com::sun::star::uno::RuntimeException 230*b1cdbd2cSJim Jagielski if the implementation cannot be loaded 231*b1cdbd2cSJim Jagielski 232*b1cdbd2cSJim Jagielski @postcond 233*b1cdbd2cSJim Jagielski m_xConnectionTools is nol <NULL/> 234*b1cdbd2cSJim Jagielski */ 235*b1cdbd2cSJim Jagielski void impl_loadConnectionTools_throw(); 236*b1cdbd2cSJim Jagielski 237*b1cdbd2cSJim Jagielski /** reads the table filter and table type filter from the datasourfce 238*b1cdbd2cSJim Jagielski */ 239*b1cdbd2cSJim Jagielski void impl_fillTableFilter(); 240*b1cdbd2cSJim Jagielski }; 241*b1cdbd2cSJim Jagielski 242*b1cdbd2cSJim Jagielski //........................................................................ 243*b1cdbd2cSJim Jagielski } // namespace dbaccess 244*b1cdbd2cSJim Jagielski //........................................................................ 245*b1cdbd2cSJim Jagielski 246*b1cdbd2cSJim Jagielski #endif // _DBA_CORE_CONNECTION_HXX_ 247*b1cdbd2cSJim Jagielski 248*b1cdbd2cSJim Jagielski 249