From 7269d4a4755fa48c45e827bdc5b5ac56c6eca99c Mon Sep 17 00:00:00 2001
From: riku <risaku@163.com>
Date: 星期五, 11 十二月 2020 17:27:01 +0800
Subject: [PATCH] 修改监测因子类型

---
 src/main/kotlin/com/flightfeather/uav/socket/DeviceSession.kt |   21 ++++++++++++++++++++-
 1 files changed, 20 insertions(+), 1 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..d387fb3 100644
--- a/src/main/kotlin/com/flightfeather/uav/socket/DeviceSession.kt
+++ b/src/main/kotlin/com/flightfeather/uav/socket/DeviceSession.kt
@@ -1,10 +1,11 @@
 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
  */
@@ -12,6 +13,8 @@
 
     companion object{
         private val deviceMap = ConcurrentHashMap<String, ChannelHandlerContext?>()
+        private val typeMap = ConcurrentHashMap<String, List<AirTypeData>>()
+        private const val DEFAULT_DEVICE = "default_device"
 
         fun saveDevice(deviceCode: String?, channel: ChannelHandlerContext?) {
             deviceCode?.let {
@@ -25,5 +28,21 @@
             else
                 null
         }
+
+        fun saveAirType(deviceCode: String?, types: List<AirTypeData>) {
+            if (deviceCode == null) {
+                typeMap[DEFAULT_DEVICE] = types
+            } else {
+                typeMap[deviceCode] = types
+            }
+        }
+
+        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