File indexing completed on 2025-02-16 04:23:12

0001 /*
0002     SPDX-FileCopyrightText: 2022 Volker Krause <vkrause@kde.org>
0003     SPDX-License-Identifier: LGPL-2.0-or-later
0004 */
0005 
0006 #include "abstractpushprovider.h"
0007 
0008 #include <QNetworkAccessManager>
0009 #include <QStandardPaths>
0010 
0011 using namespace KUnifiedPush;
0012 
0013 AbstractPushProvider::AbstractPushProvider(const char *providerId, QObject *parent)
0014     : QObject(parent)
0015     , m_providerId(providerId)
0016 {
0017 }
0018 
0019 AbstractPushProvider::~AbstractPushProvider() = default;
0020 
0021 const char* AbstractPushProvider::providerId() const
0022 {
0023     return m_providerId;
0024 }
0025 
0026 QNetworkAccessManager* AbstractPushProvider::nam()
0027 {
0028     if (!m_nam) {
0029         m_nam = new QNetworkAccessManager(this);
0030         m_nam->setRedirectPolicy(QNetworkRequest::NoLessSafeRedirectPolicy);
0031         m_nam->setStrictTransportSecurityEnabled(true);
0032         m_nam->enableStrictTransportSecurityStore(true, QStandardPaths::writableLocation(QStandardPaths::GenericCacheLocation) + QLatin1String("/org.kde.kunifiedpush/hsts/"));
0033     }
0034     return m_nam;
0035 }