Proper reply on XDAEMON GROUPADD if group already existing (#551).
1.1 --- a/org/sonews/daemon/command/XDaemonCommand.java Wed Aug 26 10:47:51 2009 +0200
1.2 +++ b/org/sonews/daemon/command/XDaemonCommand.java Wed Aug 26 10:55:59 2009 +0200
1.3 @@ -66,6 +66,21 @@
1.4 return false;
1.5 }
1.6
1.7 + private void channelAdd(String[] commands, NNTPConnection conn)
1.8 + throws IOException, StorageBackendException
1.9 + {
1.10 + String groupName = commands[2];
1.11 + if(StorageManager.current().isGroupExisting(groupName))
1.12 + {
1.13 + conn.println("400 group " + groupName + " already existing!");
1.14 + }
1.15 + else
1.16 + {
1.17 + StorageManager.current().addGroup(groupName, Integer.parseInt(commands[3]));
1.18 + conn.println("200 group " + groupName + " created");
1.19 + }
1.20 + }
1.21 +
1.22 // TODO: Refactor this method to reduce complexity!
1.23 @Override
1.24 public void processLine(NNTPConnection conn, String line, byte[] raw)
1.25 @@ -119,8 +134,7 @@
1.26 }
1.27 else if(commands.length == 4 && commands[1].equalsIgnoreCase("GROUPADD"))
1.28 {
1.29 - StorageManager.current().addGroup(commands[2], Integer.parseInt(commands[3]));
1.30 - conn.println("200 group " + commands[2] + " created");
1.31 + channelAdd(commands, conn);
1.32 }
1.33 else if(commands.length == 3 && commands[1].equalsIgnoreCase("GROUPDEL"))
1.34 {