io.github.hpsocket.soa.starter.kafka.producer.service.DomainEventService Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of hp-soa-starter-kafka Show documentation
Show all versions of hp-soa-starter-kafka Show documentation
hp-soa: a fully functional, easy-to-use, and highly scalable microservice framework
The newest version!
package io.github.hpsocket.soa.starter.kafka.producer.service;
import java.util.Collection;
import java.util.List;
import com.baomidou.mybatisplus.extension.service.IService;
import io.github.hpsocket.soa.starter.kafka.producer.entity.DomainEvent;
/** 领域事件服务接口 */
public interface DomainEventService extends IService
{
/** 默认发送批次大小 */
int DEFAULT_SEND_BATCH_SIZE = 100;
/** 默认补偿批次大小 */
int DEFAULT_COMPENSATE_BATCH_SIZE = 200;
/** 默认超时补偿时间(秒) */
int DEFAULT_COMPENSATE_TIMEOUT = 30;
/** 标记一个领域事件为正在发送 */
T markOneEventToSend();
/** 标记一个领域事件为正在发送 */
T markOneEventToSend(Long preId);
/** 标记多个领域事件为正在发送 */
List markMultiEventToSend();
/** 标记多个领域事件为正在发送 */
List markMultiEventToSend(Long preId);
/** 标记多个领域事件为正在发送 */
List markMultiEventToSend(int batchSize);
/** 标记多个领域事件为正在发送 */
List markMultiEventToSend(int batchSize, Long preId);
/** 标记一个领域事件为发送成功 */
boolean markOneEventSendSuccess(Long id);
/** 标记多个领域事件为发送成功 */
boolean markMultiEventSendSuccess(Collection ids);
/** 标记一个领域事件为发送失败 */
boolean markOneEventSendFail(Long id);
/** 标记多个领域事件为发送失败 */
boolean markMultiEventSendFail(Collection ids);
/** 重设正在发送的领域事件状态为发送失败 */
boolean resetSendingEventToSendFail();
/** 重设正在发送的领域事件状态为发送失败 */
boolean resetSendingEventToSendFail(int sendTimeout);
/** 重设正在发送的领域事件状态为发送失败 */
boolean resetSendingEventToSendFail(int sendTimeout, int batchSize);
}