From a3b766d1c29a6ddd067f82d70c9a8752360a9091 Mon Sep 17 00:00:00 2001 From: huangxin Date: Wed, 22 Apr 2020 09:11:33 +0800 Subject: [PATCH] =?UTF-8?q?OCT=20REM:=201.=20=E5=A2=9E=E5=8A=A0=E8=99=9A?= =?UTF-8?q?=E6=8B=9F=E5=A4=84=E7=BD=AE=E8=AE=BE=E5=A4=87=EF=BC=8C=E8=A7=A3?= =?UTF-8?q?=E5=86=B3jenkins=E5=8D=95=E5=85=83=E6=B5=8B=E8=AF=95=E7=94=B1?= =?UTF-8?q?=E4=BA=8E=E7=9C=9F=E5=AE=9E=E8=AE=BE=E5=A4=87=E7=BD=91=E7=BB=9C?= =?UTF-8?q?=E6=97=A0=E6=B3=95=E8=AE=BF=E9=97=AE=E5=AF=BC=E8=87=B4=E5=8D=95?= =?UTF-8?q?=E5=85=83=E6=B5=8B=E8=AF=95=E6=97=A0=E6=B3=95=E9=80=9A=E8=BF=87?= =?UTF-8?q?=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/dispose/common/ConstValue.java | 4 +- .../java/com/dispose/common/GlobalVar.java | 4 + .../com/dispose/dispose/DeviceRouter.java | 9 +- .../dispose/impl/VirtualDeviceImpl.java | 142 ++++++++++++++++++ .../dispose/Global/InitTestEnvironment.java | 14 ++ .../controller/AuthControllerTest.java | 3 +- .../DeviceNodeInfoControllerTest.java | 3 +- .../DeviceNodeManagerControllerTest.java | 3 +- .../dptech/DPTechInterfaceTestCase.java | 3 +- .../mapper/DisposeDeviceMapperTest.java | 3 +- .../dispose/mapper/UserAccountMapperTest.java | 3 +- .../service/UserAccountServiceTest.java | 3 +- 12 files changed, 185 insertions(+), 9 deletions(-) create mode 100644 src/main/java/com/dispose/dispose/impl/VirtualDeviceImpl.java create mode 100644 src/test/java/com/dispose/Global/InitTestEnvironment.java diff --git a/src/main/java/com/dispose/common/ConstValue.java b/src/main/java/com/dispose/common/ConstValue.java index 71c08689..6b385c3b 100644 --- a/src/main/java/com/dispose/common/ConstValue.java +++ b/src/main/java/com/dispose/common/ConstValue.java @@ -86,7 +86,9 @@ public class ConstValue { /** * Haohan platform dispose device type. */ - HAOHAN_PLATFORM(1, "浩瀚处置设备"); + HAOHAN_PLATFORM(1, "浩瀚处置设备"), + + VIRTUAL_DISPOSE(999, "虚拟处置设备"); private final int code; private final String readme; diff --git a/src/main/java/com/dispose/common/GlobalVar.java b/src/main/java/com/dispose/common/GlobalVar.java index 3b999b9a..98e5a761 100644 --- a/src/main/java/com/dispose/common/GlobalVar.java +++ b/src/main/java/com/dispose/common/GlobalVar.java @@ -15,4 +15,8 @@ public class GlobalVar { */ public static volatile String THREAT_INFO_TYPE = "1"; + /** + * The constant USED_VIRTUAL_DISPOSE_MODE. + */ + public static volatile boolean USED_VIRTUAL_DISPOSE_MODE = false; } diff --git a/src/main/java/com/dispose/dispose/DeviceRouter.java b/src/main/java/com/dispose/dispose/DeviceRouter.java index 9cdb5f52..cc6a17ab 100644 --- a/src/main/java/com/dispose/dispose/DeviceRouter.java +++ b/src/main/java/com/dispose/dispose/DeviceRouter.java @@ -1,7 +1,9 @@ package com.dispose.dispose; import com.dispose.common.ConstValue; +import com.dispose.common.GlobalVar; import com.dispose.dispose.impl.DPTechImpl; +import com.dispose.dispose.impl.VirtualDeviceImpl; /** * The type Device router. @@ -17,11 +19,16 @@ public class DeviceRouter { * @return the dispose entry manager */ public static DisposeEntryManager deviceRouterFactory(int devType, String ipAddr, ConstValue.IPAddrType ipType) { + + if (GlobalVar.USED_VIRTUAL_DISPOSE_MODE) { + return new VirtualDeviceImpl(ipAddr); + } + if (devType == ConstValue.DisposeDeviceType.DPTECH_UMC.getCode()) { return new DPTechImpl(ipAddr); } - return null; + return new VirtualDeviceImpl(ipAddr); } /** diff --git a/src/main/java/com/dispose/dispose/impl/VirtualDeviceImpl.java b/src/main/java/com/dispose/dispose/impl/VirtualDeviceImpl.java new file mode 100644 index 00000000..77f1d056 --- /dev/null +++ b/src/main/java/com/dispose/dispose/impl/VirtualDeviceImpl.java @@ -0,0 +1,142 @@ +package com.dispose.dispose.impl; + +import com.dispose.common.ConstValue; +import com.dispose.dispose.DisposeEntryManager; +import com.dispose.dispose.po.DeviceInfo; +import com.dispose.pojo.po.DisposeDeviceCapacity; +import java.util.ArrayList; +import java.util.List; + +/** + * The type Virtual device. + */ +public class VirtualDeviceImpl implements DisposeEntryManager { + /** + * Run dispose int. + * + * @param ip the ip + * @return the int + */ + @Override + public int runDispose(String ip) { + return 0; + } + + /** + * Gets version. + * + * @return the version + */ + @Override + public String getVersion() { + return "Virtual_Device_1.0.0"; + } + + /** + * Gets device info. + * + * @return the device info + */ + @Override + public DeviceInfo getDeviceInfo() { + return DeviceInfo.builder() + .vendor("Virtual") + .model("Dispose_1000") + .firmware("Unknown") + .os("Unknown") + .kernel("Linux") + .arch("x86_64") + .memory(-1) + .freeMemory(-1) + .cpuUsed(-1) + .build(); + } + + /** + * Gets device capacity. + * + * @return the device capacity + */ + @Override + public List getDeviceCapacity() { + List capList = new ArrayList<>(); + + capList.add(DisposeDeviceCapacity.builder() + .capacity(ConstValue.DeviceCapacity.CLEANUP.getCode()) + .tolFlowCapacity(1024) + .build()); + + capList.add(DisposeDeviceCapacity.builder() + .capacity(ConstValue.DeviceCapacity.DETECIVE.getCode()) + .build()); + + return capList; + } + + /** + * Gets device link status. + * + * @return the device link status + */ + @Override + public boolean getDeviceLinkStatus() { + return true; + } + + /** + * Gets all detection object. + * + * @param the type parameter + * @return the all detection object + */ + @Override + public T getAllDetectionObject() { + List detectionObjects = new ArrayList<>(); + + detectionObjects.add("192.168.10.12-192.168.10.124"); + return (T) detectionObjects; + } + + /** + * Gets all protection object. + * + * @param the type parameter + * @return the all protection object + */ + @Override + public T getAllProtectionObject() { + List protectObjects = new ArrayList<>(); + + protectObjects.add("10.10.10.1-10.10.10.100"); + protectObjects.add("172.168.133.12-172.168.133.48"); + return (T) protectObjects; + } + + /** + * Gets detection devices. + * + * @return the detection devices + */ + @Override + public String getDetectionDevices() { + return "192.168.10.11"; + } + + /** + * Gets protect devices. + * + * @return the protect devices + */ + @Override + public String getProtectDevices() { + return "192.168.10.10"; + } + + public VirtualDeviceImpl(String ipAddr) { + + } + + public VirtualDeviceImpl(String ipAddr, ConstValue.IPAddrType type) { + + } +} diff --git a/src/test/java/com/dispose/Global/InitTestEnvironment.java b/src/test/java/com/dispose/Global/InitTestEnvironment.java new file mode 100644 index 00000000..14fa9cb8 --- /dev/null +++ b/src/test/java/com/dispose/Global/InitTestEnvironment.java @@ -0,0 +1,14 @@ +package com.dispose.Global; + +import com.dispose.common.GlobalVar; +import lombok.extern.slf4j.Slf4j; +import org.junit.BeforeClass; + +@Slf4j +public class InitTestEnvironment { + @BeforeClass + public static void initVirtualDevice(){ + GlobalVar.USED_VIRTUAL_DISPOSE_MODE = true; + log.warn("Current Used Virtual Dispose Device"); + } +} diff --git a/src/test/java/com/dispose/controller/AuthControllerTest.java b/src/test/java/com/dispose/controller/AuthControllerTest.java index 6542e1a9..cf93b9aa 100644 --- a/src/test/java/com/dispose/controller/AuthControllerTest.java +++ b/src/test/java/com/dispose/controller/AuthControllerTest.java @@ -1,5 +1,6 @@ package com.dispose.controller; +import com.dispose.Global.InitTestEnvironment; import com.dispose.common.ConstValue; import com.dispose.pojo.dto.ProtocolReqDTO; import com.dispose.pojo.dto.ProtocolRespDTO; @@ -34,7 +35,7 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers. @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) @DirtiesContext(classMode = DirtiesContext.ClassMode.AFTER_EACH_TEST_METHOD) @Slf4j -public class AuthControllerTest { +public class AuthControllerTest extends InitTestEnvironment { @Resource private MockMvc mockMvc; diff --git a/src/test/java/com/dispose/controller/DeviceNodeInfoControllerTest.java b/src/test/java/com/dispose/controller/DeviceNodeInfoControllerTest.java index fa8cdd3a..d28adba6 100644 --- a/src/test/java/com/dispose/controller/DeviceNodeInfoControllerTest.java +++ b/src/test/java/com/dispose/controller/DeviceNodeInfoControllerTest.java @@ -1,5 +1,6 @@ package com.dispose.controller; +import com.dispose.Global.InitTestEnvironment; import com.dispose.common.ConstValue; import com.dispose.mapper.DisposeDeviceMapper; import com.dispose.pojo.dto.ProtocolReqDTO; @@ -33,7 +34,7 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers. @DirtiesContext(classMode = DirtiesContext.ClassMode.AFTER_EACH_TEST_METHOD) @Slf4j @FixMethodOrder(MethodSorters.NAME_ASCENDING) -public class DeviceNodeInfoControllerTest { +public class DeviceNodeInfoControllerTest extends InitTestEnvironment { @Resource private MockMvc mockMvc; diff --git a/src/test/java/com/dispose/controller/DeviceNodeManagerControllerTest.java b/src/test/java/com/dispose/controller/DeviceNodeManagerControllerTest.java index a3c033f4..99c19e39 100644 --- a/src/test/java/com/dispose/controller/DeviceNodeManagerControllerTest.java +++ b/src/test/java/com/dispose/controller/DeviceNodeManagerControllerTest.java @@ -1,5 +1,6 @@ package com.dispose.controller; +import com.dispose.Global.InitTestEnvironment; import com.dispose.common.ConstValue; import com.dispose.pojo.dto.ProtocolReqDTO; import com.dispose.pojo.po.NewNodeInfo; @@ -33,7 +34,7 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers. @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) @DirtiesContext(classMode = DirtiesContext.ClassMode.AFTER_EACH_TEST_METHOD) @Slf4j -public class DeviceNodeManagerControllerTest { +public class DeviceNodeManagerControllerTest extends InitTestEnvironment { @Resource private MockMvc mockMvc; diff --git a/src/test/java/com/dispose/dptech/DPTechInterfaceTestCase.java b/src/test/java/com/dispose/dptech/DPTechInterfaceTestCase.java index 5e29b062..65c2bc7f 100644 --- a/src/test/java/com/dispose/dptech/DPTechInterfaceTestCase.java +++ b/src/test/java/com/dispose/dptech/DPTechInterfaceTestCase.java @@ -1,5 +1,6 @@ package com.dispose.dptech; +import com.dispose.Global.InitTestEnvironment; import com.dispose.common.ConstValue; import com.dispose.dispose.DeviceRouter; import com.dispose.dispose.DisposeEntryManager; @@ -40,7 +41,7 @@ import java.util.List; @Slf4j @SpringBootTest @FixMethodOrder(MethodSorters.NAME_ASCENDING) -public class DPTechInterfaceTestCase { +public class DPTechInterfaceTestCase extends InitTestEnvironment { // @Before // public void initVirtualDevice() { // List protectList = new ArrayList<>(); diff --git a/src/test/java/com/dispose/mapper/DisposeDeviceMapperTest.java b/src/test/java/com/dispose/mapper/DisposeDeviceMapperTest.java index 6fa196dc..ba77a379 100644 --- a/src/test/java/com/dispose/mapper/DisposeDeviceMapperTest.java +++ b/src/test/java/com/dispose/mapper/DisposeDeviceMapperTest.java @@ -1,5 +1,6 @@ package com.dispose.mapper; +import com.dispose.Global.InitTestEnvironment; import com.dispose.common.ConstValue; import com.dispose.pojo.entity.DisposeDevice; import com.dispose.pojo.po.DisposeDeviceCapacity; @@ -26,7 +27,7 @@ import java.util.List; @SpringBootTest @Slf4j @FixMethodOrder(MethodSorters.NAME_ASCENDING) -public class DisposeDeviceMapperTest { +public class DisposeDeviceMapperTest extends InitTestEnvironment { @Resource private ObjectMapper objectMapper; diff --git a/src/test/java/com/dispose/mapper/UserAccountMapperTest.java b/src/test/java/com/dispose/mapper/UserAccountMapperTest.java index 67642ce7..fa54d944 100644 --- a/src/test/java/com/dispose/mapper/UserAccountMapperTest.java +++ b/src/test/java/com/dispose/mapper/UserAccountMapperTest.java @@ -1,5 +1,6 @@ package com.dispose.mapper; +import com.dispose.Global.InitTestEnvironment; import com.dispose.common.ConstValue; import com.dispose.pojo.entity.UserAccount; import com.fasterxml.jackson.core.JsonProcessingException; @@ -23,7 +24,7 @@ import javax.annotation.Resource; @SpringBootTest @Slf4j @FixMethodOrder(MethodSorters.NAME_ASCENDING) -public class UserAccountMapperTest { +public class UserAccountMapperTest extends InitTestEnvironment { @Autowired private ObjectMapper objMapper; diff --git a/src/test/java/com/dispose/service/UserAccountServiceTest.java b/src/test/java/com/dispose/service/UserAccountServiceTest.java index 64b75248..c270ea7e 100644 --- a/src/test/java/com/dispose/service/UserAccountServiceTest.java +++ b/src/test/java/com/dispose/service/UserAccountServiceTest.java @@ -1,5 +1,6 @@ package com.dispose.service; +import com.dispose.Global.InitTestEnvironment; import com.dispose.common.ErrorCode; import com.dispose.pojo.entity.UserAccount; import com.dispose.pojo.po.MReturnType; @@ -19,7 +20,7 @@ import org.springframework.test.context.junit4.SpringRunner; @SpringBootTest @Slf4j @FixMethodOrder(MethodSorters.NAME_ASCENDING) -public class UserAccountServiceTest { +public class UserAccountServiceTest extends InitTestEnvironment { @Resource private UserAccountService userAccountService;