package cn.axzo.workflow.starter.mq.broadcast.filter;

import cn.axzo.framework.rocketmq.Event;
import org.springframework.core.Ordered;

/**
 * 一个基于某个具体的 MQ 消息的过滤接口
 *
 * @author wangli
 * @since 2024/6/5 16:08
 */
public interface BasicMessageQueueFilter<T> extends Ordered {

    /**
     * 基于具体的 {@link Event.EventCode#module} 下的自定义的 MQ 过滤器
     *
     * @param event 事件原对象
     * @param data  payload 被转换后的目标对象
     * @return
     */
    default boolean doFilter(Event event, T data) {
        return false;
    }
}
