Code refactoring - remove configenterprise for s3

This commit is contained in:
Yuriy Puchkov
2020-09-25 10:50:46 +03:00
parent 9826558063
commit 34bfe5a6c0
10 changed files with 45 additions and 86 deletions

View File

@@ -17,7 +17,6 @@
#include "controller.h"
#include "src/config/configwindow.h"
#include "src/utils/configenterprise.h"
#include "src/utils/confighandler.h"
#include "src/utils/history.h"
#include "src/utils/screengrabber.h"
@@ -32,7 +31,6 @@
#include <QApplication>
#include <QClipboard>
#include <QDesktopWidget>
#include <QFile>
#include <QMenu>
#include <QSystemTrayIcon>

View File

@@ -16,32 +16,20 @@
// along with Flameshot. If not, see <http://www.gnu.org/licenses/>.
#include "imguploader.h"
#include "src/utils/configenterprise.h"
#include "src/utils/confighandler.h"
#include "src/utils/filenamehandler.h"
#include "src/utils/history.h"
#include "src/utils/systemnotification.h"
#include "src/widgets/imagelabel.h"
#include "src/widgets/loadspinner.h"
#include "src/widgets/notificationwidget.h"
#include <QApplication>
#include <QBuffer>
#include <QClipboard>
#include <QDebug>
#include <QDesktopServices>
#include <QDir>
#include <QDrag>
#include <QHBoxLayout>
#include <QHttpMultiPart>
#include <QJsonDocument>
#include <QJsonObject>
#include <QLabel>
#include <QMessageBox>
#include <QMimeData>
#include <QNetworkAccessManager>
#include <QNetworkProxy>
#include <QNetworkReply>
#include <QNetworkRequest>
#include <QPushButton>
#include <QShortcut>
#include <QTimer>

View File

@@ -32,7 +32,6 @@ class LoadSpinner;
class QPushButton;
class QUrl;
class NotificationWidget;
class ConfigEnterprise;
class ImageLabel;
class ImgUploader : public QWidget

View File

@@ -1,16 +1,15 @@
#include "imgs3settings.h"
#include "src/utils/configenterprise.h"
#include <QDir>
#include <QFileInfo>
#include <QSettings>
ImgS3Settings::ImgS3Settings()
{
m_configEnterprise = new ConfigEnterprise();
initSettings();
// get s3 credentials
QSettings* settings = m_configEnterprise->settings();
settings->beginGroup("S3");
m_credsUrl = settings->value("S3_CREDS_URL").toString();
m_settings->beginGroup("S3");
m_credsUrl = m_settings->value("S3_CREDS_URL").toString();
m_credsUrl =
m_credsUrl +
((m_credsUrl.length() > 0 && m_credsUrl[m_credsUrl.length() - 1] == '/')
@@ -18,14 +17,40 @@ ImgS3Settings::ImgS3Settings()
: "/") +
S3_API_IMG_PATH;
m_xApiKey = settings->value("S3_X_API_KEY").toString();
m_xApiKey = m_settings->value("S3_X_API_KEY").toString();
m_url = settings->value("S3_URL").toString();
m_url = m_settings->value("S3_URL").toString();
m_url =
m_url +
((m_url.length() > 0 && m_url[m_url.length() - 1] == '/') ? "" : "/");
settings->endGroup();
m_settings->endGroup();
}
QSettings* ImgS3Settings::settings()
{
return m_settings;
}
void ImgS3Settings::initSettings()
{
// get s3 settings
QString configIniPath = QDir(QDir::currentPath()).filePath("config.ini");
if (!(QFileInfo::exists(configIniPath) &&
QFileInfo(configIniPath).isFile())) {
#if defined(Q_OS_LINUX) || defined(Q_OS_UNIX)
configIniPath = "/etc/flameshot/config.ini";
#elif defined(Q_OS_WIN)
// calculate workdir for flameshot on startup if is not set yet
QSettings bootUpSettings(
"HKEY_CURRENT_"
"USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run",
QSettings::NativeFormat);
QFileInfo fi(bootUpSettings.value("Flameshot").toString());
configIniPath = QDir(fi.absolutePath()).filePath("config.ini");
#endif
}
m_settings = new QSettings(configIniPath, QSettings::IniFormat);
}
const QString& ImgS3Settings::credsUrl()

