summaryrefslogtreecommitdiff
path: root/connectivity
diff options
context:
space:
mode:
Diffstat (limited to 'connectivity')
-rw-r--r--connectivity/inc/ParameterCont.hxx49
-rw-r--r--connectivity/inc/SQLStatementHelper.hxx43
-rw-r--r--connectivity/inc/TIndex.hxx46
-rw-r--r--connectivity/inc/TIndexColumns.hxx41
-rw-r--r--connectivity/inc/TKey.hxx44
-rw-r--r--connectivity/inc/TKeyColumns.hxx41
-rw-r--r--connectivity/inc/pch/precompiled_dbase.hxx2
-rw-r--r--connectivity/inc/pch/precompiled_flat.hxx2
-rw-r--r--connectivity/inc/sdbcx/VCatalog.hxx118
-rw-r--r--connectivity/inc/sdbcx/VGroup.hxx97
-rw-r--r--connectivity/inc/sdbcx/VIndex.hxx100
-rw-r--r--connectivity/inc/sdbcx/VIndexColumn.hxx60
-rw-r--r--connectivity/inc/sdbcx/VKey.hxx111
-rw-r--r--connectivity/inc/sdbcx/VKeyColumn.hxx62
-rw-r--r--connectivity/inc/sdbcx/VTypeDef.hxx37
-rw-r--r--connectivity/inc/sdbcx/VUser.hxx98
-rw-r--r--connectivity/source/commontools/TIndex.cxx4
-rw-r--r--connectivity/source/commontools/TIndexColumns.cxx6
-rw-r--r--connectivity/source/commontools/TIndexes.cxx2
-rw-r--r--connectivity/source/commontools/TKey.cxx4
-rw-r--r--connectivity/source/commontools/TKeyColumns.cxx6
-rw-r--r--connectivity/source/commontools/TKeys.cxx2
-rw-r--r--connectivity/source/commontools/TTableHelper.cxx2
-rw-r--r--connectivity/source/commontools/dbtools.cxx2
-rw-r--r--connectivity/source/commontools/dbtools2.cxx2
-rw-r--r--connectivity/source/commontools/parameters.cxx2
-rw-r--r--connectivity/source/drivers/dbase/DIndexColumns.cxx2
-rw-r--r--connectivity/source/drivers/evoab2/NCatalog.hxx2
-rw-r--r--connectivity/source/drivers/firebird/Catalog.hxx2
-rw-r--r--connectivity/source/drivers/firebird/User.hxx2
-rw-r--r--connectivity/source/drivers/macab/MacabCatalog.hxx2
-rw-r--r--connectivity/source/drivers/mork/MCatalog.hxx2
-rw-r--r--connectivity/source/inc/ado/ACatalog.hxx2
-rw-r--r--connectivity/source/inc/ado/AGroup.hxx2
-rw-r--r--connectivity/source/inc/ado/AIndex.hxx2
-rw-r--r--connectivity/source/inc/ado/AKey.hxx2
-rw-r--r--connectivity/source/inc/ado/AUser.hxx2
-rw-r--r--connectivity/source/inc/dbase/DIndex.hxx2
-rw-r--r--connectivity/source/inc/file/FCatalog.hxx2
-rw-r--r--connectivity/source/inc/hsqldb/HCatalog.hxx2
-rw-r--r--connectivity/source/inc/hsqldb/HUser.hxx2
-rw-r--r--connectivity/source/inc/mysql/YCatalog.hxx2
-rw-r--r--connectivity/source/inc/mysql/YTables.hxx2
-rw-r--r--connectivity/source/inc/mysql/YUser.hxx2
-rw-r--r--connectivity/source/sdbcx/VCatalog.cxx2
-rw-r--r--connectivity/source/sdbcx/VGroup.cxx2
-rw-r--r--connectivity/source/sdbcx/VIndex.cxx2
-rw-r--r--connectivity/source/sdbcx/VIndexColumn.cxx2
-rw-r--r--connectivity/source/sdbcx/VKey.cxx2
-rw-r--r--connectivity/source/sdbcx/VKeyColumn.cxx2
-rw-r--r--connectivity/source/sdbcx/VUser.cxx2
51 files changed, 990 insertions, 43 deletions
diff --git a/connectivity/inc/ParameterCont.hxx b/connectivity/inc/ParameterCont.hxx
new file mode 100644
index 000000000000..848cec78e4e0
--- /dev/null
+++ b/connectivity/inc/ParameterCont.hxx
@@ -0,0 +1,49 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#pragma once
+
+#include <com/sun/star/sdb/XInteractionSupplyParameters.hpp>
+#include <comphelper/interaction.hxx>
+#include <connectivity/dbtoolsdllapi.hxx>
+
+namespace dbtools
+{
+
+ //= OParameterContinuation
+
+ class OParameterContinuation final : public comphelper::OInteraction< css::sdb::XInteractionSupplyParameters >
+ {
+ css::uno::Sequence< css::beans::PropertyValue > m_aValues;
+
+ public:
+ OParameterContinuation() { }
+
+ const css::uno::Sequence< css::beans::PropertyValue >& getValues() const { return m_aValues; }
+
+ // XInteractionSupplyParameters
+ virtual void SAL_CALL setParameters( const css::uno::Sequence< css::beans::PropertyValue >& _rValues ) override;
+
+ private:
+ virtual ~OParameterContinuation() override { }
+ OParameterContinuation(const OParameterContinuation&) = delete;
+ void operator =(const OParameterContinuation&) = delete;
+ };
+} // dbtools
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/connectivity/inc/SQLStatementHelper.hxx b/connectivity/inc/SQLStatementHelper.hxx
new file mode 100644
index 000000000000..0b5ddecf09db
--- /dev/null
+++ b/connectivity/inc/SQLStatementHelper.hxx
@@ -0,0 +1,43 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+#include <connectivity/dbtoolsdllapi.hxx>
+#include <rtl/ustrbuf.hxx>
+
+namespace com::sun::star::beans { class XPropertySet; }
+namespace com::sun::star::uno { template <typename > class Reference; }
+
+namespace dbtools
+{
+ class OOO_DLLPUBLIC_DBTOOLS ISQLStatementHelper
+ {
+ public:
+ virtual void addComment(const css::uno::Reference< css::beans::XPropertySet >& descriptor,OUStringBuffer& _rOut) = 0;
+
+ protected:
+ ~ISQLStatementHelper() {}
+ };
+
+
+} // namespace dbtools
+
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/connectivity/inc/TIndex.hxx b/connectivity/inc/TIndex.hxx
new file mode 100644
index 000000000000..1ac2f5c4f9f2
--- /dev/null
+++ b/connectivity/inc/TIndex.hxx
@@ -0,0 +1,46 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+#include <connectivity/dbtoolsdllapi.hxx>
+#include "sdbcx/VIndex.hxx"
+
+namespace connectivity
+{
+ class OTableHelper;
+ class OIndexHelper final : public connectivity::sdbcx::OIndex
+ {
+ OTableHelper* m_pTable;
+ public:
+ virtual void refreshColumns() override;
+ public:
+ OIndexHelper( OTableHelper* _pTable);
+ OIndexHelper( OTableHelper* _pTable,
+ const OUString& Name,
+ const OUString& Catalog,
+ bool _isUnique,
+ bool _isPrimaryKeyIndex,
+ bool _isClustered
+ );
+ OTableHelper* getTable() const { return m_pTable; }
+ };
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/connectivity/inc/TIndexColumns.hxx b/connectivity/inc/TIndexColumns.hxx
new file mode 100644
index 000000000000..aa5687afc212
--- /dev/null
+++ b/connectivity/inc/TIndexColumns.hxx
@@ -0,0 +1,41 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+#include <connectivity/sdbcx/VCollection.hxx>
+#include <connectivity/dbtoolsdllapi.hxx>
+
+namespace connectivity
+{
+ class OIndexHelper;
+ class OIndexColumns final : public sdbcx::OCollection
+ {
+ OIndexHelper* m_pIndex;
+ virtual sdbcx::ObjectType createObject(const OUString& _rName) override;
+ virtual css::uno::Reference< css::beans::XPropertySet > createDescriptor() override;
+ virtual void impl_refresh() override;
+ public:
+ OIndexColumns( OIndexHelper* _pIndex,
+ ::osl::Mutex& _rMutex,
+ const ::std::vector< OUString> &_rVector);
+ };
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/connectivity/inc/TKey.hxx b/connectivity/inc/TKey.hxx
new file mode 100644
index 000000000000..a4d1d92ff2cc
--- /dev/null
+++ b/connectivity/inc/TKey.hxx
@@ -0,0 +1,44 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+#include <connectivity/dbtoolsdllapi.hxx>
+#include "sdbcx/VKey.hxx"
+
+namespace connectivity
+{
+ class OTableHelper;
+ class OTableKeyHelper final : public connectivity::sdbcx::OKey
+ {
+ OTableHelper* m_pTable;
+ public:
+ virtual void refreshColumns() override;
+ public:
+ OTableKeyHelper( OTableHelper* _pTable);
+ OTableKeyHelper( OTableHelper* _pTable
+ ,const OUString& Name
+ ,const std::shared_ptr<sdbcx::KeyProperties>& _rProps
+ );
+ OTableHelper* getTable() const { return m_pTable; }
+ };
+}
+
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/connectivity/inc/TKeyColumns.hxx b/connectivity/inc/TKeyColumns.hxx
new file mode 100644
index 000000000000..c40cd1cd7a61
--- /dev/null
+++ b/connectivity/inc/TKeyColumns.hxx
@@ -0,0 +1,41 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+#include <connectivity/sdbcx/VCollection.hxx>
+#include <connectivity/dbtoolsdllapi.hxx>
+
+namespace connectivity
+{
+ class OTableKeyHelper;
+ class OKeyColumnsHelper final : public connectivity::sdbcx::OCollection
+ {
+ OTableKeyHelper* m_pKey;
+ virtual sdbcx::ObjectType createObject(const OUString& _rName) override;
+ virtual css::uno::Reference< css::beans::XPropertySet > createDescriptor() override;
+ virtual void impl_refresh() override;
+ public:
+ OKeyColumnsHelper( OTableKeyHelper* _pKey,
+ ::osl::Mutex& _rMutex,
+ const ::std::vector< OUString> &_rVector);
+ };
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/connectivity/inc/pch/precompiled_dbase.hxx b/connectivity/inc/pch/precompiled_dbase.hxx
index 8882fc958888..7d84b5570cc2 100644
--- a/connectivity/inc/pch/precompiled_dbase.hxx
+++ b/connectivity/inc/pch/precompiled_dbase.hxx
@@ -219,7 +219,7 @@
#include <connectivity/dbexception.hxx>
#include <connectivity/dbtoolsdllapi.hxx>
#include <connectivity/sdbcx/IRefreshable.hxx>
-#include <connectivity/sdbcx/VCatalog.hxx>
+#include <sdbcx/VCatalog.hxx>
#include <connectivity/sdbcx/VColumn.hxx>
#include <connectivity/sqliterator.hxx>
#include <propertyids.hxx>
diff --git a/connectivity/inc/pch/precompiled_flat.hxx b/connectivity/inc/pch/precompiled_flat.hxx
index bcf25cae8f5c..4712783cb181 100644
--- a/connectivity/inc/pch/precompiled_flat.hxx
+++ b/connectivity/inc/pch/precompiled_flat.hxx
@@ -201,7 +201,7 @@
#include <connectivity/dbexception.hxx>
#include <connectivity/dbtoolsdllapi.hxx>
#include <connectivity/sdbcx/IRefreshable.hxx>
-#include <connectivity/sdbcx/VCatalog.hxx>
+#include <sdbcx/VCatalog.hxx>
#include <connectivity/sdbcx/VDescriptor.hxx>
#endif // PCH_LEVEL >= 4
diff --git a/connectivity/inc/sdbcx/VCatalog.hxx b/connectivity/inc/sdbcx/VCatalog.hxx
new file mode 100644
index 000000000000..a9b1d18bb0a3
--- /dev/null
+++ b/connectivity/inc/sdbcx/VCatalog.hxx
@@ -0,0 +1,118 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+#include <com/sun/star/sdbcx/XTablesSupplier.hpp>
+#include <com/sun/star/sdbcx/XViewsSupplier.hpp>
+#include <com/sun/star/sdbcx/XUsersSupplier.hpp>
+#include <com/sun/star/sdbcx/XGroupsSupplier.hpp>
+#include <cppuhelper/compbase.hxx>
+#include <com/sun/star/lang/XServiceInfo.hpp>
+#include <connectivity/CommonTools.hxx>
+#include <connectivity/sdbcx/IRefreshable.hxx>
+#include <connectivity/dbtoolsdllapi.hxx>
+#include <memory>
+
+namespace com::sun::star::sdbc { class XConnection; }
+namespace com::sun::star::sdbc { class XDatabaseMetaData; }
+namespace com::sun::star::sdbc { class XResultSet; }
+namespace com::sun::star::sdbc { class XRow; }
+
+namespace connectivity
+{
+ namespace sdbcx
+ {
+
+ class OCollection;
+ // OCatalog is a general catalog class
+ // other drivers can be derived their catalog from this class when they want to support sdbcx
+ // it holds already tables, views, groups and users
+
+ typedef ::cppu::WeakComponentImplHelper< css::sdbcx::XTablesSupplier,
+ css::sdbcx::XViewsSupplier,
+ css::sdbcx::XUsersSupplier,
+ css::sdbcx::XGroupsSupplier,
+ css::lang::XServiceInfo> OCatalog_BASE;
+
+
+ class OOO_DLLPUBLIC_DBTOOLS SAL_NO_VTABLE OCatalog :
+ public OCatalog_BASE,
+ public IRefreshableGroups,
+ public IRefreshableUsers
+ {
+ protected:
+
+ ::osl::Mutex m_aMutex;
+
+ // this members are deleted when the dtor is called
+ // they are hold weak
+ std::unique_ptr<OCollection> m_pTables;
+ std::unique_ptr<OCollection> m_pViews;
+ std::unique_ptr<OCollection> m_pGroups;
+ std::unique_ptr<OCollection> m_pUsers;
+
+ css::uno::Reference< css::sdbc::XDatabaseMetaData > m_xMetaData; // just to make things easier
+
+ /** builds the name which should be used to access the object later on in the collection.
+ Will only be called in fillNames.
+ @param _xRow
+ The current row from the resultset given to fillNames.
+ */
+ virtual OUString buildName( const css::uno::Reference< css::sdbc::XRow >& _xRow);
+
+ /** fills a vector with the necessary names which can be used in combination with the collections.
+ For each row buildName will be called.
+ @param _xResult
+ The resultset which should be used to fill the names. Will be disposed after return and set to NULL.
+ @param _rNames
+ The vector who will be filled.
+ */
+ void fillNames(css::uno::Reference< css::sdbc::XResultSet >& _xResult,::std::vector< OUString>& _rNames);
+
+ public:
+ OCatalog(const css::uno::Reference< css::sdbc::XConnection> &_xConnection);
+ virtual ~OCatalog() override;
+
+ DECLARE_SERVICE_INFO();
+
+ // refreshTables is called when the method getTables had been called
+ // the member m_pTables has to be created
+ virtual void refreshTables() = 0;
+ // refreshViews is called when the method getViews had been called
+ virtual void refreshViews() = 0;
+
+ // the other refresh methods come from base classes IRefreshableGroups and IRefreshableUsers
+
+ // ::cppu::OComponentHelper
+ virtual void SAL_CALL disposing() override;
+ // XTablesSupplier
+ virtual css::uno::Reference< css::container::XNameAccess > SAL_CALL getTables( ) override;
+ // XViewsSupplier
+ virtual css::uno::Reference< css::container::XNameAccess > SAL_CALL getViews( ) override;
+ // XUsersSupplier
+ virtual css::uno::Reference< css::container::XNameAccess > SAL_CALL getUsers( ) override;
+ // XGroupsSupplier
+ virtual css::uno::Reference< css::container::XNameAccess > SAL_CALL getGroups( ) override;
+
+ };
+ }
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/connectivity/inc/sdbcx/VGroup.hxx b/connectivity/inc/sdbcx/VGroup.hxx
new file mode 100644
index 000000000000..dcf50d1a98b0
--- /dev/null
+++ b/connectivity/inc/sdbcx/VGroup.hxx
@@ -0,0 +1,97 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+#include <com/sun/star/sdbcx/XUsersSupplier.hpp>
+#include <com/sun/star/sdbcx/XAuthorizable.hpp>
+#include <com/sun/star/container/XNamed.hpp>
+#include <comphelper/proparrhlp.hxx>
+#include <cppuhelper/compbase.hxx>
+#include <cppuhelper/basemutex.hxx>
+#include <connectivity/sdbcx/VCollection.hxx>
+#include <connectivity/sdbcx/IRefreshable.hxx>
+#include <connectivity/sdbcx/VDescriptor.hxx>
+#include <connectivity/dbtoolsdllapi.hxx>
+#include <com/sun/star/lang/XServiceInfo.hpp>
+
+namespace connectivity
+{
+ namespace sdbcx
+ {
+ typedef OCollection OUsers;
+
+ typedef ::cppu::WeakComponentImplHelper< css::sdbcx::XUsersSupplier,
+ css::sdbcx::XAuthorizable,
+ css::container::XNamed,
+ css::lang::XServiceInfo> OGroup_BASE;
+
+ class OOO_DLLPUBLIC_DBTOOLS OGroup :
+ public cppu::BaseMutex,
+ public OGroup_BASE,
+ public IRefreshableUsers,
+ public ::comphelper::OPropertyArrayUsageHelper<OGroup>,
+ public ODescriptor
+ {
+ protected:
+ // no Reference! see OCollection::acquire
+ std::unique_ptr<OUsers> m_pUsers;
+
+ using OGroup_BASE::rBHelper;
+
+ // OPropertyArrayUsageHelper
+ virtual ::cppu::IPropertyArrayHelper* createArrayHelper( ) const override;
+ // OPropertySetHelper
+ virtual ::cppu::IPropertyArrayHelper & SAL_CALL getInfoHelper() override;
+ public:
+ OGroup(bool _bCase);
+ OGroup( const OUString& Name, bool _bCase);
+ virtual ~OGroup() override;
+ DECLARE_SERVICE_INFO();
+
+ // XInterface
+ virtual void SAL_CALL acquire() throw() override;
+ virtual void SAL_CALL release() throw() override;
+
+ //XInterface
+ virtual css::uno::Any SAL_CALL queryInterface( const css::uno::Type & rType ) override;
+ //XTypeProvider
+ virtual css::uno::Sequence< css::uno::Type > SAL_CALL getTypes( ) override;
+
+ // ::cppu::OComponentHelper
+ virtual void SAL_CALL disposing() override;
+ // XPropertySet
+ virtual css::uno::Reference< css::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) override;
+ // XUsersSupplier
+ virtual css::uno::Reference< css::container::XNameAccess > SAL_CALL getUsers( ) override;
+ // XAuthorizable
+ virtual sal_Int32 SAL_CALL getPrivileges( const OUString& objName, sal_Int32 objType ) override;
+ virtual sal_Int32 SAL_CALL getGrantablePrivileges( const OUString& objName, sal_Int32 objType ) override;
+ virtual void SAL_CALL grantPrivileges( const OUString& objName, sal_Int32 objType, sal_Int32 objPrivileges ) override;
+ virtual void SAL_CALL revokePrivileges( const OUString& objName, sal_Int32 objType, sal_Int32 objPrivileges ) override;
+
+ // XNamed
+ virtual OUString SAL_CALL getName( ) override;
+ virtual void SAL_CALL setName( const OUString& aName ) override;
+ };
+ }
+}
+
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/connectivity/inc/sdbcx/VIndex.hxx b/connectivity/inc/sdbcx/VIndex.hxx
new file mode 100644
index 000000000000..8bf0a4db2be4
--- /dev/null
+++ b/connectivity/inc/sdbcx/VIndex.hxx
@@ -0,0 +1,100 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+#include <com/sun/star/sdbcx/XDataDescriptorFactory.hpp>
+#include <comphelper/IdPropArrayHelper.hxx>
+#include <cppuhelper/basemutex.hxx>
+#include <connectivity/CommonTools.hxx>
+#include <sdbcx/VTypeDef.hxx>
+#include <connectivity/sdbcx/IRefreshable.hxx>
+#include <connectivity/sdbcx/VDescriptor.hxx>
+#include <connectivity/dbtoolsdllapi.hxx>
+#include <cppuhelper/implbase1.hxx>
+
+namespace connectivity
+{
+ namespace sdbcx
+ {
+ class OCollection;
+ class OIndex;
+ typedef ::cppu::ImplHelper1< css::sdbcx::XDataDescriptorFactory > OIndex_BASE;
+ typedef ::comphelper::OIdPropertyArrayUsageHelper<OIndex> OIndex_PROP;
+
+ class OOO_DLLPUBLIC_DBTOOLS OIndex :
+ public cppu::BaseMutex,
+ public ODescriptor_BASE,
+ public IRefreshableColumns,
+ public OIndex_PROP,
+ public ODescriptor,
+ public OIndex_BASE
+ {
+ protected:
+ OUString m_Catalog;
+ bool m_IsUnique;
+ bool m_IsPrimaryKeyIndex;
+ bool m_IsClustered;
+
+ // no Reference! see OCollection::acquire
+ std::unique_ptr<OCollection> m_pColumns;
+
+ using ODescriptor_BASE::rBHelper;
+ virtual void refreshColumns() override;
+ // OPropertyArrayUsageHelper
+ virtual ::cppu::IPropertyArrayHelper* createArrayHelper( sal_Int32 _nId) const override;
+ virtual ::cppu::IPropertyArrayHelper& SAL_CALL getInfoHelper() override;
+ public:
+ OIndex(bool _bCase);
+ OIndex( const OUString& Name,
+ const OUString& Catalog,
+ bool _isUnique,
+ bool _isPrimaryKeyIndex,
+ bool _isClustered,
+ bool _bCase);
+
+ virtual ~OIndex( ) override;
+
+ DECLARE_SERVICE_INFO();
+
+ //XInterface
+ virtual css::uno::Any SAL_CALL queryInterface( const css::uno::Type & rType ) override;
+ virtual void SAL_CALL acquire() throw() override;
+ virtual void SAL_CALL release() throw() override;
+ //XTypeProvider
+ virtual css::uno::Sequence< css::uno::Type > SAL_CALL getTypes( ) override;
+ // ODescriptor
+ virtual void construct() override;
+ // ::cppu::OComponentHelper
+ virtual void SAL_CALL disposing() override;
+ // XPropertySet
+ virtual css::uno::Reference< css::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) override;
+ // XColumnsSupplier
+ virtual css::uno::Reference< css::container::XNameAccess > SAL_CALL getColumns( ) override;
+
+ // XNamed
+ virtual OUString SAL_CALL getName( ) override;
+ virtual void SAL_CALL setName( const OUString& aName ) override;
+ // XDataDescriptorFactory
+ virtual css::uno::Reference< css::beans::XPropertySet > SAL_CALL createDataDescriptor( ) override;
+ };
+ }
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/connectivity/inc/sdbcx/VIndexColumn.hxx b/connectivity/inc/sdbcx/VIndexColumn.hxx
new file mode 100644
index 000000000000..6677b291ea5c
--- /dev/null
+++ b/connectivity/inc/sdbcx/VIndexColumn.hxx
@@ -0,0 +1,60 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+#include <connectivity/dbtoolsdllapi.hxx>
+#include <connectivity/sdbcx/VColumn.hxx>
+
+namespace connectivity
+{
+ namespace sdbcx
+ {
+ class OIndexColumn;
+ typedef ::comphelper::OIdPropertyArrayUsageHelper<OIndexColumn> OIndexColumn_PROP;
+
+ class OOO_DLLPUBLIC_DBTOOLS OIndexColumn :
+ public OColumn, public OIndexColumn_PROP
+ {
+ bool m_IsAscending;
+ protected:
+ virtual ::cppu::IPropertyArrayHelper* createArrayHelper( sal_Int32 _nId) const override;
+ virtual ::cppu::IPropertyArrayHelper& SAL_CALL getInfoHelper() override;
+ public:
+ OIndexColumn( bool _bCase);
+ OIndexColumn( bool IsAscending,
+ const OUString& Name,
+ const OUString& TypeName,
+ const OUString& DefaultValue,
+ sal_Int32 IsNullable,
+ sal_Int32 Precision,
+ sal_Int32 Scale,
+ sal_Int32 Type,
+ bool _bCase,
+ const OUString& CatalogName,
+ const OUString& SchemaName,
+ const OUString& TableName);
+
+ virtual void construct() override;
+ DECLARE_SERVICE_INFO();
+ };
+ }
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/connectivity/inc/sdbcx/VKey.hxx b/connectivity/inc/sdbcx/VKey.hxx
new file mode 100644
index 000000000000..01e1d839f8b4
--- /dev/null
+++ b/connectivity/inc/sdbcx/VKey.hxx
@@ -0,0 +1,111 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+
+#include <comphelper/IdPropArrayHelper.hxx>
+#include <connectivity/CommonTools.hxx>
+#include <sdbcx/VTypeDef.hxx>
+#include <connectivity/sdbcx/IRefreshable.hxx>
+#include <connectivity/sdbcx/VDescriptor.hxx>
+#include <connectivity/dbtoolsdllapi.hxx>
+#include <cppuhelper/implbase1.hxx>
+#include <cppuhelper/basemutex.hxx>
+#include <com/sun/star/sdbcx/XDataDescriptorFactory.hpp>
+#include <memory>
+
+namespace connectivity
+{
+ namespace sdbcx
+ {
+
+ struct OOO_DLLPUBLIC_DBTOOLS KeyProperties
+ {
+ ::std::vector< OUString> m_aKeyColumnNames;
+ OUString m_ReferencedTable;
+ sal_Int32 m_Type;
+ sal_Int32 m_UpdateRule;
+ sal_Int32 m_DeleteRule;
+ KeyProperties(const OUString& ReferencedTable,
+ sal_Int32 Type,
+ sal_Int32 UpdateRule,
+ sal_Int32 DeleteRule)
+ :m_ReferencedTable(ReferencedTable),
+ m_Type(Type),
+ m_UpdateRule(UpdateRule),
+ m_DeleteRule(DeleteRule)
+ {}
+ KeyProperties():m_Type(0),m_UpdateRule(0),m_DeleteRule(0){}
+ };
+ typedef ::cppu::ImplHelper1< css::sdbcx::XDataDescriptorFactory > OKey_BASE;
+ class OCollection;
+
+ class OOO_DLLPUBLIC_DBTOOLS OKey :
+ public cppu::BaseMutex,
+ public ODescriptor_BASE,
+ public IRefreshableColumns,
+ public ::comphelper::OIdPropertyArrayUsageHelper<OKey>,
+ public ODescriptor,
+ public OKey_BASE
+ {
+ protected:
+ std::shared_ptr<KeyProperties> m_aProps;
+ // no Reference! see OCollection::acquire
+ std::unique_ptr<OCollection> m_pColumns;
+
+ using ODescriptor_BASE::rBHelper;
+ // OPropertyArrayUsageHelper
+ virtual ::cppu::IPropertyArrayHelper* createArrayHelper( sal_Int32 _nId) const override;
+ // OPropertySetHelper
+ virtual ::cppu::IPropertyArrayHelper & SAL_CALL getInfoHelper() override;
+ public:
+ OKey(bool _bCase);
+ OKey(const OUString& Name,const std::shared_ptr<KeyProperties>& _rProps,bool _bCase);
+
+ virtual ~OKey( ) override;
+
+ DECLARE_SERVICE_INFO();
+ //XInterface
+ virtual css::uno::Any SAL_CALL queryInterface( const css::uno::Type & rType ) override;
+ virtual void SAL_CALL acquire() throw() override;
+ virtual void SAL_CALL release() throw() override;
+ //XTypeProvider
+ virtual css::uno::Sequence< css::uno::Type > SAL_CALL getTypes( ) override;
+ // ODescriptor
+ virtual void construct() override;
+
+ // ::cppu::OComponentHelper
+ virtual void SAL_CALL disposing() override;
+ // XPropertySet
+ virtual css::uno::Reference< css::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) override;
+ // XColumnsSupplier
+ virtual css::uno::Reference< css::container::XNameAccess > SAL_CALL getColumns( ) override;
+
+ // XNamed
+ virtual OUString SAL_CALL getName( ) override;
+ virtual void SAL_CALL setName( const OUString& aName ) override;
+ // XDataDescriptorFactory
+ virtual css::uno::Reference< css::beans::XPropertySet > SAL_CALL createDataDescriptor( ) override;
+ };
+ }
+}
+
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/connectivity/inc/sdbcx/VKeyColumn.hxx b/connectivity/inc/sdbcx/VKeyColumn.hxx
new file mode 100644
index 000000000000..cb6548f31964
--- /dev/null
+++ b/connectivity/inc/sdbcx/VKeyColumn.hxx
@@ -0,0 +1,62 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+#include <connectivity/dbtoolsdllapi.hxx>
+#include <connectivity/sdbcx/VColumn.hxx>
+
+namespace connectivity
+{
+ namespace sdbcx
+ {
+ class OKeyColumn;
+ typedef ::comphelper::OIdPropertyArrayUsageHelper<OKeyColumn> OKeyColumn_PROP;
+
+ class OKeyColumn :
+ public OColumn, public OKeyColumn_PROP
+ {
+ OUString m_ReferencedColumn;
+ protected:
+ virtual ::cppu::IPropertyArrayHelper* createArrayHelper( sal_Int32 _nId) const override;
+ virtual ::cppu::IPropertyArrayHelper& SAL_CALL getInfoHelper() override;
+ public:
+ OKeyColumn(bool _bCase);
+ OKeyColumn( const OUString& ReferencedColumn,
+ const OUString& Name,
+ const OUString& TypeName,
+ const OUString& DefaultValue,
+ sal_Int32 IsNullable,
+ sal_Int32 Precision,
+ sal_Int32 Scale,
+ sal_Int32 Type,
+ bool _bCase,
+ const OUString& CatalogName,
+ const OUString& SchemaName,
+ const OUString& TableName);
+ // just to make it not inline
+ virtual ~OKeyColumn() override;
+
+ virtual void construct() override;
+ DECLARE_SERVICE_INFO();
+ };
+ }
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/connectivity/inc/sdbcx/VTypeDef.hxx b/connectivity/inc/sdbcx/VTypeDef.hxx
new file mode 100644
index 000000000000..2054003930e4
--- /dev/null
+++ b/connectivity/inc/sdbcx/VTypeDef.hxx
@@ -0,0 +1,37 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+#include <com/sun/star/sdbcx/XColumnsSupplier.hpp>
+#include <cppuhelper/compbase.hxx>
+#include <com/sun/star/lang/XServiceInfo.hpp>
+#include <com/sun/star/container/XNamed.hpp>
+
+namespace connectivity
+{
+ namespace sdbcx
+ {
+ typedef cppu::WeakComponentImplHelper< css::sdbcx::XColumnsSupplier,
+ css::container::XNamed,
+ css::lang::XServiceInfo> ODescriptor_BASE;
+ }
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/connectivity/inc/sdbcx/VUser.hxx b/connectivity/inc/sdbcx/VUser.hxx
new file mode 100644
index 000000000000..c16679466bdd
--- /dev/null
+++ b/connectivity/inc/sdbcx/VUser.hxx
@@ -0,0 +1,98 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#pragma once
+
+#include <com/sun/star/sdbcx/XUser.hpp>
+#include <com/sun/star/sdbcx/XGroupsSupplier.hpp>
+#include <comphelper/proparrhlp.hxx>
+#include <cppuhelper/compbase.hxx>
+#include <cppuhelper/basemutex.hxx>
+#include <connectivity/CommonTools.hxx>
+#include <connectivity/sdbcx/VCollection.hxx>
+#include <com/sun/star/container/XNamed.hpp>
+#include <connectivity/sdbcx/IRefreshable.hxx>
+#include <connectivity/sdbcx/VDescriptor.hxx>
+#include <connectivity/dbtoolsdllapi.hxx>
+
+namespace connectivity
+{
+ namespace sdbcx
+ {
+ typedef OCollection OGroups;
+
+ typedef ::cppu::WeakComponentImplHelper< css::sdbcx::XUser,
+ css::sdbcx::XGroupsSupplier,
+ css::container::XNamed,
+ css::lang::XServiceInfo> OUser_BASE;
+
+ class OOO_DLLPUBLIC_DBTOOLS OUser :
+ public cppu::BaseMutex,
+ public OUser_BASE,
+ public IRefreshableGroups,
+ public ::comphelper::OPropertyArrayUsageHelper<OUser>,
+ public ODescriptor
+ {
+ protected:
+ // no Reference! see OCollection::acquire
+ std::unique_ptr<OGroups> m_pGroups;
+
+ using OUser_BASE::rBHelper;
+
+ // OPropertyArrayUsageHelper
+ virtual ::cppu::IPropertyArrayHelper* createArrayHelper( ) const override;
+ // OPropertySetHelper
+ virtual ::cppu::IPropertyArrayHelper & SAL_CALL getInfoHelper() override;
+ public:
+ OUser(bool _bCase);
+ OUser(const OUString& Name,bool _bCase);
+
+ virtual ~OUser( ) override;
+
+ DECLARE_SERVICE_INFO();
+
+ // ::cppu::OComponentHelper
+ virtual void SAL_CALL disposing() override;
+ //XInterface
+ virtual css::uno::Any SAL_CALL queryInterface( const css::uno::Type & rType ) override;
+ virtual void SAL_CALL acquire() throw() override;
+ virtual void SAL_CALL release() throw() override;
+ //XTypeProvider
+ virtual css::uno::Sequence< css::uno::Type > SAL_CALL getTypes( ) override;
+ // XPropertySet
+ virtual css::uno::Reference< css::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) override;
+ // XUser
+ virtual void SAL_CALL changePassword( const OUString& objPassword, const OUString& newPassword ) override;
+ // XAuthorizable
+ virtual sal_Int32 SAL_CALL getPrivileges( const OUString& objName, sal_Int32 objType ) override;
+ virtual sal_Int32 SAL_CALL getGrantablePrivileges( const OUString& objName, sal_Int32 objType ) override;
+ virtual void SAL_CALL grantPrivileges( const OUString& objName, sal_Int32 objType, sal_Int32 objPrivileges ) override;
+ virtual void SAL_CALL revokePrivileges( const OUString& objName, sal_Int32 objType, sal_Int32 objPrivileges ) override;
+ // XGroupsSupplier
+ virtual css::uno::Reference< css::container::XNameAccess > SAL_CALL getGroups( ) override;
+
+ // XNamed
+ virtual OUString SAL_CALL getName( ) override;
+ virtual void SAL_CALL setName( const OUString& aName ) override;
+ };
+ }
+}
+
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/connectivity/source/commontools/TIndex.cxx b/connectivity/source/commontools/TIndex.cxx
index cba83f780137..f7f891308e40 100644
--- a/connectivity/source/commontools/TIndex.cxx
+++ b/connectivity/source/commontools/TIndex.cxx
@@ -17,8 +17,8 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
-#include <connectivity/TIndex.hxx>
-#include <connectivity/TIndexColumns.hxx>
+#include <TIndex.hxx>
+#include <TIndexColumns.hxx>
#include <com/sun/star/sdbc/XRow.hpp>
#include <com/sun/star/sdbc/XResultSet.hpp>
#include <connectivity/TTableHelper.hxx>
diff --git a/connectivity/source/commontools/TIndexColumns.cxx b/connectivity/source/commontools/TIndexColumns.cxx
index d69358e35489..bbb5ca706f20 100644
--- a/connectivity/source/commontools/TIndexColumns.cxx
+++ b/connectivity/source/commontools/TIndexColumns.cxx
@@ -17,11 +17,11 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
-#include <connectivity/TIndexColumns.hxx>
-#include <connectivity/sdbcx/VIndexColumn.hxx>
+#include <TIndexColumns.hxx>
+#include <sdbcx/VIndexColumn.hxx>
#include <com/sun/star/sdbc/XRow.hpp>
#include <com/sun/star/sdbc/XResultSet.hpp>
-#include <connectivity/TIndex.hxx>
+#include <TIndex.hxx>
#include <connectivity/TTableHelper.hxx>
#include <TConnection.hxx>
diff --git a/connectivity/source/commontools/TIndexes.cxx b/connectivity/source/commontools/TIndexes.cxx
index a40d2c7fa5de..aeb9253b0885 100644
--- a/connectivity/source/commontools/TIndexes.cxx
+++ b/connectivity/source/commontools/TIndexes.cxx
@@ -18,7 +18,7 @@
*/
#include <connectivity/TIndexes.hxx>
-#include <connectivity/TIndex.hxx>
+#include <TIndex.hxx>
#include <connectivity/TTableHelper.hxx>
#include <com/sun/star/sdb/tools/XIndexAlteration.hpp>
#include <com/sun/star/sdbc/XRow.hpp>
diff --git a/connectivity/source/commontools/TKey.cxx b/connectivity/source/commontools/TKey.cxx
index 16910f558ef4..1341291abcf3 100644
--- a/connectivity/source/commontools/TKey.cxx
+++ b/connectivity/source/commontools/TKey.cxx
@@ -17,8 +17,8 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
-#include <connectivity/TKey.hxx>
-#include <connectivity/TKeyColumns.hxx>
+#include <TKey.hxx>
+#include <TKeyColumns.hxx>
#include <com/sun/star/sdbc/XRow.hpp>
#include <com/sun/star/sdbc/XResultSet.hpp>
#include <TConnection.hxx>
diff --git a/connectivity/source/commontools/TKeyColumns.cxx b/connectivity/source/commontools/TKeyColumns.cxx
index 8c4d36a8cbc9..acbfc54bf000 100644
--- a/connectivity/source/commontools/TKeyColumns.cxx
+++ b/connectivity/source/commontools/TKeyColumns.cxx
@@ -17,9 +17,9 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
-#include <connectivity/TKeyColumns.hxx>
-#include <connectivity/TKey.hxx>
-#include <connectivity/sdbcx/VKeyColumn.hxx>
+#include <TKeyColumns.hxx>
+#include <TKey.hxx>
+#include <sdbcx/VKeyColumn.hxx>
#include <com/sun/star/sdbc/SQLException.hpp>
#include <com/sun/star/sdbc/XRow.hpp>
#include <com/sun/star/sdbc/XResultSet.hpp>
diff --git a/connectivity/source/commontools/TKeys.cxx b/connectivity/source/commontools/TKeys.cxx
index d9e217c37a72..57b49b6e8416 100644
--- a/connectivity/source/commontools/TKeys.cxx
+++ b/connectivity/source/commontools/TKeys.cxx
@@ -18,7 +18,7 @@
*/
#include <connectivity/TKeys.hxx>
-#include <connectivity/TKey.hxx>
+#include <TKey.hxx>
#include <connectivity/TTableHelper.hxx>
#include <com/sun/star/sdb/tools/XKeyAlteration.hpp>
#include <com/sun/star/sdbc/XRow.hpp>
diff --git a/connectivity/source/commontools/TTableHelper.cxx b/connectivity/source/commontools/TTableHelper.cxx
index d677887db1d4..246becfa6ae0 100644
--- a/connectivity/source/commontools/TTableHelper.cxx
+++ b/connectivity/source/commontools/TTableHelper.cxx
@@ -25,7 +25,7 @@
#include <com/sun/star/sdb/tools/XTableAlteration.hpp>
#include <com/sun/star/sdb/tools/XKeyAlteration.hpp>
#include <com/sun/star/sdb/tools/XIndexAlteration.hpp>
-#include <connectivity/sdbcx/VKey.hxx>
+#include <sdbcx/VKey.hxx>
#include <com/sun/star/sdbc/XRow.hpp>
#include <com/sun/star/sdbc/XResultSet.hpp>
#include <com/sun/star/sdbcx/KeyType.hpp>
diff --git a/connectivity/source/commontools/dbtools.cxx b/connectivity/source/commontools/dbtools.cxx
index 9d4dcd18106d..9398a50a7bc0 100644
--- a/connectivity/source/commontools/dbtools.cxx
+++ b/connectivity/source/commontools/dbtools.cxx
@@ -19,7 +19,7 @@
#include <connectivity/CommonTools.hxx>
#include <TConnection.hxx>
-#include <connectivity/ParameterCont.hxx>
+#include <ParameterCont.hxx>
#include <com/sun/star/awt/XWindow.hpp>
#include <com/sun/star/beans/NamedValue.hpp>
diff --git a/connectivity/source/commontools/dbtools2.cxx b/connectivity/source/commontools/dbtools2.cxx
index a5e438f3cb77..26b60b23933a 100644
--- a/connectivity/source/commontools/dbtools2.cxx
+++ b/connectivity/source/commontools/dbtools2.cxx
@@ -20,7 +20,7 @@
#include <connectivity/dbtools.hxx>
#include <connectivity/dbconversion.hxx>
#include <connectivity/dbcharset.hxx>
-#include <connectivity/SQLStatementHelper.hxx>
+#include <SQLStatementHelper.hxx>
#include <unotools/confignode.hxx>
#include <resource/sharedresources.hxx>
#include <strings.hrc>
diff --git a/connectivity/source/commontools/parameters.cxx b/connectivity/source/commontools/parameters.cxx
index 6397ea6f783d..1461374173b5 100644
--- a/connectivity/source/commontools/parameters.cxx
+++ b/connectivity/source/commontools/parameters.cxx
@@ -35,7 +35,7 @@
#include <tools/diagnose_ex.h>
-#include <connectivity/ParameterCont.hxx>
+#include <ParameterCont.hxx>
#include <o3tl/safeint.hxx>
#include <rtl/ustrbuf.hxx>
#include <sal/log.hxx>
diff --git a/connectivity/source/drivers/dbase/DIndexColumns.cxx b/connectivity/source/drivers/dbase/DIndexColumns.cxx
index 2ad8c3aa8987..12f0fc2e0e49 100644
--- a/connectivity/source/drivers/dbase/DIndexColumns.cxx
+++ b/connectivity/source/drivers/dbase/DIndexColumns.cxx
@@ -19,7 +19,7 @@
#include <dbase/DIndexColumns.hxx>
#include <dbase/DTable.hxx>
-#include <connectivity/sdbcx/VIndexColumn.hxx>
+#include <sdbcx/VIndexColumn.hxx>
#include <comphelper/types.hxx>
using namespace ::comphelper;
diff --git a/connectivity/source/drivers/evoab2/NCatalog.hxx b/connectivity/source/drivers/evoab2/NCatalog.hxx
index 1ed64f510440..d883d53c28a2 100644
--- a/connectivity/source/drivers/evoab2/NCatalog.hxx
+++ b/connectivity/source/drivers/evoab2/NCatalog.hxx
@@ -20,7 +20,7 @@
#ifndef INCLUDED_CONNECTIVITY_SOURCE_DRIVERS_EVOAB2_NCATALOG_HXX
#define INCLUDED_CONNECTIVITY_SOURCE_DRIVERS_EVOAB2_NCATALOG_HXX
-#include <connectivity/sdbcx/VCatalog.hxx>
+#include <sdbcx/VCatalog.hxx>
namespace connectivity
{
diff --git a/connectivity/source/drivers/firebird/Catalog.hxx b/connectivity/source/drivers/firebird/Catalog.hxx
index a8ee9c69b466..b3c9ae4fe820 100644
--- a/connectivity/source/drivers/firebird/Catalog.hxx
+++ b/connectivity/source/drivers/firebird/Catalog.hxx
@@ -10,7 +10,7 @@
#ifndef INCLUDED_CONNECTIVITY_SOURCE_DRIVERS_FIREBIRD_CATALOG_HXX
#define INCLUDED_CONNECTIVITY_SOURCE_DRIVERS_FIREBIRD_CATALOG_HXX
-#include <connectivity/sdbcx/VCatalog.hxx>
+#include <sdbcx/VCatalog.hxx>
namespace connectivity
{
diff --git a/connectivity/source/drivers/firebird/User.hxx b/connectivity/source/drivers/firebird/User.hxx
index d2cc091000b9..cb1690cd997c 100644
--- a/connectivity/source/drivers/firebird/User.hxx
+++ b/connectivity/source/drivers/firebird/User.hxx
@@ -10,7 +10,7 @@
#ifndef INCLUDED_CONNECTIVITY_SOURCE_DRIVERS_FIREBIRD_USER_HXX
#define INCLUDED_CONNECTIVITY_SOURCE_DRIVERS_FIREBIRD_USER_HXX
-#include <connectivity/sdbcx/VUser.hxx>
+#include <sdbcx/VUser.hxx>
namespace connectivity
{
diff --git a/connectivity/source/drivers/macab/MacabCatalog.hxx b/connectivity/source/drivers/macab/MacabCatalog.hxx
index ef6088a991a8..9c45ab1f10ad 100644
--- a/connectivity/source/drivers/macab/MacabCatalog.hxx
+++ b/connectivity/source/drivers/macab/MacabCatalog.hxx
@@ -20,7 +20,7 @@
#ifndef INCLUDED_CONNECTIVITY_SOURCE_DRIVERS_MACAB_MACABCATALOG_HXX
#define INCLUDED_CONNECTIVITY_SOURCE_DRIVERS_MACAB_MACABCATALOG_HXX
-#include <connectivity/sdbcx/VCatalog.hxx>
+#include <sdbcx/VCatalog.hxx>
namespace connectivity
{
diff --git a/connectivity/source/drivers/mork/MCatalog.hxx b/connectivity/source/drivers/mork/MCatalog.hxx
index 1c6f7904f4ef..170809f7cd49 100644
--- a/connectivity/source/drivers/mork/MCatalog.hxx
+++ b/connectivity/source/drivers/mork/MCatalog.hxx
@@ -19,7 +19,7 @@
#ifndef INCLUDED_CONNECTIVITY_SOURCE_DRIVERS_MORK_MCATALOG_HXX
#define INCLUDED_CONNECTIVITY_SOURCE_DRIVERS_MORK_MCATALOG_HXX
-#include <connectivity/sdbcx/VCatalog.hxx>
+#include <sdbcx/VCatalog.hxx>
namespace connectivity
{
diff --git a/connectivity/source/inc/ado/ACatalog.hxx b/connectivity/source/inc/ado/ACatalog.hxx
index fd34c32d9936..d1d8e22bf49c 100644
--- a/connectivity/source/inc/ado/ACatalog.hxx
+++ b/connectivity/source/inc/ado/ACatalog.hxx
@@ -19,7 +19,7 @@
#ifndef INCLUDED_CONNECTIVITY_SOURCE_INC_ADO_ACATALOG_HXX
#define INCLUDED_CONNECTIVITY_SOURCE_INC_ADO_ACATALOG_HXX
-#include <connectivity/sdbcx/VCatalog.hxx>
+#include <sdbcx/VCatalog.hxx>
#include <ado/Awrapadox.hxx>
namespace connectivity
diff --git a/connectivity/source/inc/ado/AGroup.hxx b/connectivity/source/inc/ado/AGroup.hxx
index b08487195291..2b3f36fff30f 100644
--- a/connectivity/source/inc/ado/AGroup.hxx
+++ b/connectivity/source/inc/ado/AGroup.hxx
@@ -20,7 +20,7 @@
#ifndef INCLUDED_CONNECTIVITY_SOURCE_INC_ADO_AGROUP_HXX
#define INCLUDED_CONNECTIVITY_SOURCE_INC_ADO_AGROUP_HXX
-#include <connectivity/sdbcx/VGroup.hxx>
+#include <sdbcx/VGroup.hxx>
#include <ado/Awrapadox.hxx>
namespace connectivity
diff --git a/connectivity/source/inc/ado/AIndex.hxx b/connectivity/source/inc/ado/AIndex.hxx
index 783c904cf27c..b31bef3f808c 100644
--- a/connectivity/source/inc/ado/AIndex.hxx
+++ b/connectivity/source/inc/ado/AIndex.hxx
@@ -20,7 +20,7 @@
#ifndef INCLUDED_CONNECTIVITY_SOURCE_INC_ADO_AINDEX_HXX
#define INCLUDED_CONNECTIVITY_SOURCE_INC_ADO_AINDEX_HXX
-#include <connectivity/sdbcx/VIndex.hxx>
+#include <sdbcx/VIndex.hxx>
#include <com/sun/star/sdbc/XDatabaseMetaData.hpp>
#include <ado/Awrapadox.hxx>
diff --git a/connectivity/source/inc/ado/AKey.hxx b/connectivity/source/inc/ado/AKey.hxx
index e14cb210c3f0..bd0b5a6404e9 100644
--- a/connectivity/source/inc/ado/AKey.hxx
+++ b/connectivity/source/inc/ado/AKey.hxx
@@ -20,7 +20,7 @@
#ifndef INCLUDED_CONNECTIVITY_SOURCE_INC_ADO_AKEY_HXX
#define INCLUDED_CONNECTIVITY_SOURCE_INC_ADO_AKEY_HXX
-#include <connectivity/sdbcx/VKey.hxx>
+#include <sdbcx/VKey.hxx>
#include <com/sun/star/sdbc/XDatabaseMetaData.hpp>
#include <ado/Awrapadox.hxx>
diff --git a/connectivity/source/inc/ado/AUser.hxx b/connectivity/source/inc/ado/AUser.hxx
index 046c2055cd04..3b7227d36455 100644
--- a/connectivity/source/inc/ado/AUser.hxx
+++ b/connectivity/source/inc/ado/AUser.hxx
@@ -20,7 +20,7 @@
#ifndef INCLUDED_CONNECTIVITY_SOURCE_INC_ADO_AUSER_HXX
#define INCLUDED_CONNECTIVITY_SOURCE_INC_ADO_AUSER_HXX
-#include <connectivity/sdbcx/VUser.hxx>
+#include <sdbcx/VUser.hxx>
#include <ado/Awrapadox.hxx>
namespace connectivity
diff --git a/connectivity/source/inc/dbase/DIndex.hxx b/connectivity/source/inc/dbase/DIndex.hxx
index cfa77bdd2583..018c4b915ae8 100644
--- a/connectivity/source/inc/dbase/DIndex.hxx
+++ b/connectivity/source/inc/dbase/DIndex.hxx
@@ -20,7 +20,7 @@
#ifndef INCLUDED_CONNECTIVITY_SOURCE_INC_DBASE_DINDEX_HXX
#define INCLUDED_CONNECTIVITY_SOURCE_INC_DBASE_DINDEX_HXX
-#include <connectivity/sdbcx/VIndex.hxx>
+#include <sdbcx/VIndex.hxx>
#include <dbase/DTable.hxx>
#include <dbase/dindexnode.hxx>
diff --git a/connectivity/source/inc/file/FCatalog.hxx b/connectivity/source/inc/file/FCatalog.hxx
index ad21bfcb711c..7bdbb7edb649 100644
--- a/connectivity/source/inc/file/FCatalog.hxx
+++ b/connectivity/source/inc/file/FCatalog.hxx
@@ -20,7 +20,7 @@
#ifndef INCLUDED_CONNECTIVITY_SOURCE_INC_FILE_FCATALOG_HXX
#define INCLUDED_CONNECTIVITY_SOURCE_INC_FILE_FCATALOG_HXX
-#include <connectivity/sdbcx/VCatalog.hxx>
+#include <sdbcx/VCatalog.hxx>
#include <file/filedllapi.hxx>
diff --git a/connectivity/source/inc/hsqldb/HCatalog.hxx b/connectivity/source/inc/hsqldb/HCatalog.hxx
index b2aa95c11a2b..0202da3502d1 100644
--- a/connectivity/source/inc/hsqldb/HCatalog.hxx
+++ b/connectivity/source/inc/hsqldb/HCatalog.hxx
@@ -19,7 +19,7 @@
#ifndef INCLUDED_CONNECTIVITY_SOURCE_INC_HSQLDB_HCATALOG_HXX
#define INCLUDED_CONNECTIVITY_SOURCE_INC_HSQLDB_HCATALOG_HXX
-#include <connectivity/sdbcx/VCatalog.hxx>
+#include <sdbcx/VCatalog.hxx>
namespace connectivity
{
diff --git a/connectivity/source/inc/hsqldb/HUser.hxx b/connectivity/source/inc/hsqldb/HUser.hxx
index 6b93707ee06b..1e16a765246f 100644
--- a/connectivity/source/inc/hsqldb/HUser.hxx
+++ b/connectivity/source/inc/hsqldb/HUser.hxx
@@ -20,7 +20,7 @@
#ifndef INCLUDED_CONNECTIVITY_SOURCE_INC_HSQLDB_HUSER_HXX
#define INCLUDED_CONNECTIVITY_SOURCE_INC_HSQLDB_HUSER_HXX
-#include <connectivity/sdbcx/VUser.hxx>
+#include <sdbcx/VUser.hxx>
#include <com/sun/star/sdbc/XConnection.hpp>
namespace connectivity
diff --git a/connectivity/source/inc/mysql/YCatalog.hxx b/connectivity/source/inc/mysql/YCatalog.hxx
index 8af6b82c2aa0..35dd2a3cdad4 100644
--- a/connectivity/source/inc/mysql/YCatalog.hxx
+++ b/connectivity/source/inc/mysql/YCatalog.hxx
@@ -19,7 +19,7 @@
#ifndef INCLUDED_CONNECTIVITY_SOURCE_INC_MYSQL_YCATALOG_HXX
#define INCLUDED_CONNECTIVITY_SOURCE_INC_MYSQL_YCATALOG_HXX
-#include <connectivity/sdbcx/VCatalog.hxx>
+#include <sdbcx/VCatalog.hxx>
namespace connectivity
{
diff --git a/connectivity/source/inc/mysql/YTables.hxx b/connectivity/source/inc/mysql/YTables.hxx
index ba8af5d20cc2..5c960f5f0a62 100644
--- a/connectivity/source/inc/mysql/YTables.hxx
+++ b/connectivity/source/inc/mysql/YTables.hxx
@@ -20,7 +20,7 @@
#define INCLUDED_CONNECTIVITY_SOURCE_INC_MYSQL_YTABLES_HXX
#include <connectivity/sdbcx/VCollection.hxx>
-#include <connectivity/SQLStatementHelper.hxx>
+#include <SQLStatementHelper.hxx>
#include <com/sun/star/sdbc/XDatabaseMetaData.hpp>
namespace connectivity
{
diff --git a/connectivity/source/inc/mysql/YUser.hxx b/connectivity/source/inc/mysql/YUser.hxx
index d05fb8ea6053..3377d13fca86 100644
--- a/connectivity/source/inc/mysql/YUser.hxx
+++ b/connectivity/source/inc/mysql/YUser.hxx
@@ -20,7 +20,7 @@
#ifndef INCLUDED_CONNECTIVITY_SOURCE_INC_MYSQL_YUSER_HXX
#define INCLUDED_CONNECTIVITY_SOURCE_INC_MYSQL_YUSER_HXX
-#include <connectivity/sdbcx/VUser.hxx>
+#include <sdbcx/VUser.hxx>
#include <com/sun/star/sdbc/XConnection.hpp>
namespace connectivity
diff --git a/connectivity/source/sdbcx/VCatalog.cxx b/connectivity/source/sdbcx/VCatalog.cxx
index dc5decfbf573..b30519fcaab1 100644
--- a/connectivity/source/sdbcx/VCatalog.cxx
+++ b/connectivity/source/sdbcx/VCatalog.cxx
@@ -18,7 +18,7 @@
*/
#include <comphelper/types.hxx>
-#include <connectivity/sdbcx/VCatalog.hxx>
+#include <sdbcx/VCatalog.hxx>
#include <connectivity/sdbcx/VCollection.hxx>
#include <com/sun/star/sdbc/XRow.hpp>
#include <connectivity/sdbcx/VDescriptor.hxx>
diff --git a/connectivity/source/sdbcx/VGroup.cxx b/connectivity/source/sdbcx/VGroup.cxx
index 9bb92592d5f4..ed11a617526f 100644
--- a/connectivity/source/sdbcx/VGroup.cxx
+++ b/connectivity/source/sdbcx/VGroup.cxx
@@ -18,7 +18,7 @@
*/
-#include <connectivity/sdbcx/VGroup.hxx>
+#include <sdbcx/VGroup.hxx>
#include <comphelper/sequence.hxx>
#include <connectivity/dbexception.hxx>
diff --git a/connectivity/source/sdbcx/VIndex.cxx b/connectivity/source/sdbcx/VIndex.cxx
index a274aaa6c102..1649ff83ad97 100644
--- a/connectivity/source/sdbcx/VIndex.cxx
+++ b/connectivity/source/sdbcx/VIndex.cxx
@@ -17,7 +17,7 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
-#include <connectivity/sdbcx/VIndex.hxx>
+#include <sdbcx/VIndex.hxx>
#include <com/sun/star/beans/PropertyAttribute.hpp>
#include <connectivity/dbexception.hxx>
#include <comphelper/sequence.hxx>
diff --git a/connectivity/source/sdbcx/VIndexColumn.cxx b/connectivity/source/sdbcx/VIndexColumn.cxx
index 41436ee02733..edd1ea93e9a2 100644
--- a/connectivity/source/sdbcx/VIndexColumn.cxx
+++ b/connectivity/source/sdbcx/VIndexColumn.cxx
@@ -17,7 +17,7 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
-#include <connectivity/sdbcx/VIndexColumn.hxx>
+#include <sdbcx/VIndexColumn.hxx>
#include <com/sun/star/beans/PropertyAttribute.hpp>
#include <cppuhelper/supportsservice.hxx>
#include <TConnection.hxx>
diff --git a/connectivity/source/sdbcx/VKey.cxx b/connectivity/source/sdbcx/VKey.cxx
index a310f984a7c3..33e9340b51c7 100644
--- a/connectivity/source/sdbcx/VKey.cxx
+++ b/connectivity/source/sdbcx/VKey.cxx
@@ -17,7 +17,7 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
-#include <connectivity/sdbcx/VKey.hxx>
+#include <sdbcx/VKey.hxx>
#include <com/sun/star/beans/PropertyAttribute.hpp>
#include <com/sun/star/sdbc/KeyRule.hpp>
#include <comphelper/sequence.hxx>
diff --git a/connectivity/source/sdbcx/VKeyColumn.cxx b/connectivity/source/sdbcx/VKeyColumn.cxx
index 49a779a01350..b6f69e65c9de 100644
--- a/connectivity/source/sdbcx/VKeyColumn.cxx
+++ b/connectivity/source/sdbcx/VKeyColumn.cxx
@@ -17,7 +17,7 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
-#include <connectivity/sdbcx/VKeyColumn.hxx>
+#include <sdbcx/VKeyColumn.hxx>
#include <com/sun/star/beans/PropertyAttribute.hpp>
#include <cppuhelper/supportsservice.hxx>
#include <TConnection.hxx>
diff --git a/connectivity/source/sdbcx/VUser.cxx b/connectivity/source/sdbcx/VUser.cxx
index 26ef01f4b614..9cecd7dfdd46 100644
--- a/connectivity/source/sdbcx/VUser.cxx
+++ b/connectivity/source/sdbcx/VUser.cxx
@@ -18,7 +18,7 @@
*/
-#include <connectivity/sdbcx/VUser.hxx>
+#include <sdbcx/VUser.hxx>
#include <connectivity/sdbcx/VCollection.hxx>
#include <connectivity/dbexception.hxx>
#include <comphelper/sequence.hxx>