syndication/rss2
parser.cpp
00001 /* 00002 * This file is part of the syndication library 00003 * 00004 * Copyright (C) 2005 Frank Osterfeld <osterfeld@kde.org> 00005 * 00006 * This library is free software; you can redistribute it and/or 00007 * modify it under the terms of the GNU Library General Public 00008 * License as published by the Free Software Foundation; either 00009 * version 2 of the License, or (at your option) any later version. 00010 * 00011 * This library is distributed in the hope that it will be useful, 00012 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00014 * Library General Public License for more details. 00015 * 00016 * You should have received a copy of the GNU Library General Public License 00017 * along with this library; see the file COPYING.LIB. If not, write to 00018 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 00019 * Boston, MA 02110-1301, USA. 00020 * 00021 */ 00022 00023 #include "parser.h" 00024 #include "document.h" 00025 00026 #include <documentsource.h> 00027 00028 #include <QtXml/QDomDocument> 00029 #include <QtXml/QDomElement> 00030 #include <QtCore/QString> 00031 00032 namespace Syndication { 00033 namespace RSS2 { 00034 00035 class Parser::ParserPrivate {}; 00036 00037 bool Parser::accept(const Syndication::DocumentSource& source) const 00038 { 00039 QDomDocument doc = source.asDomDocument(); 00040 if (doc.isNull()) 00041 return false; 00042 00043 QDomNode root = doc.namedItem(QLatin1String("rss")).toElement(); 00044 00045 return !root.isNull(); 00046 } 00047 00048 Syndication::SpecificDocumentPtr Parser::parse(const DocumentSource& source) const 00049 { 00050 return DocumentPtr(new Document(Document::fromXML(source.asDomDocument()))); 00051 } 00052 00053 QString Parser::format() const 00054 { 00055 return QLatin1String("rss2"); 00056 } 00057 00058 Parser::Parser() : d(0) {} 00059 Parser::Parser(const Parser& other) : AbstractParser(other), d(0) {} 00060 Parser::~Parser() {} 00061 Parser& Parser::operator=(const Parser& /*other*/) { return *this; } 00062 00063 } // namespace RSS2 00064 } // namespace Syndication
This file is part of the KDE documentation.
Documentation copyright © 1996-2012 The KDE developers.
Generated on Mon May 7 2012 23:58:29 by doxygen 1.8.0 written by Dimitri van Heesch, © 1997-2006
Documentation copyright © 1996-2012 The KDE developers.
Generated on Mon May 7 2012 23:58:29 by doxygen 1.8.0 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.