diff --git a/src/main/java/de/ph87/kleinanzeigen/telegram/chat/message/Message.java b/src/main/java/de/ph87/kleinanzeigen/telegram/chat/message/Message.java index 25db44e..b05ef02 100644 --- a/src/main/java/de/ph87/kleinanzeigen/telegram/chat/message/Message.java +++ b/src/main/java/de/ph87/kleinanzeigen/telegram/chat/message/Message.java @@ -6,8 +6,6 @@ import jakarta.annotation.Nullable; import jakarta.persistence.*; import lombok.*; -import java.time.ZonedDateTime; - @Entity @Getter @ToString @@ -31,14 +29,11 @@ public class Message { @Nullable private Integer telegramMessageId; - @NonNull - @Column(nullable = false) - private ZonedDateTime expiry = ZonedDateTime.now().plusDays(3); - @Setter @Column private boolean hide = false; + @Setter @Column private boolean remember = false; @@ -48,14 +43,4 @@ public class Message { this.telegramMessageId = tlgMessage.getMessageId(); } - public void setRemember(final boolean newRemember) { - if (remember && !newRemember) { - final ZonedDateTime oneHour = ZonedDateTime.now().plusHours(1); - if (oneHour.isAfter(expiry)) { - expiry = oneHour; - } - } - remember = newRemember; - } - } diff --git a/src/main/java/de/ph87/kleinanzeigen/telegram/chat/message/MessageDto.java b/src/main/java/de/ph87/kleinanzeigen/telegram/chat/message/MessageDto.java index 3c5f649..adf2b09 100644 --- a/src/main/java/de/ph87/kleinanzeigen/telegram/chat/message/MessageDto.java +++ b/src/main/java/de/ph87/kleinanzeigen/telegram/chat/message/MessageDto.java @@ -6,8 +6,6 @@ import jakarta.annotation.Nullable; import lombok.Data; import lombok.NonNull; -import java.time.ZonedDateTime; - @Data public class MessageDto { @@ -22,8 +20,6 @@ public class MessageDto { @Nullable private final Integer telegramMessageId; - private final ZonedDateTime expiry; - private final boolean hide; private final boolean remember; @@ -33,7 +29,6 @@ public class MessageDto { chat = chatDto; offer = offerDto; telegramMessageId = message.getTelegramMessageId(); - expiry = message.getExpiry(); hide = message.isHide(); remember = message.isRemember(); } diff --git a/src/main/java/de/ph87/kleinanzeigen/telegram/chat/message/MessageRepository.java b/src/main/java/de/ph87/kleinanzeigen/telegram/chat/message/MessageRepository.java index 22982fe..24dedc7 100644 --- a/src/main/java/de/ph87/kleinanzeigen/telegram/chat/message/MessageRepository.java +++ b/src/main/java/de/ph87/kleinanzeigen/telegram/chat/message/MessageRepository.java @@ -2,7 +2,6 @@ package de.ph87.kleinanzeigen.telegram.chat.message; import org.springframework.data.repository.ListCrudRepository; -import java.time.ZonedDateTime; import java.util.List; import java.util.Optional; @@ -12,6 +11,4 @@ public interface MessageRepository extends ListCrudRepository { List findAllByOffer_Id(long id); - List findAllByExpiryBefore(ZonedDateTime deadline); - } diff --git a/src/main/java/de/ph87/kleinanzeigen/telegram/chat/message/MessageService.java b/src/main/java/de/ph87/kleinanzeigen/telegram/chat/message/MessageService.java index 1ded0d4..ee3f230 100644 --- a/src/main/java/de/ph87/kleinanzeigen/telegram/chat/message/MessageService.java +++ b/src/main/java/de/ph87/kleinanzeigen/telegram/chat/message/MessageService.java @@ -2,25 +2,20 @@ package de.ph87.kleinanzeigen.telegram.chat.message; import de.ph87.kleinanzeigen.kleinanzeigen.offer.Offer; import de.ph87.kleinanzeigen.kleinanzeigen.offer.OfferDto; -import de.ph87.kleinanzeigen.kleinanzeigen.offer.OfferRepository; import de.ph87.kleinanzeigen.kleinanzeigen.offer.OfferService; import de.ph87.kleinanzeigen.telegram.chat.Chat; import de.ph87.kleinanzeigen.telegram.chat.ChatDto; import de.ph87.kleinanzeigen.telegram.chat.ChatService; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; -import org.springframework.context.ApplicationEventPublisher; import org.springframework.scheduling.annotation.EnableScheduling; -import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; import org.telegram.telegrambots.meta.api.objects.MaybeInaccessibleMessage; -import java.time.ZonedDateTime; import java.util.List; import java.util.Optional; -import java.util.concurrent.TimeUnit; @Slf4j @Service @@ -31,28 +26,10 @@ public class MessageService { private final MessageRepository messageRepository; - private final OfferRepository offerRepository; - private final OfferService offerService; private final ChatService chatService; - private final ApplicationEventPublisher publisher; - - @Scheduled(initialDelay = 1, fixedRate = 1, timeUnit = TimeUnit.HOURS) - public void cleanUp() { - for (final Message message : messageRepository.findAllByExpiryBefore(ZonedDateTime.now())) { - message.getOffer().getMessages().remove(message); - messageRepository.delete(message); - if (message.getOffer().getMessages().isEmpty()) { - offerRepository.delete(message.getOffer()); - } - if (message.getTelegramMessageId() != null) { - publisher.publishEvent(new MessageDeleted(message.getChat().getId(), message.getTelegramMessageId())); - } - } - } - @Transactional(propagation = Propagation.REQUIRES_NEW) public void create(final OfferDto offerDto, final ChatDto chatDto, final org.telegram.telegrambots.meta.api.objects.Message tlgMessage) { final Offer offer = offerService.getByDto(offerDto);