From cf12bc45ccbb56e5026e3c2269f753b834a748ae Mon Sep 17 00:00:00 2001 From: riku <risaku@163.com> Date: 星期二, 27 八月 2019 15:30:50 +0800 Subject: [PATCH] 1.完成socket的obd数据获取及数据库存储 2.完成获取obd数据的相关接口1个 --- src/main/kotlin/com/flightfeather/obd/socket/SocketServerClient.kt | 19 +++++++++++-------- 1 files changed, 11 insertions(+), 8 deletions(-) diff --git a/src/main/kotlin/com/flightfeather/obd/socket/SocketServerClient.kt b/src/main/kotlin/com/flightfeather/obd/socket/SocketServerClient.kt index bf89577..4c1f489 100644 --- a/src/main/kotlin/com/flightfeather/obd/socket/SocketServerClient.kt +++ b/src/main/kotlin/com/flightfeather/obd/socket/SocketServerClient.kt @@ -7,6 +7,7 @@ import io.netty.channel.socket.SocketChannel import io.netty.channel.socket.nio.NioServerSocketChannel import io.netty.channel.socket.nio.NioSocketChannel +import io.netty.handler.codec.string.StringDecoder /** * socket闀胯繛鎺ユ湇鍔$ @@ -15,16 +16,19 @@ */ class SocketServerClient { -// val sessionMap = HashMap<String, IoSession> + private val bossGroup = NioEventLoopGroup() + private val workerGroup = NioEventLoopGroup() fun startServer(port: Int) { initialize()?.bind(port)?.sync() - ?.channel()?.closeFuture()?.sync() + } + + fun stopServer() { + bossGroup.shutdownGracefully() + workerGroup.shutdownGracefully() } private fun initialize(): ServerBootstrap? { - val bossGroup = NioEventLoopGroup() - val workerGroup = NioEventLoopGroup() try { return ServerBootstrap() @@ -32,16 +36,15 @@ .channel(NioServerSocketChannel::class.java) .childHandler(object : ChannelInitializer<NioSocketChannel>() { override fun initChannel(p0: NioSocketChannel?) { - p0?.pipeline()?.addLast(ServerHandler()) + p0?.pipeline() + ?.addLast(StringDecoder()) + ?.addLast(ServerHandler()) } }) .option(ChannelOption.SO_BACKLOG, 128) .childOption(ChannelOption.SO_KEEPALIVE, true) } catch (e: Throwable) { e.printStackTrace() - } finally { - bossGroup.shutdownGracefully() - workerGroup.shutdownGracefully() } return null -- Gitblit v1.9.3