File indexing completed on 2024-05-12 15:48:11

0001 /*
0002     SPDX-FileCopyrightText: 2015 Jan Grulich <jgrulich@redhat.com>
0003 
0004     SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
0005 */
0006 
0007 #include "modemtime.h"
0008 
0009 ModemTime::ModemTime(QObject *parent)
0010     : QDBusAbstractAdaptor(parent)
0011     , m_enabledNotifications(false)
0012 {
0013 }
0014 
0015 ModemTime::~ModemTime()
0016 {
0017 }
0018 
0019 QVariantMap ModemTime::networkTimezone() const
0020 {
0021     return m_timezone;
0022 }
0023 
0024 QString ModemTime::GetNetworkTime()
0025 {
0026     return QStringLiteral("2010-08-06T18:34:14.3+02:00");
0027 }
0028 
0029 void ModemTime::setModemPath(const QString &path)
0030 {
0031     m_modemPath = path;
0032 }
0033 
0034 void ModemTime::setEnableNotifications(bool enable)
0035 {
0036     m_enabledNotifications = enable;
0037 }
0038 
0039 void ModemTime::setNetworkTimezone(const QVariantMap &timezone)
0040 {
0041     m_timezone = timezone;
0042 
0043     if (m_enabledNotifications) {
0044         QVariantMap map;
0045         map.insert(QLatin1String("NetworkTimezone"), QVariant::fromValue<QVariantMap>(m_timezone));
0046         QDBusMessage message = QDBusMessage::createSignal(m_modemPath, QLatin1String("org.freedesktop.DBus.Properties"), QLatin1String("PropertiesChanged"));
0047         message << QLatin1String("org.kde.fakemodem.Modem.Time") << map << QStringList();
0048         QDBusConnection::sessionBus().send(message);
0049     }
0050 }
0051 
0052 QVariantMap ModemTime::toMap() const
0053 {
0054     QVariantMap map;
0055     map.insert(QLatin1String(MM_MODEM_TIME_PROPERTY_NETWORKTIMEZONE), QVariant::fromValue<QVariantMap>(m_timezone));
0056     return map;
0057 }
0058 
0059 #include "moc_modemtime.cpp"