MythTV master
soapclient.h
Go to the documentation of this file.
1
2// Program Name: soapclient.h
3// Created : Mar. 19, 2007
4//
5// Purpose : SOAP client base class
6//
7// Copyright (c) 2007 David Blain <dblain@mythtv.org>
8//
9// Licensed under the GPL v2 or later, see LICENSE for details
10//
12
13#ifndef SOAPCLIENT_H_
14#define SOAPCLIENT_H_
15
16#include <QDomDocument>
17#include <QDomNode>
18#include <QString>
19#include <QUrl>
20
21#include "upnputil.h"
22#include "upnpexp.h"
23
26{
27 public:
28 SOAPClient(QUrl url,
29 QString sNamespace,
30 QString sControlPath);
33 SOAPClient() = default;
34 virtual ~SOAPClient() = default;
35
36 bool Init(const QUrl &url,
37 const QString &sNamespace,
38 const QString &sControlPath);
39
40 protected:
41 int GetNodeValue(const QDomNode &node,
42 const QString &sName,
43 int nDefault) const;
44 bool GetNodeValue(const QDomNode &node,
45 const QString &sName,
46 bool bDefault) const;
47 QString GetNodeValue(const QDomNode &node,
48 const QString &sName,
49 const QString &sDefault) const;
50 QString GetNodeValue(const QDomNode &node,
51 const QString &sName,
52 const char *sDefault) const
53 {
54 return GetNodeValue(node, sName, QString(sDefault));
55 }
56
57 QDomNode FindNode(const QString &sName,
58 const QDomNode &baseNode) const;
59
60 QDomDocument SendSOAPRequest(const QString &sMethod,
61 QStringMap &list,
62 int &nErrCode,
63 QString &sErrDesc);
64 private:
65 QDomNode FindNodeInternal(QStringList &sParts,
66 const QDomNode &curNode) const;
67 protected:
68 QUrl m_url;
69 QString m_sNamespace;
71};
72
73#endif
74
Subclass SOAPClient to perform actions using the command URL.
Definition: soapclient.h:26
QString GetNodeValue(const QDomNode &node, const QString &sName, const char *sDefault) const
Definition: soapclient.h:50
QUrl m_url
Definition: soapclient.h:68
QString m_sNamespace
Definition: soapclient.h:69
virtual ~SOAPClient()=default
SOAPClient()=default
Empty SOAPClient constructor.
QString m_sControlPath
Definition: soapclient.h:70
#define UPNP_PUBLIC
Definition: upnpexp.h:9
QMap< QString, QString > QStringMap
Definition: upnputil.h:28