LibreOffice Module connectivity (master) 1
Table.hxx
Go to the documentation of this file.
1/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; fill-column: 100 -*- */
2/*
3 * This file is part of the LibreOffice project.
4 *
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 */
9
10#pragma once
11
12#include <sal/config.h>
13
14#include <string_view>
15
16#include "Tables.hxx"
17
19
21 {
22
27 class Table: public OTableHelper
28 {
29 private:
30 ::osl::Mutex& m_rMutex;
31 sal_Int32 m_nPrivileges;
32
37 OUString getAlterTableColumn(std::u16string_view rColumn);
38
39 protected:
40 void construct() override;
41
42 public:
43 Table(Tables* pTables,
44 ::osl::Mutex& rMutex,
45 const css::uno::Reference< css::sdbc::XConnection >& _xConnection);
46 Table(Tables* pTables,
47 ::osl::Mutex& rMutex,
48 const css::uno::Reference< css::sdbc::XConnection >& _xConnection,
49 const OUString& rName,
50 const OUString& rType,
51 const OUString& rDescription);
52
53 // OTableHelper
54 virtual ::connectivity::sdbcx::OCollection* createColumns(
55 const ::std::vector< OUString>& rNames) override;
56 virtual ::connectivity::sdbcx::OCollection* createKeys(
57 const ::std::vector< OUString>& rNames) override;
58 virtual ::connectivity::sdbcx::OCollection* createIndexes(
59 const ::std::vector< OUString>& rNames) override;
60
61 // XAlterTable
66 virtual void SAL_CALL alterColumnByName(
67 const OUString& rColName,
68 const css::uno::Reference< css::beans::XPropertySet >& rDescriptor) override;
69
70 // XRename -- UNSUPPORTED
71 virtual void SAL_CALL rename(const OUString& sName) override;
72
73 //XInterface
74 virtual css::uno::Any
75 SAL_CALL queryInterface(const css::uno::Type & rType) override;
76
77 };
78
79} // namespace connectivity::firebird
80
81/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */
Implements sdbcx.Table.
Definition: Table.hxx:28
virtual void SAL_CALL rename(const OUString &sName) override
virtual ::connectivity::sdbcx::OCollection * createKeys(const ::std::vector< OUString > &rNames) override
creates the key collection for the table
virtual ::connectivity::sdbcx::OCollection * createIndexes(const ::std::vector< OUString > &rNames) override
creates the index collection for the table
virtual void SAL_CALL alterColumnByName(const OUString &rColName, const css::uno::Reference< css::beans::XPropertySet > &rDescriptor) override
See css::sdbcx::ColumnDescriptor for details of rDescriptor.
Table(Tables *pTables, ::osl::Mutex &rMutex, const css::uno::Reference< css::sdbc::XConnection > &_xConnection, const OUString &rName, const OUString &rType, const OUString &rDescription)
virtual css::uno::Any SAL_CALL queryInterface(const css::uno::Type &rType) override
virtual ::connectivity::sdbcx::OCollection * createColumns(const ::std::vector< OUString > &rNames) override
creates the column collection for the table
Table(Tables *pTables, ::osl::Mutex &rMutex, const css::uno::Reference< css::sdbc::XConnection > &_xConnection)
OUString getAlterTableColumn(std::u16string_view rColumn)
Get the ALTER TABLE [TABLE] ALTER [COLUMN] String.
Definition: Table.cxx:240
::osl::Mutex & m_rMutex
Definition: Table.hxx:30
This implements com.sun.star.sdbcx.Container, which seems to be also known by the name of Tables and ...
Definition: Tables.hxx:26