on 1d32cc6 help sign in
unity8/tests/mocks/Ubuntu/Connectivity/networking-status.cpp
65 lines 1.7 kB history raw
1/*
2 * Copyright © 2013 Canonical Ltd.
3 *
4 * This program is free software: you can redistribute it and/or modify it
5 * under the terms of the GNU Lesser General Public License version 3,
6 * as published by the Free Software Foundation.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU Lesser General Public License for more details.
12 *
13 * You should have received a copy of the GNU Lesser General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 *
16 * Authors:
17 * Antti Kaijanmäki <antti.kaijanmaki@canonical.com>
18 */
20#include "networking-status.h"
22NetworkingStatus::NetworkingStatus(QObject *parent)
23 : QObject(parent)
26 qRegisterMetaType<NetworkingStatus::Limitations>();
27 qRegisterMetaType<QVector<NetworkingStatus::Limitations>>();
28 qRegisterMetaType<NetworkingStatus::Status>();
31NetworkingStatus::~NetworkingStatus()
32{}
34QVector<NetworkingStatus::Limitations>
35NetworkingStatus::limitations() const
37 return m_limitations;
40NetworkingStatus::Status
41NetworkingStatus::status() const
43 return Status::Online;
46bool
47NetworkingStatus::online() const
49 return status() == Status::Online;
52bool
53NetworkingStatus::limitedBandwith() const
55 return limitations().contains(Limitations::Bandwith);
58void NetworkingStatus::setLimitedBandwidth(bool limited)
60 if (limited) {
61 m_limitations << Limitations::Bandwith;
62 } else if (limitedBandwith()) {
63 m_limitations.remove(m_limitations.indexOf(Limitations::Bandwith));
64 }