├── .gitignore ├── LICENSE ├── README.md ├── pom.xml ├── schedule.md └── src └── main └── java └── io ├── Startup.java ├── dovakinmq ├── ConnectionStore.java ├── MQServer.java ├── Processor.java ├── annotation │ ├── AnnotationFinder.java │ ├── MqttValidate.java │ └── Validator.java ├── cache │ ├── MessageIdentifier.java │ ├── MqttConnection.java │ ├── MqttConnectionStore.java │ ├── MqttSession.java │ ├── MqttSessionCache.java │ ├── RequestRecorder.java │ ├── SubscriptionCache.java │ ├── SubscriptionNode.java │ └── SubscriptionTree.java ├── constant │ ├── ChannelInfo.java │ ├── DovakinConstants.java │ └── MqttCriterion.java ├── manager │ └── ClientIdentifier.java ├── mqtt │ ├── Payload.java │ ├── QoSMessagePack.java │ ├── Topic.java │ ├── WillMessage.java │ └── builder │ │ └── MqttMessageBuilder.java ├── processor │ └── impl │ │ └── MqttProcessor.java └── server │ ├── DovakinMQServer.java │ ├── MessageExecutor.java │ └── handler │ ├── MqttHandler.java │ └── factory │ └── TCPHandlerInitializer.java └── netty └── handler └── codec └── mqtt ├── MqttCodecUtil.java ├── MqttConnAckMessage.java ├── MqttConnAckVariableHeader.java ├── MqttConnectMessage.java ├── MqttConnectPayload.java ├── MqttConnectReturnCode.java ├── MqttConnectVariableHeader.java ├── MqttDecoder.java ├── MqttEncoder.java ├── MqttFixedHeader.java ├── MqttIdentifierRejectedException.java ├── MqttMessage.java ├── MqttMessageBuilders.java ├── MqttMessageFactory.java ├── MqttMessageIdVariableHeader.java ├── MqttMessageType.java ├── MqttPubAckMessage.java ├── MqttPublishMessage.java ├── MqttPublishVariableHeader.java ├── MqttQoS.java ├── MqttSubAckMessage.java ├── MqttSubAckPayload.java ├── MqttSubscribeMessage.java ├── MqttSubscribePayload.java ├── MqttTopicSubscription.java ├── MqttUnacceptableProtocolVersionException.java ├── MqttUnsubAckMessage.java ├── MqttUnsubscribeMessage.java ├── MqttUnsubscribePayload.java └── MqttVersion.java /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/README.md -------------------------------------------------------------------------------- /pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/pom.xml -------------------------------------------------------------------------------- /schedule.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/main/java/io/Startup.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/Startup.java -------------------------------------------------------------------------------- /src/main/java/io/dovakinmq/ConnectionStore.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/dovakinmq/ConnectionStore.java -------------------------------------------------------------------------------- /src/main/java/io/dovakinmq/MQServer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/dovakinmq/MQServer.java -------------------------------------------------------------------------------- /src/main/java/io/dovakinmq/Processor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/dovakinmq/Processor.java -------------------------------------------------------------------------------- /src/main/java/io/dovakinmq/annotation/AnnotationFinder.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/dovakinmq/annotation/AnnotationFinder.java -------------------------------------------------------------------------------- /src/main/java/io/dovakinmq/annotation/MqttValidate.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/dovakinmq/annotation/MqttValidate.java -------------------------------------------------------------------------------- /src/main/java/io/dovakinmq/annotation/Validator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/dovakinmq/annotation/Validator.java -------------------------------------------------------------------------------- /src/main/java/io/dovakinmq/cache/MessageIdentifier.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/dovakinmq/cache/MessageIdentifier.java -------------------------------------------------------------------------------- /src/main/java/io/dovakinmq/cache/MqttConnection.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/dovakinmq/cache/MqttConnection.java -------------------------------------------------------------------------------- /src/main/java/io/dovakinmq/cache/MqttConnectionStore.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/dovakinmq/cache/MqttConnectionStore.java -------------------------------------------------------------------------------- /src/main/java/io/dovakinmq/cache/MqttSession.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/dovakinmq/cache/MqttSession.java -------------------------------------------------------------------------------- /src/main/java/io/dovakinmq/cache/MqttSessionCache.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/dovakinmq/cache/MqttSessionCache.java -------------------------------------------------------------------------------- /src/main/java/io/dovakinmq/cache/RequestRecorder.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/dovakinmq/cache/RequestRecorder.java -------------------------------------------------------------------------------- /src/main/java/io/dovakinmq/cache/SubscriptionCache.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/dovakinmq/cache/SubscriptionCache.java -------------------------------------------------------------------------------- /src/main/java/io/dovakinmq/cache/SubscriptionNode.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/dovakinmq/cache/SubscriptionNode.java -------------------------------------------------------------------------------- /src/main/java/io/dovakinmq/cache/SubscriptionTree.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/dovakinmq/cache/SubscriptionTree.java -------------------------------------------------------------------------------- /src/main/java/io/dovakinmq/constant/ChannelInfo.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/dovakinmq/constant/ChannelInfo.java -------------------------------------------------------------------------------- /src/main/java/io/dovakinmq/constant/DovakinConstants.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/dovakinmq/constant/DovakinConstants.java -------------------------------------------------------------------------------- /src/main/java/io/dovakinmq/constant/MqttCriterion.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/dovakinmq/constant/MqttCriterion.java -------------------------------------------------------------------------------- /src/main/java/io/dovakinmq/manager/ClientIdentifier.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/dovakinmq/manager/ClientIdentifier.java -------------------------------------------------------------------------------- /src/main/java/io/dovakinmq/mqtt/Payload.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/dovakinmq/mqtt/Payload.java -------------------------------------------------------------------------------- /src/main/java/io/dovakinmq/mqtt/QoSMessagePack.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/dovakinmq/mqtt/QoSMessagePack.java -------------------------------------------------------------------------------- /src/main/java/io/dovakinmq/mqtt/Topic.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/dovakinmq/mqtt/Topic.java -------------------------------------------------------------------------------- /src/main/java/io/dovakinmq/mqtt/WillMessage.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/dovakinmq/mqtt/WillMessage.java -------------------------------------------------------------------------------- /src/main/java/io/dovakinmq/mqtt/builder/MqttMessageBuilder.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/dovakinmq/mqtt/builder/MqttMessageBuilder.java -------------------------------------------------------------------------------- /src/main/java/io/dovakinmq/processor/impl/MqttProcessor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/dovakinmq/processor/impl/MqttProcessor.java -------------------------------------------------------------------------------- /src/main/java/io/dovakinmq/server/DovakinMQServer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/dovakinmq/server/DovakinMQServer.java -------------------------------------------------------------------------------- /src/main/java/io/dovakinmq/server/MessageExecutor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/dovakinmq/server/MessageExecutor.java -------------------------------------------------------------------------------- /src/main/java/io/dovakinmq/server/handler/MqttHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/dovakinmq/server/handler/MqttHandler.java -------------------------------------------------------------------------------- /src/main/java/io/dovakinmq/server/handler/factory/TCPHandlerInitializer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/dovakinmq/server/handler/factory/TCPHandlerInitializer.java -------------------------------------------------------------------------------- /src/main/java/io/netty/handler/codec/mqtt/MqttCodecUtil.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/netty/handler/codec/mqtt/MqttCodecUtil.java -------------------------------------------------------------------------------- /src/main/java/io/netty/handler/codec/mqtt/MqttConnAckMessage.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/netty/handler/codec/mqtt/MqttConnAckMessage.java -------------------------------------------------------------------------------- /src/main/java/io/netty/handler/codec/mqtt/MqttConnAckVariableHeader.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/netty/handler/codec/mqtt/MqttConnAckVariableHeader.java -------------------------------------------------------------------------------- /src/main/java/io/netty/handler/codec/mqtt/MqttConnectMessage.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/netty/handler/codec/mqtt/MqttConnectMessage.java -------------------------------------------------------------------------------- /src/main/java/io/netty/handler/codec/mqtt/MqttConnectPayload.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/netty/handler/codec/mqtt/MqttConnectPayload.java -------------------------------------------------------------------------------- /src/main/java/io/netty/handler/codec/mqtt/MqttConnectReturnCode.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/netty/handler/codec/mqtt/MqttConnectReturnCode.java -------------------------------------------------------------------------------- /src/main/java/io/netty/handler/codec/mqtt/MqttConnectVariableHeader.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/netty/handler/codec/mqtt/MqttConnectVariableHeader.java -------------------------------------------------------------------------------- /src/main/java/io/netty/handler/codec/mqtt/MqttDecoder.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/netty/handler/codec/mqtt/MqttDecoder.java -------------------------------------------------------------------------------- /src/main/java/io/netty/handler/codec/mqtt/MqttEncoder.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/netty/handler/codec/mqtt/MqttEncoder.java -------------------------------------------------------------------------------- /src/main/java/io/netty/handler/codec/mqtt/MqttFixedHeader.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/netty/handler/codec/mqtt/MqttFixedHeader.java -------------------------------------------------------------------------------- /src/main/java/io/netty/handler/codec/mqtt/MqttIdentifierRejectedException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/netty/handler/codec/mqtt/MqttIdentifierRejectedException.java -------------------------------------------------------------------------------- /src/main/java/io/netty/handler/codec/mqtt/MqttMessage.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/netty/handler/codec/mqtt/MqttMessage.java -------------------------------------------------------------------------------- /src/main/java/io/netty/handler/codec/mqtt/MqttMessageBuilders.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/netty/handler/codec/mqtt/MqttMessageBuilders.java -------------------------------------------------------------------------------- /src/main/java/io/netty/handler/codec/mqtt/MqttMessageFactory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/netty/handler/codec/mqtt/MqttMessageFactory.java -------------------------------------------------------------------------------- /src/main/java/io/netty/handler/codec/mqtt/MqttMessageIdVariableHeader.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/netty/handler/codec/mqtt/MqttMessageIdVariableHeader.java -------------------------------------------------------------------------------- /src/main/java/io/netty/handler/codec/mqtt/MqttMessageType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/netty/handler/codec/mqtt/MqttMessageType.java -------------------------------------------------------------------------------- /src/main/java/io/netty/handler/codec/mqtt/MqttPubAckMessage.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/netty/handler/codec/mqtt/MqttPubAckMessage.java -------------------------------------------------------------------------------- /src/main/java/io/netty/handler/codec/mqtt/MqttPublishMessage.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/netty/handler/codec/mqtt/MqttPublishMessage.java -------------------------------------------------------------------------------- /src/main/java/io/netty/handler/codec/mqtt/MqttPublishVariableHeader.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/netty/handler/codec/mqtt/MqttPublishVariableHeader.java -------------------------------------------------------------------------------- /src/main/java/io/netty/handler/codec/mqtt/MqttQoS.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/netty/handler/codec/mqtt/MqttQoS.java -------------------------------------------------------------------------------- /src/main/java/io/netty/handler/codec/mqtt/MqttSubAckMessage.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/netty/handler/codec/mqtt/MqttSubAckMessage.java -------------------------------------------------------------------------------- /src/main/java/io/netty/handler/codec/mqtt/MqttSubAckPayload.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/netty/handler/codec/mqtt/MqttSubAckPayload.java -------------------------------------------------------------------------------- /src/main/java/io/netty/handler/codec/mqtt/MqttSubscribeMessage.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/netty/handler/codec/mqtt/MqttSubscribeMessage.java -------------------------------------------------------------------------------- /src/main/java/io/netty/handler/codec/mqtt/MqttSubscribePayload.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/netty/handler/codec/mqtt/MqttSubscribePayload.java -------------------------------------------------------------------------------- /src/main/java/io/netty/handler/codec/mqtt/MqttTopicSubscription.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/netty/handler/codec/mqtt/MqttTopicSubscription.java -------------------------------------------------------------------------------- /src/main/java/io/netty/handler/codec/mqtt/MqttUnacceptableProtocolVersionException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/netty/handler/codec/mqtt/MqttUnacceptableProtocolVersionException.java -------------------------------------------------------------------------------- /src/main/java/io/netty/handler/codec/mqtt/MqttUnsubAckMessage.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/netty/handler/codec/mqtt/MqttUnsubAckMessage.java -------------------------------------------------------------------------------- /src/main/java/io/netty/handler/codec/mqtt/MqttUnsubscribeMessage.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/netty/handler/codec/mqtt/MqttUnsubscribeMessage.java -------------------------------------------------------------------------------- /src/main/java/io/netty/handler/codec/mqtt/MqttUnsubscribePayload.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/netty/handler/codec/mqtt/MqttUnsubscribePayload.java -------------------------------------------------------------------------------- /src/main/java/io/netty/handler/codec/mqtt/MqttVersion.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dovakin-IO/DovakinMQ/HEAD/src/main/java/io/netty/handler/codec/mqtt/MqttVersion.java --------------------------------------------------------------------------------