1
0
mirror of https://github.com/moparisthebest/Yaaic synced 2024-11-26 02:42:16 -05:00

Implemented command: /topic <topic>

This commit is contained in:
Sebastian Kaspari 2010-03-09 23:26:56 +01:00
parent 2b2500ee38
commit c5dc8115d2
2 changed files with 60 additions and 0 deletions

View File

@ -54,6 +54,7 @@ public class CommandParser
commands.put("me", new MeCommand()); commands.put("me", new MeCommand());
commands.put("names", new NamesCommand()); commands.put("names", new NamesCommand());
commands.put("echo", new EchoCommand()); commands.put("echo", new EchoCommand());
commands.put("topic", new TopicCommand());
} }
/** /**

View File

@ -0,0 +1,59 @@
/*
Yaaic - Yet Another Android IRC Client
Copyright 2009 Sebastian Kaspari
This file is part of Yaaic.
Yaaic is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
Yaaic is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with Yaaic. If not, see <http://www.gnu.org/licenses/>.
*/
package org.yaaic.command;
import org.yaaic.irc.IRCService;
import org.yaaic.model.Channel;
import org.yaaic.model.Server;
/**
* Command: /topic [<topic>]
*
* Show the current topic or change the topic if a new topic is provided
*
* @author Sebastian Kaspari <sebastian@yaaic.org>
*/
public class TopicCommand extends BaseCommand
{
/**
* Execute /topic
*/
@Override
public void execute(String[] params, Server server, Channel channel, IRCService service)
{
if (params.length == 1) {
// Show topic
// XXX: PircBot doesn't save the channel's topic - we have to keep track of the topic in the channel class
} else if (params.length > 1) {
// Change topic
service.getConnection(server.getId()).setTopic(channel.getName(), BaseCommand.mergeParams(params));
}
}
/**
* Usage of /topic
*/
@Override
public String getUsage()
{
return "/topic [<topic>]";
}
}