View File

@@ -5,7 +5,7 @@
#include <QString>
class ConfigEnterprise;
class QSettings;
class ImgS3Settings
{
@@ -15,9 +15,13 @@ public:
const QString& credsUrl();
const QString& xApiKey();
const QString& url();
QSettings* settings();
private:
ConfigEnterprise* m_configEnterprise;
void initSettings();
// class members
QSettings* m_settings;
QString m_credsUrl;
QString m_xApiKey;
QString m_url;

View File

@@ -1,4 +1,5 @@
// Copyright(c) 2017-2019 Alejandro Sirgo Rica & Contributors
// Copyright(c) 2017-2019 Alejandro Sirgo Rica & Contributors
//
// This file is part of Flameshot.
//
@@ -16,9 +17,8 @@
// along with Flameshot. If not, see <http://www.gnu.org/licenses/>.
#include "imgs3uploader.h"
#include "src/utils/configenterprise.h"
#include "imgs3settings.h"
#include "src/utils/confighandler.h"
#include "src/utils/filenamehandler.h"
#include "src/utils/history.h"
#include "src/utils/systemnotification.h"
#include "src/widgets/imagelabel.h"
@@ -27,11 +27,7 @@
#include <QApplication>
#include <QBuffer>
#include <QClipboard>
#include <QDebug>
#include <QDesktopServices>
#include <QDir>
#include <QDrag>
#include <QHBoxLayout>
#include <QHttpMultiPart>
#include <QJsonDocument>
#include <QJsonObject>
@@ -82,11 +78,11 @@ QNetworkProxy* ImgS3Uploader::proxy()
QNetworkProxy* ImgS3Uploader::initProxy()
{
// get enterprise settings
ConfigEnterprise* configEnterprise = new ConfigEnterprise();
// get s3 settings
ImgS3Settings imgS3Settings;
// get proxy settings from "config.ini" file
QSettings* settings = configEnterprise->settings();
QSettings* settings = imgS3Settings.settings();
QString httpProxyHost = settings->value("HTTP_PROXY_HOST").toString();
if (httpProxyHost.length() > 0) {

View File

@@ -33,7 +33,6 @@ class QLabel;
class QPushButton;
class QUrl;
class NotificationWidget;
class ConfigEnterprise;
class ImageLabel;
class ImgS3Uploader : public ImgUploader

View File

@@ -22,6 +22,5 @@ target_sources(
pathinfo.cpp
colorutils.cpp
history.cpp
configenterprise.cpp
configshortcuts.cpp
)

View File

@@ -1,32 +0,0 @@
#include "configenterprise.h"
#include <QDir>
#include <QFileInfo>
#include <QSettings>
#include <QString>
ConfigEnterprise::ConfigEnterprise()
{
// get enterprise settings
m_settings = nullptr;
QString configIniPath = QDir(QDir::currentPath()).filePath("config.ini");
if (!(QFileInfo::exists(configIniPath) &&
QFileInfo(configIniPath).isFile())) {
#if defined(Q_OS_LINUX) || defined(Q_OS_UNIX)
configIniPath = "/etc/flameshot/config.ini";
#elif defined(Q_OS_WIN)
// calculate workdir for flameshot on startup if is not set yet
QSettings bootUpSettings(
"HKEY_CURRENT_"
"USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run",
QSettings::NativeFormat);
QFileInfo fi(bootUpSettings.value("Flameshot").toString());
configIniPath = QDir(fi.absolutePath()).filePath("config.ini");
#endif
}
m_settings = new QSettings(configIniPath, QSettings::IniFormat);
}
QSettings* ConfigEnterprise::settings()
{
return m_settings;
}

View File

@@ -1,17 +0,0 @@
#ifndef CONFIGENTERPRISE_H
#define CONFIGENTERPRISE_H
class QSettings;
class ConfigEnterprise
{
public:
ConfigEnterprise();
QSettings* settings();
private:
QSettings* m_settings;
};
#endif // CONFIGENTERPRISE_H