System.err.println("Unknown status");
continue;
}
controller.setRoomStatus(command.getArg(0), s);
} else if (command.getCommand() == CLICommand.Command.MESSAGE) {
controller.messageRoom(command.getArg(0), new Message(controller.getUserName(command.getArg(0)), command.getArg(1)));
} else if (command.getCommand() == CLICommand.Command.PVTMESSAGE) {
controller.messageRoom(command.getArg(1), new Message(controller.getUserName(command.getArg(1)), command.getArg(2), command.getArg(0)));
} else if (command.getCommand() == CLICommand.Command.ADDKEY) {
FileInputStream publicKeyFile = new FileInputStream(command.getArg(1));
byte publicKey[] = new byte[(int) publicKeyFile.available()];
publicKeyFile.read(publicKey);
FileInputStream privateKeyFile = new FileInputStream(command.getArg(2));
byte privateKey[] = new byte[(int) privateKeyFile.available()];
privateKeyFile.read(privateKey);
controller.addKeyPair(command.getArg(0), new Certificate("X.509", publicKey), new Certificate("X.509", privateKey));
} else if (command.getCommand() == CLICommand.Command.REMOVEKEY) {
FileInputStream publicKeyFile = new FileInputStream(command.getArg(1));
byte publicKey[] = new byte[(int) publicKeyFile.available()];
publicKeyFile.read(publicKey);
controller.removeKeyPair(command.getArg(0), new Certificate("X.509", publicKey));
} else if (command.getCommand() == CLICommand.Command.SECUREMESSAGE) {
FileInputStream publicKeyFile = new FileInputStream(command.getArg(0));
byte publicKey[] = new byte[(int) publicKeyFile.available()];
publicKeyFile.read(publicKey);
Certificate cert = new Certificate("X.509", publicKey);
controller.messageRoom(command.getArg(2), new Message(controller.getUserName(command.getArg(2)), command.getArg(3), command.getArg(1), cert));
}
} catch (RoomDoesNotExistException e) {
cli.alert(e.getMessage());
} catch (FileNotFoundException e) {
e.printStackTrace();