Skip to content

Commit c29a9f3

Browse files
committed
feat: modify parse
1 parent 523abfc commit c29a9f3

File tree

9 files changed

+30
-23
lines changed

9 files changed

+30
-23
lines changed

arex-instrumentation-api/pom.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
<groupId>com.fasterxml.jackson.core</groupId>
3333
<artifactId>jackson-databind</artifactId>
3434
<version>${jackson.version}</version>
35+
<scope>test</scope>
3536
</dependency>
3637
<dependency>
3738
<groupId>com.google.code.gson</groupId>

arex-instrumentation-api/src/main/java/io/arex/inst/runtime/util/MockUtils.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
import io.arex.agent.bootstrap.model.Mocker.Target;
99
import io.arex.agent.bootstrap.util.MapUtils;
1010
import io.arex.agent.bootstrap.util.StringUtil;
11-
import io.arex.agent.thirdparty.util.parse.sqlparse.SqlParse;
11+
import io.arex.agent.thirdparty.util.parse.sqlparse.SqlParseManager;
1212
import io.arex.agent.thirdparty.util.parse.sqlparse.constants.DbParseConstants;
1313
import io.arex.agent.thirdparty.util.parse.sqlparse.util.ParseUtil;
1414
import io.arex.inst.runtime.log.LogManager;
@@ -25,7 +25,6 @@
2525
public final class MockUtils {
2626

2727
private static final String EMPTY_JSON = "{}";
28-
private static final SqlParse sqlParse = new SqlParse();
2928

3029
private MockUtils() {
3130
}
@@ -59,14 +58,14 @@ public static ArexMocker createDatabase(String method, String sql, String dbName
5958
try {
6059
String[] splitSql = sql.split(";");
6160
for (String s : splitSql) {
62-
JsonNode parse = sqlParse.parse(s);
61+
JsonNode parse = SqlParseManager.getInstance().parse(s);
6362
if (parse != null) {
6463
String action = parse.get(DbParseConstants.ACTION).asText();
6564
String tableName = ParseUtil.parseTable(parse);
6665
operationName.append(dbName).append("-").append(tableName).append("-").append(action).append(";");
6766
}
6867
}
69-
} catch (JSQLParserException e) {
68+
} catch (Exception e) {
7069
LogManager.warn("createDatabase", "parse sql error", e);
7170
operationName = new StringBuilder(method);
7271
}

arex-third-party/src/main/java/io/arex/agent/thirdparty/util/parse/sqlparse/SqlParse.java renamed to arex-third-party/src/main/java/io/arex/agent/thirdparty/util/parse/sqlparse/SqlParseManager.java

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,20 @@
1313
* @date 2024/4/3
1414
* @since 1.0.0
1515
*/
16-
public class SqlParse {
16+
public class SqlParseManager {
17+
18+
private static SqlParseManager INSTANCE;
19+
20+
private SqlParseManager() {
21+
}
22+
23+
public static SqlParseManager getInstance() {
24+
if (INSTANCE == null) {
25+
INSTANCE = new SqlParseManager();
26+
}
27+
return INSTANCE;
28+
}
29+
1730
public JsonNode parse(String sql) throws JSQLParserException {
1831
if (sql == null || sql.isEmpty()) {
1932
return null;

arex-third-party/src/test/java/io/arex/parse/sqlparse/DeleteParseTest.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package io.arex.parse.sqlparse;
22

33
import com.fasterxml.jackson.databind.JsonNode;
4-
import io.arex.agent.thirdparty.util.parse.sqlparse.SqlParse;
4+
import io.arex.agent.thirdparty.util.parse.sqlparse.SqlParseManager;
55
import io.arex.agent.thirdparty.util.parse.sqlparse.constants.DbParseConstants;
66
import io.arex.agent.thirdparty.util.parse.sqlparse.util.ParseUtil;
77
import net.sf.jsqlparser.JSQLParserException;
@@ -17,8 +17,7 @@
1717
public class DeleteParseTest {
1818

1919
private static JsonNode parse(String sql) throws JSQLParserException {
20-
SqlParse sqlParse = new SqlParse();
21-
return sqlParse.parse(sql);
20+
return SqlParseManager.getInstance().parse(sql);
2221
}
2322

2423
@Test

arex-third-party/src/test/java/io/arex/parse/sqlparse/ExecuteParseTest.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package io.arex.parse.sqlparse;
22

33
import com.fasterxml.jackson.databind.JsonNode;
4-
import io.arex.agent.thirdparty.util.parse.sqlparse.SqlParse;
4+
import io.arex.agent.thirdparty.util.parse.sqlparse.SqlParseManager;
55
import io.arex.agent.thirdparty.util.parse.sqlparse.constants.DbParseConstants;
66
import net.sf.jsqlparser.JSQLParserException;
77
import org.junit.jupiter.api.Test;
@@ -15,8 +15,7 @@
1515
*/
1616
public class ExecuteParseTest {
1717
private static JsonNode parse(String sql) throws JSQLParserException {
18-
SqlParse sqlParse = new SqlParse();
19-
return sqlParse.parse(sql);
18+
return SqlParseManager.getInstance().parse(sql);
2019
}
2120

2221
@Test

arex-third-party/src/test/java/io/arex/parse/sqlparse/InsertParseTest.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package io.arex.parse.sqlparse;
22

33
import com.fasterxml.jackson.databind.JsonNode;
4-
import io.arex.agent.thirdparty.util.parse.sqlparse.SqlParse;
4+
import io.arex.agent.thirdparty.util.parse.sqlparse.SqlParseManager;
55
import io.arex.agent.thirdparty.util.parse.sqlparse.constants.DbParseConstants;
66
import io.arex.agent.thirdparty.util.parse.sqlparse.util.ParseUtil;
77
import net.sf.jsqlparser.JSQLParserException;
@@ -17,8 +17,7 @@
1717
public class InsertParseTest {
1818

1919
private static JsonNode parse(String sql) throws JSQLParserException {
20-
SqlParse sqlParse = new SqlParse();
21-
return sqlParse.parse(sql);
20+
return SqlParseManager.getInstance().parse(sql);
2221
}
2322

2423

arex-third-party/src/test/java/io/arex/parse/sqlparse/ReplaceParseTest.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package io.arex.parse.sqlparse;
22

33
import com.fasterxml.jackson.databind.JsonNode;
4-
import io.arex.agent.thirdparty.util.parse.sqlparse.SqlParse;
4+
import io.arex.agent.thirdparty.util.parse.sqlparse.SqlParseManager;
55
import io.arex.agent.thirdparty.util.parse.sqlparse.constants.DbParseConstants;
66
import io.arex.agent.thirdparty.util.parse.sqlparse.util.ParseUtil;
77
import net.sf.jsqlparser.JSQLParserException;
@@ -16,8 +16,7 @@
1616
*/
1717
public class ReplaceParseTest {
1818
private static JsonNode parse(String sql) throws JSQLParserException {
19-
SqlParse sqlParse = new SqlParse();
20-
return sqlParse.parse(sql);
19+
return SqlParseManager.getInstance().parse(sql);
2120
}
2221

2322
@Test

arex-third-party/src/test/java/io/arex/parse/sqlparse/SelectParseTest.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package io.arex.parse.sqlparse;
22

33
import com.fasterxml.jackson.databind.JsonNode;
4-
import io.arex.agent.thirdparty.util.parse.sqlparse.SqlParse;
4+
import io.arex.agent.thirdparty.util.parse.sqlparse.SqlParseManager;
55
import io.arex.agent.thirdparty.util.parse.sqlparse.constants.DbParseConstants;
66
import io.arex.agent.thirdparty.util.parse.sqlparse.util.ParseUtil;
77
import net.sf.jsqlparser.JSQLParserException;
@@ -18,8 +18,7 @@ public class SelectParseTest {
1818

1919

2020
private static JsonNode parse(String sql) throws JSQLParserException {
21-
SqlParse sqlParse = new SqlParse();
22-
return sqlParse.parse(sql);
21+
return SqlParseManager.getInstance().parse(sql);
2322
}
2423

2524
@Test

arex-third-party/src/test/java/io/arex/parse/sqlparse/UpdateParseTest.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package io.arex.parse.sqlparse;
22

33
import com.fasterxml.jackson.databind.JsonNode;
4-
import io.arex.agent.thirdparty.util.parse.sqlparse.SqlParse;
4+
import io.arex.agent.thirdparty.util.parse.sqlparse.SqlParseManager;
55
import io.arex.agent.thirdparty.util.parse.sqlparse.constants.DbParseConstants;
66
import io.arex.agent.thirdparty.util.parse.sqlparse.util.ParseUtil;
77
import net.sf.jsqlparser.JSQLParserException;
@@ -17,8 +17,7 @@
1717
public class UpdateParseTest {
1818

1919
private static JsonNode parse(String sql) throws JSQLParserException {
20-
SqlParse sqlParse = new SqlParse();
21-
return sqlParse.parse(sql);
20+
return SqlParseManager.getInstance().parse(sql);
2221
}
2322

2423
@Test

0 commit comments

Comments
 (0)