Skip to content

Commit

Permalink
Add static methods to install
Browse files Browse the repository at this point in the history
  • Loading branch information
Greg Holmes committed Jan 1, 2015
1 parent e69f72c commit ae832d1
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 1 deletion.
14 changes: 13 additions & 1 deletion irc/src/com/dmdirc/parser/irc/SimpleNickInUseHandler.java
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,17 @@
*/
public class SimpleNickInUseHandler implements NickInUseListener {

@SuppressWarnings("TypeMayBeWeakened")
public static void install(final IRCParser parser, final String altNickname) {
install(parser, altNickname, '_');
}

@SuppressWarnings("TypeMayBeWeakened")
public static void install(final IRCParser parser, final String altNickname, final char prependChar) {
parser.getCallbackManager()
.addCallback(NickInUseListener.class, new SimpleNickInUseHandler(altNickname, prependChar));
}

private final String altNickname;
private final char prependChar;
private boolean triedAlt;
Expand All @@ -53,7 +64,8 @@ public void onNickInUse(final Parser parser, final Date date, final String nickn
// nick as-is
if (triedAlt) {
final String magicAltNick = prependChar + ircParser.getMyInfo().getNickname();
if (parser.getStringConverter().equalsIgnoreCase(ircParser.thinkNickname, altNickname)
if (parser.getStringConverter().equalsIgnoreCase(ircParser.thinkNickname,
altNickname)
&& !altNickname.equalsIgnoreCase(magicAltNick)) {
ircParser.thinkNickname = ircParser.getMyInfo().getNickname();
}
Expand Down
6 changes: 6 additions & 0 deletions irc/src/com/dmdirc/parser/irc/SimplePingFailureHandler.java
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,12 @@
*/
public class SimplePingFailureHandler implements PingFailureListener {

@SuppressWarnings("TypeMayBeWeakened")
public static void install(final IRCParser parser) {
parser.getCallbackManager()
.addCallback(PingFailureListener.class, new SimplePingFailureHandler());
}

@Override
public void onPingFailed(final Parser parser, final Date date) {
final IRCParser ircParser = (IRCParser) parser;
Expand Down

0 comments on commit ae832d1

Please sign in to comment.