mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-20 20:40:29 +08:00
Ref T301, make login mode via contexts available
This commit is contained in:
@@ -235,6 +235,9 @@ namespace BlackCore
|
|||||||
//! Server which is connected, if not connected empty default object.
|
//! Server which is connected, if not connected empty default object.
|
||||||
virtual BlackMisc::Network::CServer getConnectedServer() const = 0;
|
virtual BlackMisc::Network::CServer getConnectedServer() const = 0;
|
||||||
|
|
||||||
|
//! Login mode
|
||||||
|
virtual INetwork::LoginMode getLoginMode() const = 0;
|
||||||
|
|
||||||
//! Disconnect from network
|
//! Disconnect from network
|
||||||
//! \return messages generated during disconnecting
|
//! \return messages generated during disconnecting
|
||||||
virtual BlackMisc::CStatusMessage disconnectFromNetwork() = 0;
|
virtual BlackMisc::CStatusMessage disconnectFromNetwork() = 0;
|
||||||
|
|||||||
@@ -125,6 +125,13 @@ namespace BlackCore
|
|||||||
return BlackMisc::Network::CServer();
|
return BlackMisc::Network::CServer();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//! \copydoc IContextNetwork::getLoginMode
|
||||||
|
virtual INetwork::LoginMode getLoginMode() const override
|
||||||
|
{
|
||||||
|
logEmptyContextWarning(Q_FUNC_INFO);
|
||||||
|
return BlackCore::INetwork::LoginNormal;
|
||||||
|
}
|
||||||
|
|
||||||
//! \copydoc IContextNetwork::sendTextMessages()
|
//! \copydoc IContextNetwork::sendTextMessages()
|
||||||
virtual void sendTextMessages(const BlackMisc::Network::CTextMessageList &textMessages) override
|
virtual void sendTextMessages(const BlackMisc::Network::CTextMessageList &textMessages) override
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -216,6 +216,7 @@ namespace BlackCore
|
|||||||
mode = INetwork::LoginAsObserver;
|
mode = INetwork::LoginAsObserver;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
m_currentMode = mode;
|
||||||
m_network->presetLoginMode(mode);
|
m_network->presetLoginMode(mode);
|
||||||
m_network->presetCallsign(ownAircraft.getCallsign());
|
m_network->presetCallsign(ownAircraft.getCallsign());
|
||||||
m_network->presetIcaoCodes(ownAircraft);
|
m_network->presetIcaoCodes(ownAircraft);
|
||||||
@@ -231,12 +232,19 @@ namespace BlackCore
|
|||||||
return this->isConnected() ? m_network->getPresetServer() : CServer();
|
return this->isConnected() ? m_network->getPresetServer() : CServer();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
INetwork::LoginMode CContextNetwork::getLoginMode() const
|
||||||
|
{
|
||||||
|
if (this->isDebugEnabled()) { CLogMessage(this, CLogCategory::contextSlot()).debug() << Q_FUNC_INFO; }
|
||||||
|
return m_currentMode;
|
||||||
|
}
|
||||||
|
|
||||||
CStatusMessage CContextNetwork::disconnectFromNetwork()
|
CStatusMessage CContextNetwork::disconnectFromNetwork()
|
||||||
{
|
{
|
||||||
if (this->isDebugEnabled()) { CLogMessage(this, CLogCategory::contextSlot()).debug() << Q_FUNC_INFO; }
|
if (this->isDebugEnabled()) { CLogMessage(this, CLogCategory::contextSlot()).debug() << Q_FUNC_INFO; }
|
||||||
if (m_network->isConnected() || m_network->isPendingConnection())
|
if (m_network->isConnected() || m_network->isPendingConnection())
|
||||||
{
|
{
|
||||||
m_currentStatus = INetwork::Disconnecting; // as semaphore we are going to disconnect
|
m_currentStatus = INetwork::Disconnecting; // as semaphore we are going to disconnect
|
||||||
|
m_currentMode = INetwork::LoginNormal;
|
||||||
m_network->terminateConnection();
|
m_network->terminateConnection();
|
||||||
return CStatusMessage({ CLogCategory::validation() }, CStatusMessage::SeverityInfo, "Connection terminating");
|
return CStatusMessage({ CLogCategory::validation() }, CStatusMessage::SeverityInfo, "Connection terminating");
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -87,7 +87,7 @@ namespace BlackCore
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
//! Destructor
|
//! Destructor
|
||||||
virtual ~CContextNetwork();
|
virtual ~CContextNetwork() override;
|
||||||
|
|
||||||
//! \ingroup remoteaircraftprovider
|
//! \ingroup remoteaircraftprovider
|
||||||
//! @{
|
//! @{
|
||||||
@@ -226,6 +226,7 @@ namespace BlackCore
|
|||||||
virtual BlackMisc::Aviation::CAtcStation getOnlineStationForCallsign(const BlackMisc::Aviation::CCallsign &callsign) const override;
|
virtual BlackMisc::Aviation::CAtcStation getOnlineStationForCallsign(const BlackMisc::Aviation::CCallsign &callsign) const override;
|
||||||
virtual BlackMisc::CStatusMessage connectToNetwork(const BlackMisc::Network::CServer &server, BlackCore::INetwork::LoginMode mode) override;
|
virtual BlackMisc::CStatusMessage connectToNetwork(const BlackMisc::Network::CServer &server, BlackCore::INetwork::LoginMode mode) override;
|
||||||
virtual BlackMisc::Network::CServer getConnectedServer() const override;
|
virtual BlackMisc::Network::CServer getConnectedServer() const override;
|
||||||
|
virtual INetwork::LoginMode getLoginMode() const override;
|
||||||
virtual BlackMisc::CStatusMessage disconnectFromNetwork() override;
|
virtual BlackMisc::CStatusMessage disconnectFromNetwork() override;
|
||||||
virtual bool isConnected() const override;
|
virtual bool isConnected() const override;
|
||||||
virtual void sendTextMessages(const BlackMisc::Network::CTextMessageList &textMessages) override;
|
virtual void sendTextMessages(const BlackMisc::Network::CTextMessageList &textMessages) override;
|
||||||
@@ -265,6 +266,7 @@ namespace BlackCore
|
|||||||
CAirspaceMonitor *m_airspace = nullptr;
|
CAirspaceMonitor *m_airspace = nullptr;
|
||||||
INetwork *m_network = nullptr;
|
INetwork *m_network = nullptr;
|
||||||
INetwork::ConnectionStatus m_currentStatus = INetwork::Disconnected; //!< used to detect pending connections
|
INetwork::ConnectionStatus m_currentStatus = INetwork::Disconnected; //!< used to detect pending connections
|
||||||
|
INetwork::LoginMode m_currentMode = INetwork::LoginNormal; //!< current modeM
|
||||||
QTimer *m_networkDataUpdateTimer = nullptr; //!< general updates such as ATIS, frequencies, see requestDataUpdates()
|
QTimer *m_networkDataUpdateTimer = nullptr; //!< general updates such as ATIS, frequencies, see requestDataUpdates()
|
||||||
|
|
||||||
// Digest signals, only sending after some time
|
// Digest signals, only sending after some time
|
||||||
|
|||||||
@@ -333,6 +333,11 @@ namespace BlackCore
|
|||||||
return m_dBusInterface->callDBusRet<BlackMisc::Network::CServer>(QLatin1String("getConnectedServer"));
|
return m_dBusInterface->callDBusRet<BlackMisc::Network::CServer>(QLatin1String("getConnectedServer"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
INetwork::LoginMode CContextNetworkProxy::getLoginMode() const
|
||||||
|
{
|
||||||
|
return m_dBusInterface->callDBusRet<BlackCore::INetwork::LoginMode>(QLatin1String("getLoginMode"));
|
||||||
|
}
|
||||||
|
|
||||||
bool CContextNetworkProxy::parseCommandLine(const QString &commandLine, const CIdentifier &originator)
|
bool CContextNetworkProxy::parseCommandLine(const QString &commandLine, const CIdentifier &originator)
|
||||||
{
|
{
|
||||||
return m_dBusInterface->callDBusRet<bool>(QLatin1String("parseCommandLine"), commandLine, originator);
|
return m_dBusInterface->callDBusRet<bool>(QLatin1String("parseCommandLine"), commandLine, originator);
|
||||||
|
|||||||
@@ -88,6 +88,7 @@ namespace BlackCore
|
|||||||
virtual BlackMisc::CStatusMessage disconnectFromNetwork() override;
|
virtual BlackMisc::CStatusMessage disconnectFromNetwork() override;
|
||||||
virtual bool isConnected() const override;
|
virtual bool isConnected() const override;
|
||||||
virtual BlackMisc::Network::CServer getConnectedServer() const override;
|
virtual BlackMisc::Network::CServer getConnectedServer() const override;
|
||||||
|
virtual INetwork::LoginMode getLoginMode() const override;
|
||||||
virtual bool parseCommandLine(const QString &commandLine, const BlackMisc::CIdentifier &originator) override;
|
virtual bool parseCommandLine(const QString &commandLine, const BlackMisc::CIdentifier &originator) override;
|
||||||
virtual void sendTextMessages(const BlackMisc::Network::CTextMessageList &textMessages) override;
|
virtual void sendTextMessages(const BlackMisc::Network::CTextMessageList &textMessages) override;
|
||||||
virtual void sendFlightPlan(const BlackMisc::Aviation::CFlightPlan &flightPlan) override;
|
virtual void sendFlightPlan(const BlackMisc::Aviation::CFlightPlan &flightPlan) override;
|
||||||
|
|||||||
Reference in New Issue
Block a user