All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.zhuang.mica.mqtt.client.config.MqttClientConfig Maven / Gradle / Ivy

The newest version!
package com.zhuang.mica.mqtt.client.config;

import com.zhuang.mica.mqtt.client.MqttClientService;
import com.zhuang.mica.mqtt.client.listener.MqttClientConnectListener;
import com.zhuang.mica.mqtt.client.listener.MqttClientSubscribeListener;
import net.dreamlu.iot.mqtt.core.client.MqttClientCreator;
import net.dreamlu.iot.mqtt.spring.client.MqttClientCustomizer;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
@ConditionalOnProperty(name = "mqtt.client.enabled", havingValue = "true", matchIfMissing = false)
public class MqttClientConfig {

    @Bean
    @ConditionalOnMissingBean
    public MqttClientCustomizer mqttClientCustomizer() {
        return new MqttClientCustomizer() {
            @Override
            public void customize(MqttClientCreator creator) {
                // 此处可自定义配置 creator,会覆盖 yml 中的配置
                System.out.println("----------------MqttServerCustomizer-----------------");
            }
        };
    }

    @Bean
    @ConditionalOnMissingBean
    public MqttClientConnectListener mqttClientConnectListener() {
        return new MqttClientConnectListener();
    }

//    @Bean
//    @ConditionalOnMissingBean
//    public MqttClientSubscribeListener mqttClientSubscribeListener() {
//        return new MqttClientSubscribeListener();
//    }

    @Bean
    @ConditionalOnMissingBean
    public MqttClientService mqttClientService() {
        return new MqttClientService();
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy