package com.qianwen.core.notify.executor; import java.util.List; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.qianwen.core.context.task.TaskExecutionContext; import com.qianwen.core.context.task.TaskExecutorProvider; import com.qianwen.core.notify.NotifyQueueProducer; import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; import org.springframework.stereotype.Component; @ConditionalOnBean({INotifyTaskService.class, NotifyQueueProducer.class}) @Component /* loaded from: blade-starter-notify-9.3.0.0-SNAPSHOT.jar:org/springblade/core/notify/executor/NotifyTaskExecutorProvider.class */ public class NotifyTaskExecutorProvider implements TaskExecutorProvider { private static final Logger log = LoggerFactory.getLogger(NotifyTaskExecutorProvider.class); private final INotifyTaskService notifyTaskService; private final NotifyQueueProducer notifyQueueProducer; public NotifyTaskExecutorProvider(final INotifyTaskService notifyTaskService, final NotifyQueueProducer notifyQueueProducer) { this.notifyTaskService = notifyTaskService; this.notifyQueueProducer = notifyQueueProducer; } public String getExecutor() { return "notifier_task"; } public void executeTask(TaskExecutionContext context) { List notifyExecutionContexts = this.notifyTaskService.createNotifyExecutionContext(context); notifyExecutionContexts.forEach(x -> { this.notifyQueueProducer.asyncSend(x); }); } }