aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/com/juick/service/activities
diff options
context:
space:
mode:
authorGravatar Vitaly Takmazov2021-08-23 15:04:09 +0300
committerGravatar Vitaly Takmazov2021-08-23 15:04:09 +0300
commita44510ff17ac6e099ceed9401a62d6d66366c73d (patch)
treee69576a1f74d43c9b778d66d0aa357316087a8f0 /src/main/java/com/juick/service/activities
parentf7ebc8831b032196e6695fa22647717a7bf2b55c (diff)
ActivityPub: send Update event on user profile updates
Diffstat (limited to 'src/main/java/com/juick/service/activities')
-rw-r--r--src/main/java/com/juick/service/activities/ActivityListener.java3
-rw-r--r--src/main/java/com/juick/service/activities/UpdateUserEvent.java40
2 files changed, 43 insertions, 0 deletions
diff --git a/src/main/java/com/juick/service/activities/ActivityListener.java b/src/main/java/com/juick/service/activities/ActivityListener.java
index d3ce1eaf..3dcd123c 100644
--- a/src/main/java/com/juick/service/activities/ActivityListener.java
+++ b/src/main/java/com/juick/service/activities/ActivityListener.java
@@ -42,4 +42,7 @@ public interface ActivityListener {
@Async
@EventListener
void processUpdateEvent(UpdateEvent event);
+ @Async
+ @EventListener
+ void processUpdateUserEvent(UpdateUserEvent event);
}
diff --git a/src/main/java/com/juick/service/activities/UpdateUserEvent.java b/src/main/java/com/juick/service/activities/UpdateUserEvent.java
new file mode 100644
index 00000000..5294ea64
--- /dev/null
+++ b/src/main/java/com/juick/service/activities/UpdateUserEvent.java
@@ -0,0 +1,40 @@
+/*
+ * Copyright (C) 2008-2021, Juick
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+package com.juick.service.activities;
+
+import com.juick.model.User;
+import org.springframework.context.ApplicationEvent;
+
+public class UpdateUserEvent extends ApplicationEvent {
+ private final User actor;
+ /**
+ * Create a new {@code ApplicationEvent}.
+ *
+ * @param source the object on which the event initially occurred or with
+ * which the event is associated (never {@code null})
+ * @param actor the event author
+ */
+ public UpdateUserEvent(Object source, User actor) {
+ super(source);
+ this.actor = actor;
+ }
+
+ public User getUser() {
+ return actor;
+ }
+}