aboutsummaryrefslogtreecommitdiff
path: root/rss/rss20parser.cpp
blob: ed4f060aacb40eb358ff93d1254c17434bd322e5 (plain) (blame)
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
#include "rss20parser.h"

#include <cstring>

#include "config.h"
#include "exception.h"
#include "feed.h"
#include "rss09xparser.h"

#define RSS20USERLAND_URI "http://backend.userland.com/rss2"

namespace rsspp {

void Rss20Parser::parse_feed(Feed& f, xmlNode* rootNode)
{
	if (!rootNode) {
		throw Exception(_("XML root node is NULL"));
	}

	if (rootNode->ns) {
		const char* ns = (const char*)rootNode->ns->href;
		if (strcmp(ns, RSS20USERLAND_URI) == 0) {
			this->ns = strdup(ns);
		}
	}

	Rss09xParser::parse_feed(f, rootNode);
}

} // namespace rsspp