Class RedditPostSenderStrategiesConfiguration

java.lang.Object
io.github.yvasyliev.forwarder.telegram.reddit.configuration.RedditPostSenderStrategiesConfiguration

@Configuration public class RedditPostSenderStrategiesConfiguration extends Object
Configuration class for Reddit post sender strategies.
  • Constructor Details

    • RedditPostSenderStrategiesConfiguration

      public RedditPostSenderStrategiesConfiguration()
  • Method Details

    • redditGalleryDataSender

      @Bean @ConditionalOnMissingBean(name="redditGalleryDataSender") public RedditPostSenderStrategy redditGalleryDataSender(TelegramMediaProperties mediaProperties, RedditSendMediaGroupDTOMapper sendMediaGroupDTOMapper, PostSender<CloseableSupplier<SendMediaGroupDTO>, List<org.telegram.telegrambots.meta.api.objects.message.Message>> mediaGroupSender, RedditMediaMetadataSender redditAnimationMetadataSender, RedditMediaMetadataSender redditPhotoMetadataSender)
      Bean for sending Reddit gallery data.
      Parameters:
      mediaProperties - Telegram media properties
      sendMediaGroupDTOMapper - Mapper for sending media group DTOs
      mediaGroupSender - Post sender for media groups
      redditAnimationMetadataSender - Reddit media metadata sender for animations
      redditPhotoMetadataSender - Reddit media metadata sender for photos
      Returns:
      Reddit post sender strategy for gallery data
    • redditHostedVideoSender

      @Bean @ConditionalOnMissingBean(name="redditHostedVideoSender") public RedditPostSenderStrategy redditHostedVideoSender(RedditSendVideoDTOMapper sendVideoDTOMapper, PostSender<CloseableSupplier<SendVideoDTO>, org.telegram.telegrambots.meta.api.objects.message.Message> videoSender)
      Bean for sending Reddit hosted videos.
      Parameters:
      sendVideoDTOMapper - Mapper for sending video DTOs
      videoSender - Post sender for videos
      Returns:
      Reddit post sender strategy for hosted videos
    • redditImageSenderManager

      @Bean @ConditionalOnMissingBean(name="redditImageSenderManager") public RedditPostSenderStrategy redditImageSenderManager(RedditPostSender redditAnimationSender, RedditPostSender redditPhotoSender)
      Bean for sending Reddit images.
      Parameters:
      redditAnimationSender - Reddit post sender for animations
      redditPhotoSender - Reddit post sender for photos
      Returns:
      Reddit post sender strategy for images
    • redditRichVideoSenderManager

      @Bean @ConditionalOnMissingBean(name="redditRichVideoSenderManager") public RedditPostSenderStrategy redditRichVideoSenderManager(RedditPostSender redditAnimationSender, RedditPostSender redditUrlSender)
      Bean for sending Reddit rich videos.
      Parameters:
      redditAnimationSender - Reddit post sender for animations
      redditUrlSender - Reddit post sender for URLs
      Returns:
      Reddit post sender strategy for rich videos