#include #include #include #include #include "StringCache.h" StringCacheService::StringCacheService(entt::dispatcher& aDispatcher) noexcept { m_connectedConnection = aDispatcher.sink().connect<&StringCacheService::HandleConnected>(this); m_disconnectedConnection = aDispatcher.sink().connect<&StringCacheService::HandleDisconnected>(this); m_stringCacheUpdateConnection = aDispatcher.sink().connect<&StringCacheService::HandleStringCacheUpdate>(this); } void StringCacheService::HandleConnected(const ConnectedEvent& acEvent) noexcept { // Can never be too careful StringCache::Get().Clear(); } void StringCacheService::HandleDisconnected(const DisconnectedEvent& acEvent) noexcept { StringCache::Get().Clear(); } void StringCacheService::HandleStringCacheUpdate(const StringCacheUpdate& acMessage) noexcept { StringCache::Get().Deserialize(acMessage); }