summaryrefslogtreecommitdiffstats
path: root/EssentialsUpdate/src/f00f/net/irc/martyr/commands/PingCommand.java
diff options
context:
space:
mode:
Diffstat (limited to 'EssentialsUpdate/src/f00f/net/irc/martyr/commands/PingCommand.java')
-rw-r--r--EssentialsUpdate/src/f00f/net/irc/martyr/commands/PingCommand.java67
1 files changed, 67 insertions, 0 deletions
diff --git a/EssentialsUpdate/src/f00f/net/irc/martyr/commands/PingCommand.java b/EssentialsUpdate/src/f00f/net/irc/martyr/commands/PingCommand.java
new file mode 100644
index 000000000..01c68cb90
--- /dev/null
+++ b/EssentialsUpdate/src/f00f/net/irc/martyr/commands/PingCommand.java
@@ -0,0 +1,67 @@
+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;
+ }
+
+}
+
+