From 0b065e1e0547885294d03df54d178587d801a15a Mon Sep 17 00:00:00 2001 From: Vitaly Takmazov Date: Sat, 6 Oct 2018 23:02:14 +0300 Subject: store external reply uri --- juick-server/src/main/java/com/juick/server/ActivityPubManager.java | 6 +++++- .../src/main/java/com/juick/server/api/activity/Profile.java | 1 + 2 files changed, 6 insertions(+), 1 deletion(-) (limited to 'juick-server/src/main/java/com/juick/server') diff --git a/juick-server/src/main/java/com/juick/server/ActivityPubManager.java b/juick-server/src/main/java/com/juick/server/ActivityPubManager.java index 3d296d8f..4adfafea 100644 --- a/juick-server/src/main/java/com/juick/server/ActivityPubManager.java +++ b/juick-server/src/main/java/com/juick/server/ActivityPubManager.java @@ -183,7 +183,11 @@ public class ActivityPubManager implements ActivityListener, NotificationListene note.setUrl(PlainTextFormatter.formatUrl(msg)); note.setAttributedTo(personUri(msg.getUser())); if (MessageUtils.isReply(msg)) { - note.setInReplyTo(messageUri(msg.getMid(), msg.getReplyto())); + if (msg.getReplyUri().toASCIIString().length() > 0) { + note.setInReplyTo(msg.getReplyUri().toASCIIString()); + } else { + note.setInReplyTo(messageUri(msg.getMid(), msg.getReplyto())); + } } if (MessageUtils.isPM(msg)) { note.setTo(Collections.singletonList(personUri(msg.getTo()))); diff --git a/juick-server/src/main/java/com/juick/server/api/activity/Profile.java b/juick-server/src/main/java/com/juick/server/api/activity/Profile.java index b016afc9..261552d7 100644 --- a/juick-server/src/main/java/com/juick/server/api/activity/Profile.java +++ b/juick-server/src/main/java/com/juick/server/api/activity/Profile.java @@ -295,6 +295,7 @@ public class Profile { CommandResult result = commandsManager.processCommand(user, String.format("#%s %s", postId, note.get("content")), URI.create(attachment)); logger.info(jsonMapper.writeValueAsString(result)); if (result.getNewMessage().isPresent()) { + messagesService.updateReplyUri(result.getNewMessage().get(), URI.create((String)note.get("id"))); return new ResponseEntity<>(HttpStatus.OK); } else { return new ResponseEntity<>(HttpStatus.BAD_REQUEST); -- cgit v1.2.3