diff options
Diffstat (limited to 'EssentialsUpdate/src/f00f/net/irc/martyr/errors/UnknownError.java')
-rw-r--r-- | EssentialsUpdate/src/f00f/net/irc/martyr/errors/UnknownError.java | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/EssentialsUpdate/src/f00f/net/irc/martyr/errors/UnknownError.java b/EssentialsUpdate/src/f00f/net/irc/martyr/errors/UnknownError.java new file mode 100644 index 000000000..225361294 --- /dev/null +++ b/EssentialsUpdate/src/f00f/net/irc/martyr/errors/UnknownError.java @@ -0,0 +1,69 @@ +package f00f.net.irc.martyr.errors; + +import f00f.net.irc.martyr.InCommand; +import f00f.net.irc.martyr.State; +import f00f.net.irc.martyr.commands.UnknownCommand; + + +/** + * Some unknown command, for which there is no factory. This is a + * special case command, created by IRCConnection if it can't find a + * proper command object. + */ +public class UnknownError extends UnknownCommand +{ + + private String errorStr; + private int errorCode; + + public UnknownError( String ident ) + { + errorStr = ident; + errorCode = Integer.parseInt( ident ); + } + + public int getErrorCode() + { + return errorCode; + } + + public String getError() + { + return errorStr; + } + + public static boolean isError( String ident ) + { + char c = ident.charAt(0); + return ( c == '4' || c == '5' ); + } + + public State getState() + { + return State.UNKNOWN; + } + + /** + * Never parsed. + */ + public InCommand parse( String prefix, String identifier, String params ) + { + throw new UnsupportedOperationException("UnknownError does no parsing."); + } + + /** + * Unknown, so we don't know what the identifier is ahead of time. + */ + public String getIrcIdentifier() + { + return errorStr; + } + + public String toString() + { + return "UnknownError[" + errorStr + "]"; + } + +} + + |