view ui/certificatelist.h @ 146:306e4db11761

Added portable path name handling functions. Windows implementation missing.
author Sascha Wilde <wilde@intevation.de>
date Mon, 24 Mar 2014 17:23:06 +0100
parents 00a93409e93e
children 60c5df8e7980
line wrap: on
line source
#ifndef CERTIFICATELIST_H
#define CERTIFICATELIST_H
/**
 * This class handles a certificate list file.
 * It checks for the validity of that certificate
 * list file and provides an API for working with that
 * file.
 *
 * The List is parsed on Initialization. You should
 * check the Status afterwards to see if the file
 * could be parsed.
 *
 */

class QByteArray;

#include <QString>
#include <QDateTime>
#include <QObject>

#include "../common/listutil.h"
#include "certificate.h"

class CertificateList
{
public:
    CertificateList();
    CertificateList(const char *fileName);

    list_status_t getStatus() {return mStatus;}

    /** @brief Read a list
     *
     * @param[in] fileName the filename of the list to read
     *
     * @return status of the read. Vaild on success.
     */
    list_status_t readList(const char *fileName);

    /** @brief Returns true if the list is Valid 
     *
     *  A list is valid only if the signature matched and the
     *  list could be parsed.
     */
    bool isValid() const {return mStatus == Valid;}

    /* @brief get a list of certificate objects that should be installed */
    const QList<Certificate>& getInstallCertificates() const;

    /* @brief get a list of certificate objects that should be removed */
    const QList<Certificate>& getRemoveCertificates() const;

    /* @brief get the raw certificate list */
    const QString& rawData() const {return mData;}

private:
    QString mFileName;
    QList<Certificate> mCertificatesInstall;
    QList<Certificate> mCertificatesRemove;
    QString mData;
    list_status_t mStatus;
    QDateTime mDate;
};
#endif

http://wald.intevation.org/projects/trustbridge/