summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKarsten Heimrich <karsten.heimrich@theqtcompany.com>2015-06-09 16:05:27 +0200
committerKarsten Heimrich <karsten.heimrich@theqtcompany.com>2015-06-10 08:15:45 +0000
commit02f1c6cde87c23c187111c1ccc6c9bc4c04e698f (patch)
tree96c1e9231300dbe1589ecf4b1671275063d8f2a3
parent4677d362982a38c6e2aabb667e33aaa7f921f018 (diff)
Split the huge header file in more dedicated ones.
Change-Id: I35a1500d5a9bb8986765488660cf0487c32d9720 Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
-rw-r--r--src/libs/installer/createlocalrepositoryoperation.cpp1
-rw-r--r--src/libs/installer/extractarchiveoperation_p.h1
-rw-r--r--src/libs/installer/installer.pro5
-rw-r--r--src/libs/installer/lib7z_create.h73
-rw-r--r--src/libs/installer/lib7z_extract.h85
-rw-r--r--src/libs/installer/lib7z_facade.cpp4
-rw-r--r--src/libs/installer/lib7z_facade.h88
-rw-r--r--src/libs/installer/lib7z_list.h62
-rw-r--r--src/libs/installer/metadatajob_p.h3
-rw-r--r--tests/auto/installer/lib7zfacade/tst_lib7zfacade.cpp3
-rw-r--r--tools/archivegen/archive.cpp3
-rw-r--r--tools/common/repositorygen.cpp2
-rw-r--r--tools/devtool/binaryreplace.cpp2
-rw-r--r--tools/repogen/repogen.cpp1
14 files changed, 249 insertions, 84 deletions
diff --git a/src/libs/installer/createlocalrepositoryoperation.cpp b/src/libs/installer/createlocalrepositoryoperation.cpp
index 0904ab8dd..ddd9a0c25 100644
--- a/src/libs/installer/createlocalrepositoryoperation.cpp
+++ b/src/libs/installer/createlocalrepositoryoperation.cpp
@@ -40,6 +40,7 @@
#include "fileio.h"
#include "fileutils.h"
#include "copydirectoryoperation.h"
+#include "lib7z_create.h"
#include "lib7z_facade.h"
#include "packagemanagercore.h"
#include "productkeycheck.h"
diff --git a/src/libs/installer/extractarchiveoperation_p.h b/src/libs/installer/extractarchiveoperation_p.h
index 8e2b4913f..4476228cd 100644
--- a/src/libs/installer/extractarchiveoperation_p.h
+++ b/src/libs/installer/extractarchiveoperation_p.h
@@ -37,6 +37,7 @@
#include "extractarchiveoperation.h"
#include "fileutils.h"
+#include "lib7z_extract.h"
#include "lib7z_facade.h"
#include "packagemanagercore.h"
diff --git a/src/libs/installer/installer.pro b/src/libs/installer/installer.pro
index ab4ab74c9..b0bd556b4 100644
--- a/src/libs/installer/installer.pro
+++ b/src/libs/installer/installer.pro
@@ -126,7 +126,10 @@ HEADERS += packagemanagercore.h \
systeminfo.h \
localsocket.h \
packagesource.h \
- lib7z_guid.h
+ lib7z_guid.h \
+ lib7z_create.h \
+ lib7z_extract.h \
+ lib7z_list.h
SOURCES += packagemanagercore.cpp \
packagemanagercore_p.cpp \
diff --git a/src/libs/installer/lib7z_create.h b/src/libs/installer/lib7z_create.h
new file mode 100644
index 000000000..dc1069b9d
--- /dev/null
+++ b/src/libs/installer/lib7z_create.h
@@ -0,0 +1,73 @@
+/**************************************************************************
+**
+** Copyright (C) 2015 The Qt Company Ltd.
+** Contact: http://www.qt.io/licensing/
+**
+** This file is part of the Qt Installer Framework.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see http://qt.io/terms-conditions. For further
+** information use the contact form at http://www.qt.io/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 or version 3 as published by the Free
+** Software Foundation and appearing in the file LICENSE.LGPLv21 and
+** LICENSE.LGPLv3 included in the packaging of this file. Please review the
+** following information to ensure the GNU Lesser General Public License
+** requirements will be met: https://www.gnu.org/licenses/lgpl.html and
+** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** As a special exception, The Qt Company gives you certain additional
+** rights. These rights are described in The Qt Company LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+**
+** $QT_END_LICENSE$
+**
+**************************************************************************/
+#ifndef LIB7Z_CREATE_H
+#define LIB7Z_CREATE_H
+
+#include "installer_global.h"
+
+#include <Common/MyCom.h>
+#include <7zip/UI/Common/Update.h>
+
+QT_BEGIN_NAMESPACE
+class QFileDevice;
+class QStringList;
+QT_END_NAMESPACE
+
+namespace Lib7z
+{
+ enum struct QTmpFile {
+ No,
+ Yes
+ };
+
+ class INSTALLER_EXPORT UpdateCallback : public IUpdateCallbackUI2, public CMyUnknownImp
+ {
+ Q_DISABLE_COPY(UpdateCallback)
+
+ public:
+ UpdateCallback() = default;
+ virtual ~UpdateCallback() = default;
+
+ MY_UNKNOWN_IMP
+ INTERFACE_IUpdateCallbackUI2(;)
+ };
+
+ void INSTALLER_EXPORT createArchive(QFileDevice *archive, const QStringList &sources,
+ UpdateCallback *callback = 0);
+ void INSTALLER_EXPORT createArchive(const QString &archive, const QStringList &sources,
+ QTmpFile mode, UpdateCallback *callback = 0);
+
+} // namespace Lib7z
+
+#endif // LIB7Z_CREATE_H
diff --git a/src/libs/installer/lib7z_extract.h b/src/libs/installer/lib7z_extract.h
new file mode 100644
index 000000000..f6182c727
--- /dev/null
+++ b/src/libs/installer/lib7z_extract.h
@@ -0,0 +1,85 @@
+/**************************************************************************
+**
+** Copyright (C) 2015 The Qt Company Ltd.
+** Contact: http://www.qt.io/licensing/
+**
+** This file is part of the Qt Installer Framework.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see http://qt.io/terms-conditions. For further
+** information use the contact form at http://www.qt.io/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 or version 3 as published by the Free
+** Software Foundation and appearing in the file LICENSE.LGPLv21 and
+** LICENSE.LGPLv3 included in the packaging of this file. Please review the
+** following information to ensure the GNU Lesser General Public License
+** requirements will be met: https://www.gnu.org/licenses/lgpl.html and
+** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** As a special exception, The Qt Company gives you certain additional
+** rights. These rights are described in The Qt Company LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+**
+** $QT_END_LICENSE$
+**
+**************************************************************************/
+#ifndef LIB7Z_EXTRACT_H
+#define LIB7Z_EXTRACT_H
+
+#include "installer_global.h"
+
+#include <Common/MyCom.h>
+#include <7zip/Archive/IArchive.h>
+
+#include <QString>
+
+class CArc;
+
+QT_BEGIN_NAMESPACE
+class QFileDevice;
+QT_END_NAMESPACE
+
+namespace Lib7z
+{
+ class INSTALLER_EXPORT ExtractCallback : public IArchiveExtractCallback, public CMyUnknownImp
+ {
+ Q_DISABLE_COPY(ExtractCallback)
+
+ public:
+ ExtractCallback() = default;
+ virtual ~ExtractCallback() = default;
+
+ void setArchive(CArc *carc) { arc = carc; }
+ void setTarget(const QString &dir) { targetDir = dir; }
+
+ MY_UNKNOWN_IMP
+ INTERFACE_IArchiveExtractCallback(;)
+
+ protected:
+ virtual bool prepareForFile(const QString & /*filename*/) { return true; }
+ virtual void setCurrentFile(const QString &filename) { Q_UNUSED(filename) }
+ virtual HRESULT setCompleted(quint64 /*completed*/, quint64 /*total*/) { return S_OK; }
+
+ private:
+ CArc *arc = 0;
+
+ QString targetDir;
+ quint64 total = 0;
+ quint64 completed = 0;
+ quint32 currentIndex = 0;
+ };
+
+ void INSTALLER_EXPORT extractArchive(QFileDevice *archive, const QString &targetDirectory,
+ ExtractCallback *callback = 0);
+
+} // namespace Lib7z
+
+#endif // LIB7Z_EXTRACT_H
diff --git a/src/libs/installer/lib7z_facade.cpp b/src/libs/installer/lib7z_facade.cpp
index cf4df52eb..cb3f88610 100644
--- a/src/libs/installer/lib7z_facade.cpp
+++ b/src/libs/installer/lib7z_facade.cpp
@@ -36,6 +36,10 @@
#include "errors.h"
#include "fileio.h"
+
+#include "lib7z_create.h"
+#include "lib7z_extract.h"
+#include "lib7z_list.h"
#include "lib7z_guid.h"
#ifndef Q_OS_WIN
diff --git a/src/libs/installer/lib7z_facade.h b/src/libs/installer/lib7z_facade.h
index 36a3c20ab..b252e7696 100644
--- a/src/libs/installer/lib7z_facade.h
+++ b/src/libs/installer/lib7z_facade.h
@@ -37,17 +37,15 @@
#include "installer_global.h"
#include "errors.h"
-#include <QDateTime>
-#include <QFile>
-#include <QPoint>
-#include <QString>
-#include <QVector>
+QT_BEGIN_NAMESPACE
+class QFileDevice;
+QT_END_NAMESPACE
-#include <Common/MyCom.h>
-#include <7zip/UI/Common/Update.h>
-
-namespace Lib7z {
+namespace Lib7z
+{
void INSTALLER_EXPORT initSevenZ();
+ bool INSTALLER_EXPORT isSupportedArchive(QFileDevice *archive);
+ bool INSTALLER_EXPORT isSupportedArchive(const QString &archive);
class INSTALLER_EXPORT SevenZipException : public QInstaller::Error
{
@@ -61,76 +59,6 @@ namespace Lib7z {
{}
};
- struct INSTALLER_EXPORT File
- {
- public:
- QString path;
- QDateTime mtime;
- QPoint archiveIndex;
- bool isDirectory = false;
- quint64 compressedSize = 0;
- quint64 uncompressedSize = 0;
- QFile::Permissions permissions = 0;
- };
- INSTALLER_EXPORT bool operator==(const File &lhs, const File &rhs);
-
- class INSTALLER_EXPORT ExtractCallback : public IArchiveExtractCallback, public CMyUnknownImp
- {
- Q_DISABLE_COPY(ExtractCallback)
-
- public:
- ExtractCallback() = default;
- virtual ~ExtractCallback() = default;
-
- void setArchive(CArc *carc) { arc = carc; }
- void setTarget(const QString &dir) { targetDir = dir; }
-
- MY_UNKNOWN_IMP
- INTERFACE_IArchiveExtractCallback(;)
-
- protected:
- virtual bool prepareForFile(const QString & /*filename*/) { return true; }
- virtual void setCurrentFile(const QString &filename) { Q_UNUSED(filename) }
- virtual HRESULT setCompleted(quint64 /*completed*/, quint64 /*total*/) { return S_OK; }
-
- private:
- CArc *arc = 0;
-
- QString targetDir;
- quint64 total = 0;
- quint64 completed = 0;
- quint32 currentIndex = 0;
- };
-
- class INSTALLER_EXPORT UpdateCallback : public IUpdateCallbackUI2, public CMyUnknownImp
- {
- Q_DISABLE_COPY(UpdateCallback)
-
- public:
- UpdateCallback() = default;
- virtual ~UpdateCallback() = default;
-
- MY_UNKNOWN_IMP
- INTERFACE_IUpdateCallbackUI2(;)
- };
-
- enum struct QTmpFile {
- No,
- Yes
- };
-
- bool INSTALLER_EXPORT isSupportedArchive(QFileDevice *archive);
- bool INSTALLER_EXPORT isSupportedArchive(const QString &archive);
-
- QVector<File> INSTALLER_EXPORT listArchive(QFileDevice *archive);
-
- void INSTALLER_EXPORT createArchive(QFileDevice *archive, const QStringList &sources,
- UpdateCallback *callback = 0);
- void INSTALLER_EXPORT createArchive(const QString &archive, const QStringList &sources,
- QTmpFile mode, UpdateCallback *callback = 0);
-
- void INSTALLER_EXPORT extractArchive(QFileDevice *archive, const QString &targetDirectory,
- ExtractCallback *callback = 0);
-}
+} // namespace Lib7z
#endif // LIB7Z_FACADE_H
diff --git a/src/libs/installer/lib7z_list.h b/src/libs/installer/lib7z_list.h
new file mode 100644
index 000000000..201c57754
--- /dev/null
+++ b/src/libs/installer/lib7z_list.h
@@ -0,0 +1,62 @@
+/**************************************************************************
+**
+** Copyright (C) 2015 The Qt Company Ltd.
+** Contact: http://www.qt.io/licensing/
+**
+** This file is part of the Qt Installer Framework.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see http://qt.io/terms-conditions. For further
+** information use the contact form at http://www.qt.io/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 or version 3 as published by the Free
+** Software Foundation and appearing in the file LICENSE.LGPLv21 and
+** LICENSE.LGPLv3 included in the packaging of this file. Please review the
+** following information to ensure the GNU Lesser General Public License
+** requirements will be met: https://www.gnu.org/licenses/lgpl.html and
+** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** As a special exception, The Qt Company gives you certain additional
+** rights. These rights are described in The Qt Company LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+**
+** $QT_END_LICENSE$
+**
+**************************************************************************/
+#ifndef LIB7Z_LIST_H
+#define LIB7Z_LIST_H
+
+#include "installer_global.h"
+
+#include <QDateTime>
+#include <QFile>
+#include <QPoint>
+
+namespace Lib7z
+{
+ struct INSTALLER_EXPORT File
+ {
+ public:
+ QString path;
+ QDateTime mtime;
+ QPoint archiveIndex;
+ bool isDirectory = false;
+ quint64 compressedSize = 0;
+ quint64 uncompressedSize = 0;
+ QFile::Permissions permissions = 0;
+ };
+ INSTALLER_EXPORT bool operator==(const File &lhs, const File &rhs);
+
+ QVector<File> INSTALLER_EXPORT listArchive(QFileDevice *archive);
+
+} // namespace Lib7z
+
+#endif // LIB7Z_LIST_H
diff --git a/src/libs/installer/metadatajob_p.h b/src/libs/installer/metadatajob_p.h
index 034445cfa..6e9796712 100644
--- a/src/libs/installer/metadatajob_p.h
+++ b/src/libs/installer/metadatajob_p.h
@@ -35,9 +35,12 @@
#ifndef METADATAJOB_P_H
#define METADATAJOB_P_H
+#include "lib7z_extract.h"
#include "lib7z_facade.h"
#include "metadatajob.h"
+#include <QFile>
+
namespace QInstaller{
class UnzipArchiveException : public QException
diff --git a/tests/auto/installer/lib7zfacade/tst_lib7zfacade.cpp b/tests/auto/installer/lib7zfacade/tst_lib7zfacade.cpp
index 5a523c3b2..c4f6f4e3c 100644
--- a/tests/auto/installer/lib7zfacade/tst_lib7zfacade.cpp
+++ b/tests/auto/installer/lib7zfacade/tst_lib7zfacade.cpp
@@ -32,7 +32,10 @@
**
**************************************************************************/
+#include <lib7z_create.h>
+#include <lib7z_extract.h>
#include <lib7z_facade.h>
+#include <lib7z_list.h>
#include <QDir>
#include <QObject>
diff --git a/tools/archivegen/archive.cpp b/tools/archivegen/archive.cpp
index c94c767c4..256fd5201 100644
--- a/tools/archivegen/archive.cpp
+++ b/tools/archivegen/archive.cpp
@@ -35,7 +35,7 @@
#include <errors.h>
#include <init.h>
-#include <lib7z_facade.h>
+#include <lib7z_create.h>
#include <utils.h>
#include <QCoreApplication>
@@ -43,7 +43,6 @@
#include <iostream>
-using namespace Lib7z;
using namespace QInstaller;
static void printUsage()
diff --git a/tools/common/repositorygen.cpp b/tools/common/repositorygen.cpp
index 0e3658e9e..5ccb0e696 100644
--- a/tools/common/repositorygen.cpp
+++ b/tools/common/repositorygen.cpp
@@ -37,7 +37,9 @@
#include <fileutils.h>
#include <errors.h>
#include <globals.h>
+#include <lib7z_create.h>
#include <lib7z_facade.h>
+#include <lib7z_list.h>
#include <settings.h>
#include <qinstallerglobal.h>
#include <utils.h>
diff --git a/tools/devtool/binaryreplace.cpp b/tools/devtool/binaryreplace.cpp
index 8d246dc84..3e6144e39 100644
--- a/tools/devtool/binaryreplace.cpp
+++ b/tools/devtool/binaryreplace.cpp
@@ -40,7 +40,9 @@
#include <errors.h>
#include <fileio.h>
#include <fileutils.h>
+#include <lib7z_extract.h>
#include <lib7z_facade.h>
+#include <lib7z_list.h>
#include <QDir>
#include <QFutureWatcher>
diff --git a/tools/repogen/repogen.cpp b/tools/repogen/repogen.cpp
index 23629ac91..a1fe5548d 100644
--- a/tools/repogen/repogen.cpp
+++ b/tools/repogen/repogen.cpp
@@ -52,7 +52,6 @@
#define QUOTE_(x) #x
#define QUOTE(x) QUOTE_(x)
-using namespace Lib7z;
using namespace QInstaller;
static void printUsage()