X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Firc%2FReply.java;h=28add37b0b2cea9ea03310a8cb4a1deff9eac148;hb=c4867f883cce2d99972bb14dd5937c6348ff29f5;hp=417a7a153f44c66052a7b6edd49a94f348acc85b;hpb=74e56181fe0578d1371401d718af93131b87b9bc;p=xudocci.git diff --git a/src/main/java/net/pterodactylus/irc/Reply.java b/src/main/java/net/pterodactylus/irc/Reply.java index 417a7a1..28add37 100644 --- a/src/main/java/net/pterodactylus/irc/Reply.java +++ b/src/main/java/net/pterodactylus/irc/Reply.java @@ -32,7 +32,7 @@ import com.google.common.base.Optional; public class Reply { /** The source of the reply. */ - private final Optional source; + private final Optional source; /** The command of the reply (may be numeric). */ private final String command; @@ -50,7 +50,7 @@ public class Reply { * @param parameters * The parameters of the reply */ - private Reply(Optional source, String command, List parameters) { + private Reply(Optional source, String command, List parameters) { this.source = source; this.command = command; this.parameters = parameters; @@ -65,7 +65,7 @@ public class Reply { * * @return The source of the reply, or {@link Optional#absent()} */ - public Optional source() { + public Optional source() { return source; } @@ -88,6 +88,28 @@ public class Reply { } // + // OBJECT METHODS + // + + @Override + public String toString() { + StringBuilder string = new StringBuilder(); + if (source.isPresent()) { + string.append(':').append(source.get()).append(' '); + } + string.append(command); + for (int parameterIndex = 0; parameterIndex < parameters.size(); ++parameterIndex) { + string.append(' '); + String parameter = parameters.get(parameterIndex); + if (parameterIndex == (parameters.size() - 1) && parameter.contains(" ")) { + string.append(':'); + } + string.append(parameter); + } + return string.toString(); + } + + // // STATIC METHODS // @@ -102,9 +124,9 @@ public class Reply { String remainingLine = line; /* parse source. */ - Optional source = Optional.absent(); + Optional source = Optional.absent(); if (remainingLine.startsWith(":")) { - source = Optional.of(getFirstWord(remainingLine).substring(1)); + source = Optional.of(Source.parseSource(getFirstWord(remainingLine).substring(1))); remainingLine = removeFirstWord(remainingLine); }