GH-1053 move guessLevel to instances

This commit is contained in:
Petr Mrázek
2015-07-22 09:01:04 +02:00
parent 2fc18921b0
commit 6310f6569c
6 changed files with 53 additions and 58 deletions

View File

@ -119,47 +119,6 @@ QString LaunchTask::censorPrivateInfo(QString in)
return in;
}
// console window
MessageLevel::Enum LaunchTask::guessLevel(const QString &line, MessageLevel::Enum level)
{
QRegularExpression re("\\[(?<timestamp>[0-9:]+)\\] \\[[^/]+/(?<level>[^\\]]+)\\]");
auto match = re.match(line);
if(match.hasMatch())
{
// New style logs from log4j
QString timestamp = match.captured("timestamp");
QString levelStr = match.captured("level");
if(levelStr == "INFO")
level = MessageLevel::Message;
if(levelStr == "WARN")
level = MessageLevel::Warning;
if(levelStr == "ERROR")
level = MessageLevel::Error;
if(levelStr == "FATAL")
level = MessageLevel::Fatal;
if(levelStr == "TRACE" || levelStr == "DEBUG")
level = MessageLevel::Debug;
}
else
{
// Old style forge logs
if (line.contains("[INFO]") || line.contains("[CONFIG]") || line.contains("[FINE]") ||
line.contains("[FINER]") || line.contains("[FINEST]"))
level = MessageLevel::Message;
if (line.contains("[SEVERE]") || line.contains("[STDERR]"))
level = MessageLevel::Error;
if (line.contains("[WARNING]"))
level = MessageLevel::Warning;
if (line.contains("[DEBUG]"))
level = MessageLevel::Debug;
}
if (line.contains("overwriting existing"))
return MessageLevel::Fatal;
if (line.contains("Exception in thread") || line.contains(QRegularExpression("\\s+at ")))
return MessageLevel::Error;
return level;
}
void LaunchTask::proceed()
{
if(state != LaunchTask::Waiting)
@ -223,7 +182,7 @@ void LaunchTask::onLogLine(QString line, MessageLevel::Enum level)
// If the level is still undetermined, guess level
if (level == MessageLevel::StdErr || level == MessageLevel::StdOut || level == MessageLevel::Unknown)
{
level = this->guessLevel(line, level);
level = m_instance->guessLevel(line, level);
}
// censor private user info

View File

@ -21,18 +21,7 @@
#include "MessageLevel.h"
#include "LoggedProcess.h"
#include "LaunchStep.h"
/* HACK: MINECRAFT: split! */
#include "minecraft/MinecraftInstance.h"
#include "java/JavaChecker.h"
#include "QObjectPtr.h"
#include "tasks/Task.h"
class ProcessTask
{
};
class BaseProfilerFactory;
class LaunchTask: public Task
{
Q_OBJECT
@ -89,13 +78,9 @@ public: /* methods */
*/
virtual bool abort() override;
public: /* HACK: remove this from here! */
public:
QString substituteVariables(const QString &cmd) const;
QString censorPrivateInfo(QString in);
virtual MessageLevel::Enum guessLevel(const QString &message, MessageLevel::Enum defaultLevel);
protected: /* methods */
virtual void emitFailed(QString reason);

View File

@ -16,6 +16,7 @@
#include "CheckJava.h"
#include <launch/LaunchTask.h>
#include <QStandardPaths>
#include <QFileInfo>
void CheckJava::executeTask()
{