Propagate FacilityType and LoginMode to value objects

This commit is contained in:
Roland Rossgotterer
2019-09-13 11:07:38 +02:00
parent 4772aadc1a
commit fa6e7108c7
21 changed files with 243 additions and 56 deletions

View File

@@ -1451,7 +1451,7 @@ namespace BlackCore
if (!sApp || sApp->isShuttingDown() || !sApp->getIContextNetwork()) { return false; }
// It is only relevant if we are logged in as observer
if (sApp->getIContextNetwork()->getLoginMode() != INetwork::LoginAsObserver) { return false; }
if (sApp->getIContextNetwork()->getLoginMode() != BlackMisc::Network::CLoginMode::Observer) { return false; }
const CCallsign ownCallsign = this->getOwnAircraft().getCallsign();
return ownCallsign.isMaybeCopilotCallsign(callsign);

View File

@@ -27,6 +27,7 @@
#include "blackmisc/aviation/flightplan.h"
#include "blackmisc/network/connectionstatus.h"
#include "blackmisc/network/clientlist.h"
#include "blackmisc/network/loginmode.h"
#include "blackmisc/network/server.h"
#include "blackmisc/network/serverlist.h"
#include "blackmisc/network/textmessagelist.h"
@@ -248,16 +249,16 @@ namespace BlackCore
const QString &extraLiveryString, bool sendLivery,
const QString &extraModelString, bool sendModelString,
const BlackMisc::Aviation::CCallsign &partnerCallsign,
BlackCore::INetwork::LoginMode loginMode) = 0;
BlackMisc::Network::CLoginMode loginMode) = 0;
//! Server which is connected, if not connected empty default object.
virtual BlackMisc::Network::CServer getConnectedServer() const = 0;
//! Login mode
virtual INetwork::LoginMode getLoginMode() const = 0;
virtual BlackMisc::Network::CLoginMode getLoginMode() const = 0;
//! Mode as string
const QString &getLoginModeAsString() const { return INetwork::modeAsString(this->getLoginMode()); }
QString getLoginModeAsString() const { return this->getLoginMode().toQString(); }
//! Disconnect from network
//! \return messages generated during disconnecting

View File

@@ -124,7 +124,7 @@ namespace BlackCore
}
//! \copydoc IContextNetwork::connectToNetwork
virtual BlackMisc::CStatusMessage connectToNetwork(const BlackMisc::Network::CServer &server, const QString &extraLiveryString, bool sendLivery, const QString &extraModelString, bool sendModelString, const BlackMisc::Aviation::CCallsign &partnerCallsign, BlackCore::INetwork::LoginMode mode) override
virtual BlackMisc::CStatusMessage connectToNetwork(const BlackMisc::Network::CServer &server, const QString &extraLiveryString, bool sendLivery, const QString &extraModelString, bool sendModelString, const BlackMisc::Aviation::CCallsign &partnerCallsign, BlackMisc::Network::CLoginMode mode) override
{
Q_UNUSED(mode);
Q_UNUSED(server);
@@ -166,10 +166,10 @@ namespace BlackCore
}
//! \copydoc IContextNetwork::getLoginMode
virtual INetwork::LoginMode getLoginMode() const override
virtual BlackMisc::Network::CLoginMode getLoginMode() const override
{
logEmptyContextWarning(Q_FUNC_INFO);
return BlackCore::INetwork::LoginNormal;
return BlackMisc::Network::CLoginMode::Pilot;
}
//! \copydoc IContextNetwork::sendTextMessages()

View File

