68 lines
1.4 KiB
Java
68 lines
1.4 KiB
Java
package f00f.net.irc.martyr.commands;
|
|
|
|
import f00f.net.irc.martyr.InCommand;
|
|
import f00f.net.irc.martyr.State;
|
|
|
|
|
|
/**
|
|
* Defines the PING command. At this point, PINGs only come in from
|
|
* the server, so all we need to do is capture the parameters.
|
|
*/
|
|
public class PingCommand extends AbstractCommand
|
|
{
|
|
|
|
private String pingSource;
|
|
|
|
/** Factory */
|
|
public PingCommand()
|
|
{
|
|
pingSource = null;
|
|
}
|
|
|
|
public PingCommand( String source )
|
|
{
|
|
pingSource = source;
|
|
}
|
|
|
|
public State getState()
|
|
{
|
|
return State.UNKNOWN;
|
|
}
|
|
|
|
/**
|
|
* Parses a string and produces a formed command object, if it can.
|
|
* Should return null if it cannot form the command object.
|
|
*/
|
|
public InCommand parse( String prefix, String identifier, String params )
|
|
{
|
|
String str = getParameter( params, 0 );
|
|
return new PingCommand( str );
|
|
}
|
|
|
|
/**
|
|
* Returns the string IRC uses to identify this command. Examples:
|
|
* NICK, PING, KILL, 332
|
|
*/
|
|
public String getIrcIdentifier()
|
|
{
|
|
return "PING";
|
|
}
|
|
|
|
/**
|
|
* Renders the parameters of this command.
|
|
*/
|
|
public String renderParams()
|
|
{
|
|
return ":" + pingSource;
|
|
}
|
|
|
|
// ===== Ping-specific methods =======================================
|
|
public String getPingSource()
|
|
{
|
|
return pingSource;
|
|
}
|
|
|
|
}
|
|
|
|
|