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

com.zhuang.mica.mqtt.server.config.MqttServerConfig Maven / Gradle / Ivy

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

import com.zhuang.mica.mqtt.server.MqttServerService;
import com.zhuang.mica.mqtt.server.handler.MyMqttServerAuthHandler;
import com.zhuang.mica.mqtt.server.interceptor.MyMqttMessageInterceptor;
import com.zhuang.mica.mqtt.server.listener.MqttConnectStatusListener;
import com.zhuang.mica.mqtt.server.listener.MqttServerMessageListener;
import com.zhuang.mica.mqtt.util.RedisUtils;
import net.dreamlu.iot.mqtt.core.server.MqttServerCreator;
import net.dreamlu.iot.mqtt.spring.server.MqttServerCustomizer;
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.server.enabled", havingValue = "true", matchIfMissing = false)
public class MqttServerConfig {

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

    @Bean
    @ConditionalOnMissingBean
    public MyMqttServerAuthHandler myMqttServerAuthHandler() {
        return new MyMqttServerAuthHandler();
    }

    @Bean
    @ConditionalOnMissingBean
    public MqttConnectStatusListener mqttConnectStatusListener() {
        return new MqttConnectStatusListener();
    }

    @Bean
    @ConditionalOnMissingBean
    public MqttServerMessageListener mqttServerMessageListener() {
        return new MqttServerMessageListener();
    }

    @Bean
    @ConditionalOnMissingBean
    public MqttServerService mqttServerService() {
        return new MqttServerService();
    }


}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy