aboutsummaryrefslogtreecommitdiff
path: root/juick-core/src/main/java/com/juick/server/protocol/JuickProtocol.java
diff options
context:
space:
mode:
Diffstat (limited to 'juick-core/src/main/java/com/juick/server/protocol/JuickProtocol.java')
-rw-r--r--juick-core/src/main/java/com/juick/server/protocol/JuickProtocol.java12
1 files changed, 6 insertions, 6 deletions
diff --git a/juick-core/src/main/java/com/juick/server/protocol/JuickProtocol.java b/juick-core/src/main/java/com/juick/server/protocol/JuickProtocol.java
index f7056cd4..024179a7 100644
--- a/juick-core/src/main/java/com/juick/server/protocol/JuickProtocol.java
+++ b/juick-core/src/main/java/com/juick/server/protocol/JuickProtocol.java
@@ -1,6 +1,7 @@
package com.juick.server.protocol;
import com.juick.*;
+import com.juick.formatters.PlainTextFormatter;
import com.juick.json.MessageSerializer;
import com.juick.server.*;
import com.juick.server.protocol.annotation.UserCommand;
@@ -39,7 +40,7 @@ public class JuickProtocol {
*/
public ProtocolReply getReply(User user, String userInput) throws InvocationTargetException,
IllegalAccessException, NoSuchMethodException {
- Optional<Method> cmd = Arrays.asList(getClass().getDeclaredMethods()).stream()
+ Optional<Method> cmd = Arrays.stream(getClass().getDeclaredMethods())
.filter(m -> m.isAnnotationPresent(UserCommand.class))
.filter(m -> Pattern.compile(m.getAnnotation(UserCommand.class).pattern(),
m.getAnnotation(UserCommand.class).patternFlags()).matcher(userInput).matches())
@@ -74,11 +75,10 @@ public class JuickProtocol {
@UserCommand(pattern = "^#(\\++)$", help = "#+ - Show last Juick messages (#++ - second page, ...)")
public ProtocolReply commandLast(User user, String... arguments) {
// number of + is the page count
- int page = arguments[0].length();
+ int page = arguments[0].length() - 1;
List<Integer> mids = MessagesQueries.getAll(sql, user.getUID(), page);
List<Message> messages = MessagesQueries.getMessages(sql, mids);
- // TODO: message toString
- return new ProtocolReply("Last messages: \n" + String.join("\n", messages.stream().map(Object::toString)
+ return new ProtocolReply("Last messages: \n" + String.join("\n", messages.stream().map(PlainTextFormatter::formatPost)
.collect(Collectors.toList())), Optional.of(json.serializeList(messages)));
}
@@ -158,7 +158,7 @@ public class JuickProtocol {
List<Message> messages = MessagesQueries.getMessages(sql, mids);
// TODO: add instructions for empty feed
return new ProtocolReply("Your feed: \n" + String.join("\n",
- messages.stream().map(Object::toString).collect(Collectors.toList())),
+ messages.stream().map(PlainTextFormatter::formatPost).collect(Collectors.toList())),
Optional.of(json.serializeList(messages)));
}
@@ -267,7 +267,7 @@ public class JuickProtocol {
List<Message> replies = MessagesQueries.getReplies(sql, mid);
replies.add(0, msg);
return new ProtocolReply(String.join("\n",
- replies.stream().map(Object::toString).collect(Collectors.toList())),
+ replies.stream().map(PlainTextFormatter::formatPost).collect(Collectors.toList())),
Optional.of(json.serializeList(replies)));
}
return new ProtocolReply(msg.toString(), Optional.of(json.serializeList(Collections.singletonList(msg))));