blob: 7469b06e8ffaf5bab71d7d02d64f51eac0f7511f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
/*
* Copyright (C) 2013-2018 Team Kodi
* This file is part of Kodi - https://kodi.tv
*
* SPDX-License-Identifier: GPL-2.0-or-later
* See LICENSES/README.md for more information.
*/
#pragma once
#include "settings/lib/ISettingsHandler.h"
#include "threads/CriticalSection.h"
#include "utils/logtypes.h"
#include <string>
class CUPnPSettings : public ISettingsHandler
{
public:
static CUPnPSettings& GetInstance();
void OnSettingsUnloaded() override;
bool Load(const std::string &file);
bool Save(const std::string &file) const;
void Clear();
const std::string& GetServerUUID() const { return m_serverUUID; }
int GetServerPort() const { return m_serverPort; }
int GetMaximumReturnedItems() const { return m_maxReturnedItems; }
const std::string& GetRendererUUID() const { return m_rendererUUID; }
int GetRendererPort() const { return m_rendererPort; }
void SetServerUUID(const std::string &uuid) { m_serverUUID = uuid; }
void SetServerPort(int port) { m_serverPort = port; }
void SetMaximumReturnedItems(int maximumReturnedItems) { m_maxReturnedItems = maximumReturnedItems; }
void SetRendererUUID(const std::string &uuid) { m_rendererUUID = uuid; }
void SetRendererPort(int port) { m_rendererPort = port; }
protected:
CUPnPSettings();
CUPnPSettings(const CUPnPSettings&) = delete;
CUPnPSettings& operator=(CUPnPSettings const&) = delete;
~CUPnPSettings() override;
private:
std::string m_serverUUID;
int m_serverPort;
int m_maxReturnedItems;
std::string m_rendererUUID;
int m_rendererPort;
mutable CCriticalSection m_critical;
Logger m_logger;
};
|