From 5d1e99f7b482e1451bf06e305b647b94f7d214bb Mon Sep 17 00:00:00 2001 From: "Captain.B" Date: Thu, 13 May 2021 11:25:41 +0800 Subject: [PATCH] =?UTF-8?q?fix(=E6=80=A7=E8=83=BD=E6=B5=8B=E8=AF=95):=20?= =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=90=AF=E5=8A=A8=E6=80=A7=E8=83=BD=E6=B5=8B?= =?UTF-8?q?=E8=AF=95=E8=AE=A1=E7=AE=97=E7=BA=BF=E7=A8=8B=E6=95=B0=E7=9A=84?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../performance/engine/AbstractEngine.java | 37 +++++++++++-------- 1 file changed, 22 insertions(+), 15 deletions(-) diff --git a/backend/src/main/java/io/metersphere/performance/engine/AbstractEngine.java b/backend/src/main/java/io/metersphere/performance/engine/AbstractEngine.java index f67454fa1a..7ac1ba1f03 100644 --- a/backend/src/main/java/io/metersphere/performance/engine/AbstractEngine.java +++ b/backend/src/main/java/io/metersphere/performance/engine/AbstractEngine.java @@ -2,7 +2,6 @@ package io.metersphere.performance.engine; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; import io.metersphere.base.domain.LoadTestWithBLOBs; import io.metersphere.base.domain.TestResource; import io.metersphere.base.domain.TestResourcePool; @@ -20,7 +19,6 @@ import org.apache.commons.lang3.StringUtils; import java.util.List; import java.util.UUID; -import java.util.stream.Collectors; public abstract class AbstractEngine implements Engine { protected String JMETER_IMAGE; @@ -105,23 +103,32 @@ public abstract class AbstractEngine implements Engine { Integer s = 0; String loadConfiguration = t.getLoadConfiguration(); JSONArray jsonArray = JSON.parseArray(loadConfiguration); + + outer: for (int i = 0; i < jsonArray.size(); i++) { if (jsonArray.get(i) instanceof List) { JSONArray o = jsonArray.getJSONArray(i); - List enabledConfig = o.stream() - .filter(b -> { - JSONObject c = JSON.parseObject(b.toString()); - if (StringUtils.equals(c.getString("deleted"), "true")) { - return false; - } - return !StringUtils.equals(c.getString("enabled"), "false"); - }) - .map(b -> JSON.parseObject(b.toString())) - .collect(Collectors.toList()); + for (int j = 0; j < o.size(); j++) { + if (StringUtils.equals(o.getJSONObject(j).getString("deleted"), "true")) { + jsonArray.remove(i); + continue outer; + } + } + for (int j = 0; j < o.size(); j++) { + if (!StringUtils.equals(o.getJSONObject(j).getString("enabled"), "true")) { + jsonArray.remove(i); + continue outer; + } + } + } + } - for (JSONObject b : enabledConfig) { - if (StringUtils.equals(b.getString("key"), "TargetLevel")) { - s += b.getInteger("value"); + for (int i = 0; i < jsonArray.size(); i++) { + if (jsonArray.get(i) instanceof List) { + JSONArray o = jsonArray.getJSONArray(i); + for (int j = 0; j < o.size(); j++) { + if (StringUtils.equals(o.getJSONObject(j).getString("key"), "TargetLevel")) { + s += o.getJSONObject(j).getInteger("value"); break; } }