package org.ninjadev.multivim.server.net; import org.ninjadev.multivim.Message; import org.ninjadev.multivim.User; import org.ninjadev.multivim.commandparser.CommandArguments; import org.ninjadev.multivim.commandparser.NormalVisualCommandTable; import org.ninjadev.multivim.commandparser.OperatorArguments; import org.ninjadev.multivim.commandparser.normalvisualcommands.NormalVisualCommand; import org.ninjadev.multivim.server.Server; import com.googlecode.lanterna.input.Key; public class MessageHandler { Server server; public MessageHandler(Server server){ this.server = server; } public void processMessage(User user, Message message) throws Exception { switch(message.command){ case "disconnect": disconnect(user, message.payload); break; case "sendCommand": sendCommand(user, message.payload); break; default:break; } } private void disconnect(User user, Object payload) { } private void sendCommand(User user, Object payload) throws Exception { Key command = (Key)payload; user.processCommand(command); SendMessage.sendCommand(server.users, user.getUserId(), command); } }