/// <summary> /// Routes server message to corresponding Wave Explorer service (if there is one). /// </summary> public static void RouteServerMessage(WaveMessage msg) { if (msg != null) { WaveServerComponent destination = (WaveServerComponent)msg.ApplicationID; Enum msgID = TransportBase.ConvertWaveMessageID(destination, msg.MessageID); DebugHelper.Trace("In: {0} -> {1}", destination, msgID); switch (destination) { case WaveServerComponent.NavigationAgent: Navigation.OnMessageReceived(destination, msgID, msg); break; case WaveServerComponent.DefinitionsAgent: Definitions.OnMessageReceived(destination, msgID, msg); break; case WaveServerComponent.CacheAgent: Cache.OnMessageReceived(destination, msgID, msg); break; case WaveServerComponent.UserManager: Authentication.OnMessageReceived(destination, msgID, msg); break; case WaveServerComponent.AggregatedMessageAgent: Network.OnMessageReceived(destination, msgID, msg); break; case WaveServerComponent.MediaAgent: Downloads.OnMessageReceived(destination, msgID, msg); break; default: DebugHelper.Out("Message for unsupported or unknown RTDS component {0} was discarded.", destination); break; } } }