MqGetMessageTask.java 1.3 KB
package com.tianbo.analysis.task;

import com.tianbo.analysis.model.RabbitMQ;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;

@Slf4j
@Component
public class MqGetMessageTask {

    @Value("${mq.connection.ip}")
    private  String mqIp;

    @Value("${mq.connection.port}")
    private  int mqPort;

    @Value("${mq.connection.vHost}")
    private  String mqVhost;

    @Value("${mq.connection.username}")
    private  String mqUsername;

    @Value("${mq.connection.password}")
    private  String mqPassword;

    @Value("${mq.queue.read-from-mq}")
    private String queueName;

    @Value("${mq.exchange.name}")
    private String exchangeName;

    @Value("${mq.exchange.routing-key}")
    private String routingKey;

    private final static String MQ_RUNING_STATE= "runing";

    @Scheduled(fixedRate = 5000)
    public void startTask(){
        RabbitMQ rabbit = new RabbitMQ(mqIp,mqPort,mqVhost,mqUsername,mqPassword,queueName);
        rabbit.setExchangeName(exchangeName);
        rabbit.setRoutingKey(routingKey);
        if (!MQ_RUNING_STATE.equals(RabbitMQ.status)){
            rabbit.getResponseFromMq();
        }
        log.info("解析程序执行中。。。");
    }



}