Cleanup listen and connect logic to prevent log spam

This commit is contained in:
puvvadar
2021-06-21 14:31:14 -07:00
parent 8f5681ffdb
commit 3a7df983d9
4 changed files with 27 additions and 13 deletions
@@ -116,17 +116,29 @@ namespace AzNetworking
m_port = port;
m_allowIncomingConnections = true;
m_socket->Open(m_port, UdpSocket::CanAcceptConnections::True, m_trustZone);
m_readerThread.RegisterSocket(m_socket.get());
return true;
if (m_socket->Open(m_port, UdpSocket::CanAcceptConnections::True, m_trustZone))
{
m_readerThread.RegisterSocket(m_socket.get());
return true;
}
else
{
return false;
}
}
ConnectionId UdpNetworkInterface::Connect(const IpAddress& remoteAddress)
{
if (!m_socket->IsOpen())
{
m_socket->Open(m_port, UdpSocket::CanAcceptConnections::False, m_trustZone);
m_readerThread.RegisterSocket(m_socket.get());
if (m_socket->Open(m_port, UdpSocket::CanAcceptConnections::False, m_trustZone))
{
m_readerThread.RegisterSocket(m_socket.get());
}
else
{
return InvalidConnectionId;
}
}
const ConnectionId connectionId = m_connectionSet.GetNextConnectionId();
@@ -69,12 +69,14 @@ namespace Multiplayer
//! Starts hosting a server
//! @param port The port to listen for connection on
//! @param isDedicated Whether the server is dedicated or client hosted
virtual void StartHosting(uint16_t port, bool isDedicated = true) = 0;
//! @return if the application successfully started hosting
virtual bool StartHosting(uint16_t port, bool isDedicated = true) = 0;
//! Connects to the specified IP as a Client
//! @param remoteAddress The domain or IP to connect to
//! @param port The port to connect to
virtual void Connect(AZStd::string remoteAddress, uint16_t port) = 0;
//! @result if a connection was successfully created
virtual bool Connect(AZStd::string remoteAddress, uint16_t port) = 0;
// Disconnects all multiplayer connections, stops listening on the server and invokes handlers appropriate to network context
virtual void Terminate() = 0;
@@ -201,17 +201,17 @@ namespace Multiplayer
AZ::TickBus::Handler::BusDisconnect();
}
void MultiplayerSystemComponent::StartHosting(uint16_t port, bool isDedicated)
bool MultiplayerSystemComponent::StartHosting(uint16_t port, bool isDedicated)
{
InitializeMultiplayer(isDedicated ? MultiplayerAgentType::DedicatedServer : MultiplayerAgentType::ClientServer);
m_networkInterface->Listen(port);
return m_networkInterface->Listen(port);
}
void MultiplayerSystemComponent::Connect(AZStd::string remoteAddress, uint16_t port)
bool MultiplayerSystemComponent::Connect(AZStd::string remoteAddress, uint16_t port)
{
InitializeMultiplayer(MultiplayerAgentType::Client);
const IpAddress address(remoteAddress.c_str(), port, m_networkInterface->GetType());
m_networkInterface->Connect(address);
return m_networkInterface->Connect(address) != InvalidConnectionId;
}
void MultiplayerSystemComponent::Terminate()
@@ -113,8 +113,8 @@ namespace Multiplayer
void AddConnectionAcquiredHandler(ConnectionAcquiredEvent::Handler& handler) override;
void AddSessionInitHandler(SessionInitEvent::Handler& handler) override;
void AddSessionShutdownHandler(SessionShutdownEvent::Handler& handler) override;
void StartHosting(uint16_t port, bool isDedicated = true) override;
void Connect(AZStd::string remoteAddress, uint16_t port) override;
bool StartHosting(uint16_t port, bool isDedicated = true) override;
bool Connect(AZStd::string remoteAddress, uint16_t port) override;
void Terminate() override;
void SendReadyForEntityUpdates(bool readyForEntityUpdates) override;
AZ::TimeMs GetCurrentHostTimeMs() const override;