/*
    SPDX-FileCopyrightText: 2005-2007 Joris Guisson <joris.guisson@gmail.com>

    SPDX-License-Identifier: GPL-2.0-or-later
*/
#ifndef KTUPNPDESCRIPTIONPARSER_H
#define KTUPNPDESCRIPTIONPARSER_H

#include <QString>

namespace bt
{
class UPnPRouter;

/*!
 * \headerfile upnp/upnpdescriptionparser.h
 * \author Joris Guisson
 *
 * \brief Parses the XML description of a router.
 */
class UPnPDescriptionParser
{
public:
    UPnPDescriptionParser();
    virtual ~UPnPDescriptionParser();

    /*!
     * Parse the xml description.
     * \param file File it is located in
     * \param router The router off the xml description
     * \return true upon success
     */
    bool parse(const QString &file, UPnPRouter *router);

    /*!
     * Parse the xml description.
     * \param data QByteArray with the data
     * \param router The router off the xml description
     * \return true upon success
     */
    bool parse(const QByteArray &data, UPnPRouter *router);
};

}

#endif
