From c6972c05dcee19afb5725767f755a56f5162aee2 Mon Sep 17 00:00:00 2001 From: Vitaly Takmazov Date: Thu, 21 Oct 2021 22:52:14 +0300 Subject: Make popular feed equal to service user recommendations feed to have correct RSS feeds --- src/main/java/com/juick/TopManager.java | 26 ++++---------------------- 1 file changed, 4 insertions(+), 22 deletions(-) (limited to 'src/main/java/com/juick/TopManager.java') diff --git a/src/main/java/com/juick/TopManager.java b/src/main/java/com/juick/TopManager.java index ca3b3e84..c58af428 100644 --- a/src/main/java/com/juick/TopManager.java +++ b/src/main/java/com/juick/TopManager.java @@ -20,19 +20,12 @@ package com.juick; import com.juick.model.Message; import com.juick.model.Tag; import com.juick.model.User; -import com.juick.www.api.SystemActivity; import com.juick.service.MessagesService; -import com.juick.service.UserService; -import com.juick.service.component.SystemEvent; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.context.ApplicationEventPublisher; import org.springframework.scheduling.annotation.Scheduled; -import javax.annotation.PostConstruct; import javax.inject.Inject; -import java.util.Collections; import java.util.List; import java.util.stream.Collectors; @@ -41,30 +34,19 @@ public class TopManager { @Inject private MessagesService messagesService; @Inject - private UserService userService; - @Inject - private ApplicationEventPublisher applicationEventPublisher; - - @Value("${service_user:juick}") - private String serviceUsername; + private CommandsManager commandsManager; + @Inject private User serviceUser; - @PostConstruct - public void init() { - serviceUser = userService.getUserByName(serviceUsername); - } - @Scheduled(fixedRate = 3600000) public void updateTop() { messagesService.getPopularCandidates().forEach(m -> { Message jmsg = messagesService.getMessage(m).orElseThrow(IllegalStateException::new); - logger.info("added {} to popular", m); - messagesService.setMessagePopular(m, 1); List tags = jmsg.getTags().stream().map(Tag::getName).map(String::toLowerCase).collect(Collectors.toList()); if (!tags.contains("juick")) { - applicationEventPublisher.publishEvent(new SystemEvent(this, - SystemActivity.like(serviceUser, jmsg, Collections.emptyList()))); + logger.info("added {} to popular", m); + commandsManager.commandRecommend(serviceUser, null, String.valueOf(m)); } }); } -- cgit v1.2.3