MCPcopy Create free account
hub / github.com/MCSLTeam/MCSL2 / ServerValidator

Class ServerValidator

MCSL2Lib/ProgramControllers/serverValidator.py:21–144  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

19
20
21class ServerValidator(QObject):
22 def __init__(self):
23 super().__init__()
24
25 def check(self, v, minMem, maxMem, name, jvmArg):
26 a = self.checkJavaSet(v)
27 b = self.checkMemSet(minMem, maxMem, v)
28 c = self.checkCoreSet(v)
29 d = self.checkServerNameSet(name, v)
30 e = self.checkJVMArgSet(jvmArg, v)
31 return "\n".join([
32 a[0] if a[1] else "1",
33 b[0] if b[1] else "1",
34 c[0] if c[1] else "1",
35 d[0] if d[1] else "1",
36 e[0] if e[1] else "1",
37 ]).replace("1\n", "").replace("1", ""), int(a[1] + b[1] + c[1] + d[1] + e[1])
38
39 def checkJavaSet(self, v: BaseServerVariables):
40 """检查Java设置"""
41 # 基岩版服务器不需要Java
42 if hasattr(v, 'serverType') and v.serverType == "bedrock":
43 return self.tr("Java 检查: 跳过(基岩版服务器)"), 0
44 if v.selectedJavaPath != "":
45 return self.tr("Java 检查: 正常"), 0
46 else:
47 return self.tr("Java 检查: 出错,缺失"), 1
48
49 def checkMemSet(self, minMem, maxMem, v: BaseServerVariables):
50 """检查内存设置"""
51 # 基岩版服务器不需要内存设置(不使用JVM)
52 if hasattr(v, 'serverType') and v.serverType == "bedrock":
53 v.minMem = 0
54 v.maxMem = 0
55 return self.tr("内存检查: 跳过(基岩版服务器)"), 0
56
57 # 是否为空
58 if minMem != "" and maxMem != "":
59 # 是否是数字
60 if minMem.isdigit() and maxMem.isdigit():
61 # 是否为整数
62 if not int(minMem) % 1 and not int(maxMem) % 1:
63 # 是否为整数
64 if int(minMem) <= int(minMem):
65 v.minMem = int(minMem)
66 v.maxMem = int(maxMem)
67 return self.tr("内存检查: 正常"), 0
68
69 else:
70 return (
71 self.tr("内存检查: 出错, 最小内存必须小于等于最大内存"),
72 1,
73 )
74 else:
75 return self.tr("内存检查: 出错, 不为整数"), 1
76 else:
77 return self.tr("内存检查: 出错, 不为数字"), 1
78 else:

Callers 4

finishNewServerMethod · 0.90
finishBedrockServerMethod · 0.90
_importerFinishSaveMethod · 0.90
finishEditServerMethod · 0.90

Calls

no outgoing calls

Tested by

no test coverage detected