@@ -217,7 +217,7 @@ namespace BlackCore
if (m_airspace) { m_airspace->gracefulShutdown(); }
}
CStatusMessage CContextNetwork::connectToNetwork(const CServer &server, const QString &extraLiveryString, bool sendLivery, const QString &extraModelString, bool sendModelString, const CCallsign &partnerCallsign, INetwork::LoginMode mode)
CStatusMessage CContextNetwork::connectToNetwork(const CServer &server, const QString &extraLiveryString, bool sendLivery, const QString &extraModelString, bool sendModelString, const CCallsign &partnerCallsign, CLoginMode mode)
{
if (this->isDebugEnabled()) { CLogMessage(this, CLogCategory::contextSlot()).debug() << Q_FUNC_INFO; }
QString msg;

View File

@@ -252,9 +252,9 @@ namespace BlackCore
virtual BlackMisc::Aviation::CAtcStation getOnlineStationForCallsign(const BlackMisc::Aviation::CCallsign &callsign) const override;
virtual BlackMisc::Aviation::CAtcStationList getOnlineStationsForFrequency(const BlackMisc::PhysicalQuantities::CFrequency &frequency, BlackMisc::Aviation::CComSystem::ChannelSpacing channelSpacing) const override;
virtual bool isOnlineStation(const BlackMisc::Aviation::CCallsign &callsign) const override;
virtual BlackMisc::CStatusMessage connectToNetwork(const BlackMisc::Network::CServer &server, const QString &extraLiveryString, bool sendLivery, const QString &extraModelString, bool sendModelString, const BlackMisc::Aviation::CCallsign &partnerCallsign, BlackCore::INetwork::LoginMode mode) override;
virtual BlackMisc::CStatusMessage connectToNetwork(const BlackMisc::Network::CServer &server, const QString &extraLiveryString, bool sendLivery, const QString &extraModelString, bool sendModelString, const BlackMisc::Aviation::CCallsign &partnerCallsign, BlackMisc::Network::CLoginMode mode) override;
virtual BlackMisc::Network::CServer getConnectedServer() const override;
virtual INetwork::LoginMode getLoginMode() const override;
virtual BlackMisc::Network::CLoginMode getLoginMode() const override;
virtual BlackMisc::CStatusMessage disconnectFromNetwork() override;
virtual bool isConnected() const override;
virtual void sendTextMessages(const BlackMisc::Network::CTextMessageList &textMessages) override;
@@ -295,7 +295,7 @@ namespace BlackCore
CAirspaceMonitor *m_airspace = nullptr;
INetwork *m_network = nullptr;
INetwork::ConnectionStatus m_currentStatus = INetwork::Disconnected; //!< used to detect pending connections
INetwork::LoginMode m_currentMode = INetwork::LoginNormal; //!< current modeM
BlackMisc::Network::CLoginMode m_currentMode = BlackMisc::Network::CLoginMode::Pilot; //!< current modeM
QTimer *m_requestAircraftDataTimer = nullptr; //!< general updates such as frequencies, see requestAircraftDataUpdates()
QTimer *m_requestAtisTimer = nullptr; //!< general updates such as ATIS

View File

@@ -353,7 +353,7 @@ namespace BlackCore
return m_dBusInterface->callDBusRet<bool>(QLatin1String("testAddAltitudeOffset"), callsign, offset);
}
CStatusMessage CContextNetworkProxy::connectToNetwork(const CServer &server, const QString &extraLiveryString, bool sendLiveryString, const QString &extraModelString, bool sendModelString, const CCallsign &partnerCallsign, INetwork::LoginMode loginMode)
CStatusMessage CContextNetworkProxy::connectToNetwork(const CServer &server, const QString &extraLiveryString, bool sendLiveryString, const QString &extraModelString, bool sendModelString, const CCallsign &partnerCallsign, CLoginMode loginMode)
{
return m_dBusInterface->callDBusRet<BlackMisc::CStatusMessage>(QLatin1String("connectToNetwork"), server, extraLiveryString, sendLiveryString, extraModelString, sendModelString, partnerCallsign, loginMode);
}
@@ -373,9 +373,9 @@ namespace BlackCore
return m_dBusInterface->callDBusRet<BlackMisc::Network::CServer>(QLatin1String("getConnectedServer"));
}
INetwork::LoginMode CContextNetworkProxy::getLoginMode() const
CLoginMode CContextNetworkProxy::getLoginMode() const
{
return m_dBusInterface->callDBusRet<BlackCore::INetwork::LoginMode>(QLatin1String("getLoginMode"));
return m_dBusInterface->callDBusRet<CLoginMode>(QLatin1String("getLoginMode"));
}
bool CContextNetworkProxy::parseCommandLine(const QString &commandLine, const CIdentifier &originator)

