KDb

XbaseExport.h
1 /* This file is part of the KDE project
2  Copyright (C) 2008 Sharan Rao <[email protected]>
3 
4  This program is free software; you can redistribute it and/or
5  modify it under the terms of the GNU Library General Public
6  License as published by the Free Software Foundation; either
7  version 2 of the License, or (at your option) any later version.
8 
9  This program is distributed in the hope that it will be useful,
10  but WITHOUT ANY WARRANTY; without even the implied warranty of
11  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12  Library General Public License for more details.
13 
14  You should have received a copy of the GNU Library General Public License
15  along with this program; see the file COPYING. If not, write to
16  the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
17  * Boston, MA 02110-1301, USA.
18 */
19 
20 #ifndef XBASE_EXPORT_H
21 #define XBASE_EXPORT_H
22 
23 #include "KDbTableSchema.h"
24 
25 namespace Kexi {
26  class ObjectStatus;
27 }
28 
29 namespace KexiMigration {
30  class Data;
31 }
32 
33 class xBaseConnectionInternal;
34 class xBaseExportPrivate;
35 
36 class xBaseExport : public KDbObject
37 {
38 Q_OBJECT
39  public:
40 
41  void setData(KexiMigration::Data* migrateData);
42 
43  //! Exports data
44  bool performExport(Kexi::ObjectStatus* result = 0);
45 
46  protected:
47 
48  xBaseExport();
49 
50  //! Connect to destination database
51  bool dest_connect();
52 
53  //! Disconnect from destination database
54  bool dest_disconnect();
55 
56  //! Create a table in the destination database
57  bool dest_createTable(const QString& originalName, KDbTableSchema* tableSchema);
58 
59  //! Copy table data from source to destination
60  bool dest_copyTable(const QString& srcTableName, KDbConnection *srcConn,
61  KDbTableSchema* srcTable);
62 
63  //! Checks whether objectName is a system object name
64  bool dest_isSystemObjectName(const QString& objectName);
65 
66  KexiMigration::Data* m_migrateData;
67 
68  private:
69  xBaseExportPrivate* d;
70 
71  friend class KDbxBaseConnectionInternal;
72 };
73 
74 #endif //
Provides database connection, allowing queries and data modification.
Definition: KDbConnection.h:51
This file is part of the KDE documentation.
Documentation copyright © 1996-2022 The KDE developers.
Generated on Sat Jun 25 2022 06:21:40 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.