From 532e6ccc42a1958f8bfc9ffe93eb79382303458d Mon Sep 17 00:00:00 2001 From: hcong <1050828145@qq.com> Date: 星期五, 27 十二月 2024 11:32:21 +0800 Subject: [PATCH] 1. 新增aod数据索引,aod详细数据实体类,mapper,service 2. 新增卫星遥测数据网格数据pm2.5、aod数据导入,模板下载 3. FileExchange.kt 新增转换pm2.5和aod数据方法 --- src/main/kotlin/com/flightfeather/uav/socket/DeviceSession.kt | 41 +++++++++++++++++++++++++++++------------ 1 files changed, 29 insertions(+), 12 deletions(-) diff --git a/src/main/kotlin/com/flightfeather/uav/socket/DeviceSession.kt b/src/main/kotlin/com/flightfeather/uav/socket/DeviceSession.kt index 1bc9472..8ee5393 100644 --- a/src/main/kotlin/com/flightfeather/uav/socket/DeviceSession.kt +++ b/src/main/kotlin/com/flightfeather/uav/socket/DeviceSession.kt @@ -1,29 +1,46 @@ package com.flightfeather.uav.socket +import com.flightfeather.uav.socket.bean.AirTypeData import io.netty.channel.ChannelHandlerContext import java.util.concurrent.ConcurrentHashMap /** - * 鐢ㄤ簬淇濆瓨杩炴帴鐨勮澶囧強瀵瑰簲鐨剆ession閫氶亾 + * 鐢ㄤ簬淇濆瓨杩炴帴鐨勮澶囧強瀵瑰簲鐨剆ession閫氶亾浠ュ強瀵瑰簲鐨勪笓灞炰俊鎭� * Date: 2019.8.27 * @author riku */ class DeviceSession { - companion object{ - private val deviceMap = ConcurrentHashMap<String, ChannelHandlerContext?>() + companion object { + private const val DEFAULT_DEVICE = "default_device" + } + private val deviceMap = ConcurrentHashMap<String?, ChannelHandlerContext?>() + private val typeMap = ConcurrentHashMap<String, List<AirTypeData>>() - fun saveDevice(deviceCode: String?, channel: ChannelHandlerContext?) { - deviceCode?.let { - deviceMap.put(deviceCode, channel) - } + fun saveDevice(deviceCode: String?, channel: ChannelHandlerContext?) { + deviceMap[deviceCode] = channel + } + + fun getDevice(deviceCode: String?): ChannelHandlerContext? { + return if (deviceMap.containsKey(deviceCode)) + deviceMap[deviceCode] + else + null + } + + fun saveAirType(deviceCode: String?, types: List<AirTypeData>) { + if (deviceCode == null) { + typeMap[DEFAULT_DEVICE] = types + } else { + typeMap[deviceCode] = types } + } - fun getDevice(deviceCode: String?): ChannelHandlerContext? { - return if (deviceMap.containsKey(deviceCode)) - deviceMap[deviceCode] - else - null + fun getAirType(deviceCode: String?): List<AirTypeData>? { + return when { + deviceCode == null -> typeMap[DEFAULT_DEVICE] + typeMap.containsKey(deviceCode) -> typeMap[deviceCode] + else -> null } } } \ No newline at end of file -- Gitblit v1.9.3