Marble

DownloadPolicy.cpp
1 // SPDX-FileCopyrightText: 2009 Jens-Michael Hoffmann <[email protected]>
2 //
3 // SPDX-License-Identifier: LGPL-2.1-or-later
4 
5 #include "DownloadPolicy.h"
6 
7 namespace Marble
8 {
9 
10 DownloadPolicyKey::DownloadPolicyKey()
11  : m_hostNames(),
12  m_usage( DownloadBrowse )
13 {
14 }
15 
16 DownloadPolicyKey::DownloadPolicyKey( const QStringList & hostNames,
17  const DownloadUsage usage )
18  : m_hostNames( hostNames ),
19  m_usage( usage )
20 {
21 }
22 
23 DownloadPolicyKey::DownloadPolicyKey( const QString & hostName,
24  const DownloadUsage usage )
25  : m_hostNames( hostName ),
26  m_usage( usage )
27 {
28 }
29 
30 QStringList DownloadPolicyKey::hostNames() const
31 {
32  return m_hostNames;
33 }
34 
35 void DownloadPolicyKey::setHostNames( const QStringList & hostNames )
36 {
37  m_hostNames = hostNames;
38 }
39 
40 DownloadUsage DownloadPolicyKey::usage() const
41 {
42  return m_usage;
43 }
44 
45 void DownloadPolicyKey::setUsage( DownloadUsage const usage )
46 {
47  m_usage = usage;
48 }
49 
50 bool DownloadPolicyKey::matches( QString const & hostName, const DownloadUsage usage ) const
51 {
52  return m_hostNames.contains( hostName ) && m_usage == usage;
53 }
54 
55 
56 DownloadPolicy::DownloadPolicy()
57  : m_key(),
58  m_maximumConnections( 1 )
59 {
60 }
61 
62 DownloadPolicy::DownloadPolicy( const DownloadPolicyKey & key )
63  : m_key( key ),
64  m_maximumConnections( 1 )
65 {
66 }
67 
68 int DownloadPolicy::maximumConnections() const
69 {
70  return m_maximumConnections;
71 }
72 
73 void DownloadPolicy::setMaximumConnections( const int n )
74 {
75  m_maximumConnections = n;
76 }
77 
78 DownloadPolicyKey DownloadPolicy::key() const
79 {
80  return m_key;
81 }
82 
83 }
@ DownloadBrowse
Browsing mode, normal operation of Marble, like a web browser.
Definition: MarbleGlobal.h:155
DownloadUsage
This enum is used to describe the type of download.
Definition: MarbleGlobal.h:153
Binds a QML item to a specific geodetic location in screen coordinates.
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Wed Oct 4 2023 04:09:41 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.