33#include <com/sun/star/container/XChild.hpp>
34#include <com/sun/star/lang/DisposedException.hpp>
35#include <com/sun/star/sdb/XSQLQueryComposerFactory.hpp>
36#include <com/sun/star/sdb/XCommandPreparation.hpp>
37#include <com/sun/star/sdbcx/XTablesSupplier.hpp>
38#include <com/sun/star/sdbcx/XViewsSupplier.hpp>
39#include <com/sun/star/sdbcx/XUsersSupplier.hpp>
40#include <com/sun/star/sdbcx/XGroupsSupplier.hpp>
41#include <com/sun/star/sdb/XQueriesSupplier.hpp>
42#include <com/sun/star/lang/XMultiServiceFactory.hpp>
43#include <com/sun/star/sdb/tools/XConnectionTools.hpp>
44#include <com/sun/star/sdb/application/XTableUIProvider.hpp>
45#include <com/sun/star/sdbc/XWarningsSupplier.hpp>
56 , css::sdbcx::XTablesSupplier
57 , css::sdbcx::XViewsSupplier
58 , css::sdbc::XConnection
59 , css::sdbc::XWarningsSupplier
60 , css::sdb::XQueriesSupplier
61 , css::sdb::XSQLQueryComposerFactory
62 , css::sdb::XCommandPreparation
63 , css::lang::XMultiServiceFactory
64 , css::sdbcx::XUsersSupplier
65 , css::sdbcx::XGroupsSupplier
66 , css::sdb::tools::XConnectionTools
67 , css::sdb::application::XTableUIProvider
78 css::uno::Reference< css::sdbcx::XTablesSupplier >
81 css::uno::Reference< css::container::XNameAccess >
88 css::uno::Reference< css::uno::XComponentContext >
m_aContext;
95 typedef std::map< OUString, css::uno::Reference< css::uno::XInterface> >
TSupportServices;
109 ,css::uno::Reference< css::sdbc::XConnection >
const & _rxMaster
110 ,
const css::uno::Reference< css::uno::XComponentContext >& _rxORB);
113 virtual css::uno::Sequence< css::uno::Type > SAL_CALL
getTypes()
override;
117 virtual css::uno::Any SAL_CALL
queryInterface(
const css::uno::Type & rType )
override;
118 virtual void SAL_CALL
acquire() noexcept override;
119 virtual
void SAL_CALL
release() noexcept override;
122 virtual
void SAL_CALL
disposing() override;
129 virtual css::
uno::Reference< css::container::XNameAccess > SAL_CALL
getTables( ) override;
131 virtual css::
uno::Reference< css::container::XNameAccess > SAL_CALL
getViews( ) override;
134 virtual css::
uno::Reference< css::container::XNameAccess > SAL_CALL
getQueries( ) override;
140 virtual css::
uno::Reference< css::sdbc::XPreparedStatement > SAL_CALL
prepareCommand( const OUString& command, sal_Int32 commandType ) override;
152 virtual css::
uno::Reference< css::sdbc::XStatement > SAL_CALL
createStatement( ) override;
153 virtual css::
uno::Reference< css::sdbc::XPreparedStatement > SAL_CALL
prepareStatement( const OUString&
sql ) override;
154 virtual css::
uno::Reference< css::sdbc::XPreparedStatement > SAL_CALL
prepareCall( const OUString&
sql ) override;
155 virtual OUString SAL_CALL
nativeSQL( const OUString&
sql ) override;
158 virtual
void SAL_CALL
commit( ) override;
159 virtual
void SAL_CALL
rollback( ) override;
161 virtual css::
uno::Reference< css::sdbc::XDatabaseMetaData > SAL_CALL
getMetaData( ) override;
164 virtual
void SAL_CALL
setCatalog( const OUString& catalog ) override;
165 virtual OUString SAL_CALL
getCatalog( ) override;
168 virtual css::
uno::Reference< css::container::XNameAccess > SAL_CALL
getTypeMap( ) override;
169 virtual
void SAL_CALL
setTypeMap( const css::
uno::Reference< css::container::XNameAccess >& typeMap ) override;
172 virtual
void SAL_CALL
close( ) override;
180 virtual css::
uno::Reference< css::container::XNameAccess > SAL_CALL
getUsers( ) override;
182 virtual css::
uno::Reference< css::container::XNameAccess > SAL_CALL
getGroups( ) override;
188 virtual css::
uno::Reference< css::container::XNameAccess > SAL_CALL
getFieldsByCommandDescriptor( ::sal_Int32 commandType, const OUString& command, css::
uno::Reference< css::lang::XComponent >& keepFieldsAlive ) override;
189 virtual css::
uno::Reference< css::sdb::XSingleSelectQueryComposer > SAL_CALL
getComposer( ::sal_Int32 commandType, const OUString& command ) override;
192 virtual css::
uno::Reference< css::graphic::XGraphic > SAL_CALL
getTableIcon( const OUString& TableName, ::sal_Int32 ColorMode ) override;
193 virtual css::
uno::Reference< css::
uno::
XInterface > SAL_CALL
getTableEditor( const css::
uno::Reference< css::sdb::application::XDatabaseDocumentUI >& DocumentUI, const OUString& TableName ) override;
196 virtual
void refresh(const css::
uno::Reference< css::container::XNameAccess >& _rToBeRefreshed) override;
203 throw css::lang::DisposedException();
206 css::uno::Reference< css::sdbcx::XTablesSupplier >
const &
getMasterTables();
css::uno::Reference< css::sdbc::XConnection > m_xConnection
virtual css::uno::Reference< css::sdb::tools::XDataSourceMetaData > SAL_CALL getDataSourceMetaData() override
virtual void SAL_CALL setParent(const css::uno::Reference< css::uno::XInterface > &Parent) override
virtual void SAL_CALL close() override
virtual void SAL_CALL release() noexcept override
virtual void SAL_CALL disposing() override
virtual css::uno::Reference< css::uno::XInterface > SAL_CALL createInstance(const OUString &aServiceSpecifier) override
virtual void SAL_CALL setReadOnly(sal_Bool readOnly) override
virtual css::uno::Reference< css::container::XNameAccess > SAL_CALL getUsers() override
css::uno::Reference< css::sdbcx::XTablesSupplier > const & getMasterTables()
virtual css::uno::Reference< css::sdbc::XPreparedStatement > SAL_CALL prepareCall(const OUString &sql) override
void impl_loadConnectionTools_throw()
loads the XConnectionTools implementation which we forward the respective functionality to
virtual css::uno::Reference< css::sdb::tools::XTableName > SAL_CALL createTableName() override
OConnection(ODatabaseSource &_rDB, css::uno::Reference< css::sdbc::XConnection > const &_rxMaster, const css::uno::Reference< css::uno::XComponentContext > &_rxORB)
virtual void SAL_CALL setAutoCommit(sal_Bool autoCommit) override
virtual css::uno::Reference< css::sdb::XSingleSelectQueryComposer > SAL_CALL getComposer(::sal_Int32 commandType, const OUString &command) override
virtual css::uno::Reference< css::container::XNameAccess > SAL_CALL getFieldsByCommandDescriptor(::sal_Int32 commandType, const OUString &command, css::uno::Reference< css::lang::XComponent > &keepFieldsAlive) override
::dbtools::WarningsContainer m_aWarnings
virtual void SAL_CALL setCatalog(const OUString &catalog) override
void impl_checkTableQueryNames_nothrow()
checks whether or not there are naming conflicts between tables and queries
virtual sal_Int32 SAL_CALL getTransactionIsolation() override
virtual css::uno::Any SAL_CALL queryInterface(const css::uno::Type &rType) override
virtual css::uno::Reference< css::container::XNameAccess > SAL_CALL getTypeMap() override
virtual css::uno::Reference< css::sdb::XSQLQueryComposer > SAL_CALL createQueryComposer() override
virtual css::uno::Reference< css::sdbc::XDatabaseMetaData > SAL_CALL getMetaData() override
css::uno::Reference< css::container::XNameAccess > m_xQueries
virtual void SAL_CALL commit() override
css::uno::Reference< css::sdbc::XConnection > m_xMasterConnection
virtual css::uno::Reference< css::container::XNameAccess > SAL_CALL getViews() override
css::uno::Sequence< OUString > m_aTableTypeFilter
connectivity::OWeakRefArray m_aComposers
virtual sal_Bool SAL_CALL supportsService(const OUString &ServiceName) override
virtual void SAL_CALL rollback() override
virtual ~OConnection() override
virtual css::uno::Reference< css::uno::XInterface > SAL_CALL getParent() override
virtual void refresh(const css::uno::Reference< css::container::XNameAccess > &_rToBeRefreshed) override
css::uno::Reference< css::sdb::tools::XConnectionTools > m_xConnectionTools
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override
virtual void SAL_CALL setTypeMap(const css::uno::Reference< css::container::XNameAccess > &typeMap) override
virtual void SAL_CALL clearWarnings() override
css::uno::Reference< css::sdb::application::XTableUIProvider > m_xTableUIProvider
std::unique_ptr< OTableContainer > m_pTables
virtual css::uno::Reference< css::graphic::XGraphic > SAL_CALL getTableIcon(const OUString &TableName, ::sal_Int32 ColorMode) override
virtual css::uno::Reference< css::sdb::tools::XObjectNames > SAL_CALL getObjectNames() override
virtual css::uno::Reference< css::sdbc::XPreparedStatement > SAL_CALL prepareCommand(const OUString &command, sal_Int32 commandType) override
virtual OUString SAL_CALL getCatalog() override
virtual sal_Bool SAL_CALL getAutoCommit() override
virtual css::uno::Reference< css::container::XNameAccess > SAL_CALL getGroups() override
TSupportServices m_aSupportServices
std::map< OUString, css::uno::Reference< css::uno::XInterface > > TSupportServices
void impl_fillTableFilter()
reads the table filter and table type filter from the datasource
css::uno::Reference< css::uno::XComponentContext > m_aContext
virtual css::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId() override
virtual sal_Bool SAL_CALL isReadOnly() override
virtual css::uno::Reference< css::sdbc::XStatement > SAL_CALL createStatement() override
virtual css::uno::Sequence< css::uno::Type > SAL_CALL getTypes() override
virtual css::uno::Reference< css::sdbc::XPreparedStatement > SAL_CALL prepareStatement(const OUString &sql) override
virtual void SAL_CALL acquire() noexcept override
connectivity::OWeakRefArray m_aStatements
virtual css::uno::Reference< css::container::XNameAccess > SAL_CALL getTables() override
std::atomic< std::size_t > m_nInAppend
virtual css::uno::Reference< css::uno::XInterface > SAL_CALL getTableEditor(const css::uno::Reference< css::sdb::application::XDatabaseDocumentUI > &DocumentUI, const OUString &TableName) override
virtual OUString SAL_CALL getImplementationName() override
virtual OUString SAL_CALL nativeSQL(const OUString &sql) override
virtual sal_Bool SAL_CALL isClosed() override
virtual css::uno::Sequence< OUString > SAL_CALL getAvailableServiceNames() override
std::unique_ptr< OViewContainer > m_pViews
virtual css::uno::Reference< css::uno::XInterface > SAL_CALL createInstanceWithArguments(const OUString &ServiceSpecifier, const css::uno::Sequence< css::uno::Any > &Arguments) override
virtual css::uno::Any SAL_CALL getWarnings() override
virtual css::uno::Reference< css::container::XNameAccess > SAL_CALL getQueries() override
css::uno::Reference< css::sdbcx::XTablesSupplier > m_xMasterTables
virtual void SAL_CALL setTransactionIsolation(sal_Int32 level) override
css::uno::Sequence< OUString > m_aTableFilter
std::vector< css::uno::WeakReferenceHelper > OWeakRefArray
cppu::ImplHelper13< css::container::XChild, css::sdbcx::XTablesSupplier, css::sdbcx::XViewsSupplier, css::sdbc::XConnection, css::sdbc::XWarningsSupplier, css::sdb::XQueriesSupplier, css::sdb::XSQLQueryComposerFactory, css::sdb::XCommandPreparation, css::lang::XMultiServiceFactory, css::sdbcx::XUsersSupplier, css::sdbcx::XGroupsSupplier, css::sdb::tools::XConnectionTools, css::sdb::application::XTableUIProvider > OConnection_Base