package com.elab.mq.rocket.anno;

import com.elab.core.aop.annotations.EnableElabDB;
import com.elab.mq.rocket.configuration.RocketMQAutoConfiguration2;
import com.elab.mq.rocket.configuration.RocketMQConfiguration;
import org.apache.rocketmq.spring.autoconfigure.ListenerContainerConfiguration;
import org.apache.rocketmq.spring.autoconfigure.RocketMQAutoConfiguration;
import org.springframework.boot.autoconfigure.ImportAutoConfiguration;
import org.springframework.context.annotation.ComponentScan;

import java.lang.annotation.*;

@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Inherited
@ImportAutoConfiguration(value = {RocketMQConfiguration.class, RocketMQAutoConfiguration2.class}, exclude =
        {RocketMQAutoConfiguration.class, ListenerContainerConfiguration.class})
@EnableElabDB
@ComponentScan(value = {"com.elab.mq.rocket.msg"})
public @interface EnableRocketMQ {
    String[] value() default {};
}