From ea192ddd6d5b538e0bd0f6f1721890eb3c25de30 Mon Sep 17 00:00:00 2001 From: snowleo Date: Wed, 12 Oct 2011 03:14:07 +0200 Subject: EssentialsUpdate WIP --- .../net/irc/martyr/replies/AbstractWhoisReply.java | 58 ++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 EssentialsUpdate/src/f00f/net/irc/martyr/replies/AbstractWhoisReply.java (limited to 'EssentialsUpdate/src/f00f/net/irc/martyr/replies/AbstractWhoisReply.java') diff --git a/EssentialsUpdate/src/f00f/net/irc/martyr/replies/AbstractWhoisReply.java b/EssentialsUpdate/src/f00f/net/irc/martyr/replies/AbstractWhoisReply.java new file mode 100644 index 000000000..d52e59dcf --- /dev/null +++ b/EssentialsUpdate/src/f00f/net/irc/martyr/replies/AbstractWhoisReply.java @@ -0,0 +1,58 @@ +package f00f.net.irc.martyr.replies; + +import f00f.net.irc.martyr.util.ParameterIterator; + +public abstract class AbstractWhoisReply extends GenericReply +{ + //static Logger log = Logger.getLogger(AbstractWhoisReply.class); + + private String target = null; + + /** + * Factory constructor. + * */ + public AbstractWhoisReply() + { + } + + public AbstractWhoisReply( String params ) + { + ParameterIterator pi = getParams( params ); + parseParams( pi ); + } + + public abstract String getIrcIdentifier(); + + /** + * Parse the parameters, but the target param has already been + * stripped off. + * + * @param pi Parameter iterator that will parse the parameters + * */ + protected abstract void parseParams( ParameterIterator pi ); + + /** + * @return the target of the whois + * */ + public String getTarget() + { + return target; + } + + /** + * @param params the params string passed to "parse". + * @return a parameter iterator, with the whois target already + * stripped off. + * */ + protected ParameterIterator getParams( String params ) + { + ParameterIterator pi = new ParameterIterator(params); + pi.next(); // throw away our own nick + this.target = (String)pi.next(); + //log.debug("AbstractWhoisReply: Whois target: " + target); + + return pi; + } + +} + -- cgit v1.2.3