aboutsummaryrefslogtreecommitdiff
path: root/juick-core/src/main/java/com/juick/formatters
diff options
context:
space:
mode:
authorGravatar Vitaly Takmazov2016-10-12 15:15:24 +0300
committerGravatar Vitaly Takmazov2016-10-12 15:15:24 +0300
commit688eefb6db3ddeb9da583d5e1109e4639cf4e642 (patch)
treef3d4604f48ab173d8cb7a7ab101cce525ef2eb26 /juick-core/src/main/java/com/juick/formatters
parent708f22dafcb361c34fd28e468f6d69509c2802ef (diff)
refactor message formatting
Diffstat (limited to 'juick-core/src/main/java/com/juick/formatters')
-rw-r--r--juick-core/src/main/java/com/juick/formatters/PlainTextFormatter.java38
1 files changed, 38 insertions, 0 deletions
diff --git a/juick-core/src/main/java/com/juick/formatters/PlainTextFormatter.java b/juick-core/src/main/java/com/juick/formatters/PlainTextFormatter.java
new file mode 100644
index 00000000..37b0c6d3
--- /dev/null
+++ b/juick-core/src/main/java/com/juick/formatters/PlainTextFormatter.java
@@ -0,0 +1,38 @@
+package com.juick.formatters;
+
+import com.juick.Message;
+
+/**
+ * Created by vitalyster on 12.10.2016.
+ */
+public class PlainTextFormatter {
+ public static String formatPost(com.juick.Message jmsg) {
+ StringBuilder sb = new StringBuilder();
+ boolean isReply = jmsg.getRID() > 0;
+ String title = isReply ? "Reply by @" : "@";
+ String subtitle = isReply ? getReplyQuote(jmsg) : jmsg.getTagsString();
+ sb.append(title).append(jmsg.getUser().getUName()).append(":\n")
+ .append(subtitle).append("\n").append(jmsg.getText()).append("\n");
+ if (jmsg.Photo != null) {
+ sb.append(jmsg.Photo);
+ }
+ return sb.toString();
+ }
+
+ public static String formatUrl(com.juick.Message jmsg) {
+ if (jmsg.getRID() > 0) {
+ return String.format("https://juick.com/%d#%d", jmsg.getMID(), jmsg.getRID());
+ }
+ return "https://juick.com/" + jmsg.getMID();
+ }
+
+ private static String getReplyQuote(Message msg) {
+ String quote = msg.getText();
+ if (quote.length() > 50) {
+ quote = ">" + quote.substring(0, 47).replace('\n', ' ') + "...\n";
+ } else if (quote.length() > 0) {
+ quote = ">" + quote.replace('\n', ' ') + "\n";
+ }
+ return quote;
+ }
+}