swift
killrequest.cpp
1 // SPDX-FileCopyrightText: Copyright (C) 2019 swift Project Community / Contributors
2 // SPDX-License-Identifier: GPL-3.0-or-later OR LicenseRef-swift-pilot-client-1
3 
4 #include "core/fsd/killrequest.h"
5 
6 #include "misc/logmessage.h"
7 
8 namespace swift::core::fsd
9 {
10  KillRequest::KillRequest(const QString &callsign, const QString &receiver, const QString &reason)
11  : MessageBase(callsign, receiver), m_reason(reason)
12  {}
13 
15  {
16  auto tokens = QStringList {};
17  tokens.push_back(m_sender);
18  tokens.push_back(m_receiver);
19  tokens.push_back(m_reason);
20  return tokens;
21  }
22 
24  {
25  if (tokens.size() < 2)
26  {
27  swift::misc::CLogMessage(static_cast<KillRequest *>(nullptr)).debug(u"Wrong number of arguments.");
28  return {};
29  };
30  return { tokens[0], tokens[1], tokens.size() > 2 ? tokens[2] : QString() };
31  }
32 } // namespace swift::core::fsd
Kill request initiated from the server or supervisor. Client needs to disconnect immediatly upon rece...
Definition: killrequest.h:16
static KillRequest fromTokens(const QStringList &tokens)
Construct from tokens.
Definition: killrequest.cpp:23
QStringList toTokens() const
Message converted to tokens.
Definition: killrequest.cpp:14
QString m_reason
reason for kill request/kicked
Definition: killrequest.h:30
FSD message base class.
Definition: messagebase.h:58
QString m_receiver
message receiver
Definition: messagebase.h:89
QString m_sender
message sender
Definition: messagebase.h:88
Class for emitting a log message.
Definition: logmessage.h:27
Derived & debug()
Set the severity to debug.
void push_back(QList< T >::parameter_type value)
qsizetype size() const const