Version 4.3.0.0.beta1, tag libreoffice-4.3.0.0.beta1
[LibreOffice.git] / connectivity / source / drivers / postgresql / pq_xkeys.hxx
blobb9eb295a4f91f93881843e5bb078c3995d4eba5e
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*************************************************************************
4 * Effective License of whole file:
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License version 2.1, as published by the Free Software Foundation.
10 * This library is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Lesser General Public License for more details.
15 * You should have received a copy of the GNU Lesser General Public
16 * License along with this library; if not, write to the Free Software
17 * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
18 * MA 02111-1307 USA
20 * Parts "Copyright by Sun Microsystems, Inc" prior to August 2011:
22 * The Contents of this file are made available subject to the terms of
23 * the GNU Lesser General Public License Version 2.1
25 * Copyright: 2000 by Sun Microsystems, Inc.
27 * Contributor(s): Joerg Budischewski
29 * All parts contributed on or after August 2011:
31 * This Source Code Form is subject to the terms of the Mozilla Public
32 * License, v. 2.0. If a copy of the MPL was not distributed with this
33 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
35 ************************************************************************/
37 #ifndef INCLUDED_CONNECTIVITY_SOURCE_DRIVERS_POSTGRESQL_PQ_XKEYS_HXX
38 #define INCLUDED_CONNECTIVITY_SOURCE_DRIVERS_POSTGRESQL_PQ_XKEYS_HXX
40 #include "pq_xcontainer.hxx"
42 namespace pq_sdbc_driver
44 class Keys : public Container
46 OUString m_schemaName;
47 OUString m_tableName;
49 public: // instances Columns 'exception safe'
50 static com::sun::star::uno::Reference< com::sun::star::container::XIndexAccess > create(
51 const ::rtl::Reference< RefCountedMutex > & refMutex,
52 const ::com::sun::star::uno::Reference< com::sun::star::sdbc::XConnection > & origin,
53 ConnectionSettings *pSettings,
54 const OUString &schemaName,
55 const OUString &tableName);
57 protected:
58 Keys(
59 const ::rtl::Reference< RefCountedMutex > & refMutex,
60 const ::com::sun::star::uno::Reference< com::sun::star::sdbc::XConnection > & origin,
61 ConnectionSettings *pSettings,
62 const OUString &schemaName,
63 const OUString &tableName);
65 virtual ~Keys();
67 public: // XAppend
68 virtual void SAL_CALL appendByDescriptor(
69 const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& descriptor )
70 throw (::com::sun::star::sdbc::SQLException,
71 ::com::sun::star::container::ElementExistException,
72 ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
74 public: // XDrop
75 virtual void SAL_CALL dropByIndex( sal_Int32 index )
76 throw (::com::sun::star::sdbc::SQLException,
77 ::com::sun::star::lang::IndexOutOfBoundsException,
78 ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
80 public: // XRefreshable
81 virtual void SAL_CALL refresh( ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
83 public: // XDataDescriptorFactory
84 virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > SAL_CALL createDataDescriptor( )
85 throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
89 class KeyDescriptors : public Container
91 public: // instances Columns 'exception safe'
92 static com::sun::star::uno::Reference< com::sun::star::container::XIndexAccess > create(
93 const ::rtl::Reference< RefCountedMutex > & refMutex,
94 const ::com::sun::star::uno::Reference< com::sun::star::sdbc::XConnection > & origin,
95 ConnectionSettings *pSettings );
97 protected:
98 KeyDescriptors(
99 const ::rtl::Reference< RefCountedMutex > & refMutex,
100 const ::com::sun::star::uno::Reference< com::sun::star::sdbc::XConnection > & origin,
101 ConnectionSettings *pSettings );
103 public: // XDataDescriptorFactory
104 virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > SAL_CALL createDataDescriptor( )
105 throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
109 #endif
111 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */