public void HandleAdminMessage(ByteArray messageData) { using (MessageReader mr = new MessageReader(messageData.data)) { AdminMessageType messageType = (AdminMessageType)mr.Read<int>(); switch (messageType) { case AdminMessageType.LIST: { string[] adminNames = mr.Read<string[]>(); foreach (string adminName in adminNames) { RegisterServerAdmin(adminName); } } break; case AdminMessageType.ADD: { string adminName = mr.Read<string>(); RegisterServerAdmin(adminName); } break; case AdminMessageType.REMOVE: { string adminName = mr.Read<string>(); UnregisterServerAdmin(adminName); } break; default: break; } } }
/// <summary> /// Is called when an admin message is received from the exchange. /// </summary> /// <param name="messageType">Type of the message.</param> /// <param name="message">The message.</param> public void OnAdminMessageReceived(AdminMessageType adminMessageType, string message) { switch (adminMessageType) { case AdminMessageType.ConnectionEstablished: ChangeCommunicationState(CommunicationState.Opened); break; case AdminMessageType.Disconnected: ChangeCommunicationState(CommunicationState.Closed); AttemptReconnect(); break; case AdminMessageType.Ping: _Log.Debug("Ping received"); break; } }
public GenericAdminMessage(AdminMessageType type) => MessageType = type;