View File

@@ -88,11 +88,11 @@ namespace BlackCore
virtual BlackMisc::Aviation::CAtcStationList getOnlineStationsForFrequency(const BlackMisc::PhysicalQuantities::CFrequency &frequency, BlackMisc::Aviation::CComSystem::ChannelSpacing channelSpacing) const override;
virtual BlackMisc::Aviation::CAtcStation getOnlineStationForCallsign(const BlackMisc::Aviation::CCallsign &callsign) const override;
virtual bool isOnlineStation(const BlackMisc::Aviation::CCallsign &callsign) const override;
virtual BlackMisc::CStatusMessage connectToNetwork(const BlackMisc::Network::CServer &server, const QString &extraLiveryString, bool sendLivery, const QString &extraModelString, bool sendModelString, const BlackMisc::Aviation::CCallsign &partnerCallsign, BlackCore::INetwork::LoginMode mode) override;
virtual BlackMisc::CStatusMessage connectToNetwork(const BlackMisc::Network::CServer &server, const QString &extraLiveryString, bool sendLivery, const QString &extraModelString, bool sendModelString, const BlackMisc::Aviation::CCallsign &partnerCallsign, BlackMisc::Network::CLoginMode mode) override;
virtual BlackMisc::CStatusMessage disconnectFromNetwork() override;
virtual bool isConnected() const override;
virtual BlackMisc::Network::CServer getConnectedServer() const override;
virtual INetwork::LoginMode getLoginMode() const override;
virtual BlackMisc::Network::CLoginMode getLoginMode() const override;
virtual bool parseCommandLine(const QString &commandLine, const BlackMisc::CIdentifier &originator) override;
virtual void sendTextMessages(const BlackMisc::Network::CTextMessageList &textMessages) override;
virtual void sendFlightPlan(const BlackMisc::Aviation::CFlightPlan &flightPlan) override;

View File

@@ -30,8 +30,6 @@ namespace BlackCore
{
// not really clear when a type here has to be registered with qRegisterMetaType
// however, does not harm if it is redundant
qRegisterMetaType<INetwork::ConnectionStatus>();
qRegisterMetaType<INetwork::LoginMode>();
qRegisterMetaType<IVoiceChannel::ConnectionStatus>();
qRegisterMetaType<CWebReaderFlags::WebReader>();
qRegisterMetaType<CWebReaderFlags::WebReaderFlag>();
@@ -40,14 +38,14 @@ namespace BlackCore
qDBusRegisterMetaType<Context::CLogSubscriptionPair>();
qDBusRegisterMetaType<Context::CSettingsDictionary>();
qDBusRegisterMetaType<INetwork::ConnectionStatus>();
qDBusRegisterMetaType<INetwork::LoginMode>();
qDBusRegisterMetaType<BlackMisc::Network::CLoginMode>();
qDBusRegisterMetaType<IVoiceChannel::ConnectionStatus>();
qRegisterMetaTypeStreamOperators<Context::CLogSubscriptionHash>();
qRegisterMetaTypeStreamOperators<Context::CLogSubscriptionPair>();
qRegisterMetaTypeStreamOperators<Context::CSettingsDictionary>();
qRegisterMetaTypeStreamOperators<BlackMisc::Network::CLoginMode>();
qRegisterMetaTypeStreamOperators<INetwork::ConnectionStatus>();
qRegisterMetaTypeStreamOperators<INetwork::LoginMode>();
qRegisterMetaTypeStreamOperators<IVoiceChannel::ConnectionStatus>();
Db::CDatabaseReaderConfig::registerMetadata();