feiyu02
2025-07-04 9c797fa0d704ef8ffb65cd1716b8eb694b4c46c3
src/main/kotlin/com/flightfeather/uav/socket/UnderwaySocketServer.kt
@@ -1,5 +1,7 @@
package com.flightfeather.uav.socket
import com.flightfeather.uav.domain.repository.SceneInfoRep
import com.flightfeather.uav.domain.repository.SourceTraceRep
import com.flightfeather.uav.socket.handler.ServerHandler
import com.flightfeather.uav.socket.handler.UnderwayWebSocketServerHandler
import com.flightfeather.uav.socket.processor.BaseProcessor
@@ -25,7 +27,8 @@
 * *******************************************************************************/
@Component
class UnderwaySocketServer(
    private val underwayWebSocketServerHandler:UnderwayWebSocketServerHandler
    private val sceneInfoRep: SceneInfoRep,
    private val sourceTraceRep: SourceTraceRep
) {
    private val bossGroup = NioEventLoopGroup()
@@ -39,8 +42,8 @@
        electricServer(processor)?.bind(port)?.sync()
    }
    fun startWebSocketServer(port: Int, processor: BaseProcessor) {
        webSocketServer(processor)?.bind(port)?.sync()
    fun startWebSocketServer(port: Int) {
        webSocketServer()?.bind(port)?.sync()
    }
    fun stopServer() {
@@ -92,13 +95,13 @@
    /**
     * 多参数走航服务端
     */
    private fun webSocketServer(processor: BaseProcessor):ServerBootstrap? = newServer(object : ChannelInitializer<NioSocketChannel>() {
    private fun webSocketServer():ServerBootstrap? = newServer(object : ChannelInitializer<NioSocketChannel>() {
        override fun initChannel(p0: NioSocketChannel?) {
            p0?.pipeline()
                ?.addLast(HttpServerCodec())
                ?.addLast(HttpObjectAggregator(65535))
                ?.addLast(WebSocketServerProtocolHandler("/ws"))
                ?.addLast(underwayWebSocketServerHandler)
                ?.addLast(UnderwayWebSocketServerHandler(sceneInfoRep, sourceTraceRep))
        }
    })
}