forked from qt-creator/qt-creator
Change-Id: I55a8d4e50d77ff1f11f471931e5ad959f2e946c6 Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
153 lines
4.3 KiB
C++
153 lines
4.3 KiB
C++
/****************************************************************************
|
|
**
|
|
** Copyright (C) 2013 BlackBerry Limited. All rights reserved.
|
|
** Contact: BlackBerry Limited (blackberry-qt@qnx.com)
|
|
**
|
|
** This file is part of Qt Creator.
|
|
**
|
|
** Commercial License Usage
|
|
** Licensees holding valid commercial Qt licenses may use this file in
|
|
** accordance with the commercial license agreement provided with the
|
|
** Software or, alternatively, in accordance with the terms contained in
|
|
** a written agreement between you and Digia. For licensing terms and
|
|
** conditions see http://qt.digia.com/licensing. For further information
|
|
** use the contact form at http://qt.digia.com/contact-us.
|
|
**
|
|
** GNU Lesser General Public License Usage
|
|
** Alternatively, this file may be used under the terms of the GNU Lesser
|
|
** General Public License version 2.1 as published by the Free Software
|
|
** Foundation and appearing in the file LICENSE.LGPL included in the
|
|
** packaging of this file. Please review the following information to
|
|
** ensure the GNU Lesser General Public License version 2.1 requirements
|
|
** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
|
|
**
|
|
** In addition, as a special exception, Digia gives you certain additional
|
|
** rights. These rights are described in the Digia Qt LGPL Exception
|
|
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
|
|
**
|
|
****************************************************************************/
|
|
|
|
#include "importlog.h"
|
|
|
|
namespace Qnx {
|
|
namespace Internal {
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// ImportLogEntry
|
|
//
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
static const char S_ERROR[] = "error";
|
|
static const char S_WARNING[] = "warning";
|
|
static const char S_INFO[] = "info";
|
|
static const char S_DEBUG[] = "debug";
|
|
static const char S_UNDEFINED[] = "undefined";
|
|
|
|
ImportLogEntry::ImportLogEntry(int sev, const QString &msg, const QString &context)
|
|
: QVariantList()
|
|
{
|
|
reserve(UnusedIx);
|
|
append(sev);
|
|
append(msg);
|
|
append(context);
|
|
}
|
|
|
|
static const char* severityEnumToStr(ImportLogEntry::Severity sev)
|
|
{
|
|
switch (sev) {
|
|
case ImportLogEntry::Error:
|
|
return S_ERROR;
|
|
case ImportLogEntry::Warning:
|
|
return S_WARNING;
|
|
case ImportLogEntry::Info:
|
|
return S_INFO;
|
|
case ImportLogEntry::Debug:
|
|
return S_DEBUG;
|
|
default:
|
|
break;
|
|
}
|
|
return S_UNDEFINED;
|
|
}
|
|
|
|
ImportLogEntry::Severity ImportLogEntry::severity() const
|
|
{
|
|
if (isValid())
|
|
return (Severity)(at(SeverityIx).toInt());
|
|
return Undefined;
|
|
}
|
|
|
|
QString ImportLogEntry::severityStr() const
|
|
{
|
|
return QLatin1String(severityEnumToStr(severity()));
|
|
}
|
|
|
|
QChar ImportLogEntry::severityAbbr() const
|
|
{
|
|
return severityStr().at(0).toUpper();
|
|
}
|
|
|
|
QString ImportLogEntry::message() const
|
|
{
|
|
if (isValid())
|
|
return at(MessageIx).toString();
|
|
return QString();
|
|
}
|
|
|
|
QString ImportLogEntry::context() const
|
|
{
|
|
if (isValid())
|
|
return at(ContextIx).toString();
|
|
return QString();
|
|
}
|
|
|
|
QString ImportLogEntry::toString() const
|
|
{
|
|
QString ret;
|
|
if (severity() == Undefined)
|
|
ret = message();
|
|
else
|
|
ret = QString::fromLatin1("[%1]%2 %3").arg(severityAbbr()).arg(context()).arg(message());
|
|
return ret;
|
|
}
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// ImportLog
|
|
//
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
QString ImportLog::toString() const
|
|
{
|
|
QString ret;
|
|
foreach (const ImportLogEntry &sle, *this)
|
|
ret += sle.toString() + QLatin1Char('\n');
|
|
return ret;
|
|
}
|
|
|
|
ImportLog& ImportLog::logError(const QString &msg, const QString &context)
|
|
{
|
|
append(ImportLogEntry(ImportLogEntry::Error, msg, context));
|
|
return *this;
|
|
}
|
|
|
|
ImportLog& ImportLog::logWarning(const QString &msg, const QString &context)
|
|
{
|
|
append(ImportLogEntry(ImportLogEntry::Warning, msg, context));
|
|
return *this;
|
|
}
|
|
|
|
ImportLog& ImportLog::logInfo(const QString &msg, const QString &context)
|
|
{
|
|
append(ImportLogEntry(ImportLogEntry::Info, msg, context));
|
|
return *this;
|
|
}
|
|
|
|
ImportLog& ImportLog::logDebug(const QString &msg, const QString &context)
|
|
{
|
|
append(ImportLogEntry(ImportLogEntry::Debug, msg, context));
|
|
return *this;
|
|
}
|
|
|
|
} // namespace Internal
|
|
} // namespace Qnx
|
|
|