Skip to content

Commit 02959bb

Browse files
committed
Fixed sonar issues
1 parent 91629c6 commit 02959bb

File tree

1 file changed

+20
-17
lines changed

1 file changed

+20
-17
lines changed

api/src/main/java/io/kafbat/ui/util/ContentUtils.java

Lines changed: 20 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -10,16 +10,19 @@
1010
public class ContentUtils {
1111
private static final byte[] HEX_ARRAY = "0123456789ABCDEF".getBytes(StandardCharsets.US_ASCII);
1212

13-
private static final Pattern UTF8_PATTERN = Pattern.compile("\\A(\n"
14-
+ " [\\x09\\x0A\\x0D\\x20-\\x7E] # ASCII\\n"
15-
+ "| [\\xC2-\\xDF][\\x80-\\xBF] # non-overlong 2-byte\n"
16-
+ "| \\xE0[\\xA0-\\xBF][\\x80-\\xBF] # excluding overlongs\n"
17-
+ "| [\\xE1-\\xEC\\xEE\\xEF][\\x80-\\xBF]{2} # straight 3-byte\n"
18-
+ "| \\xED[\\x80-\\x9F][\\x80-\\xBF] # excluding surrogates\n"
19-
+ "| \\xF0[\\x90-\\xBF][\\x80-\\xBF]{2} # planes 1-3\n"
20-
+ "| [\\xF1-\\xF3][\\x80-\\xBF]{3} # planes 4-15\n"
21-
+ "| \\xF4[\\x80-\\x8F][\\x80-\\xBF]{2} # plane 16\n"
22-
+ ")*\\z", Pattern.COMMENTS);
13+
private static final String UTF8_REGEX = """
14+
\\A([\\x09\\x0A\\x0D\\x20-\\x7E] # ASCII
15+
| [\\xC2-\\xDF][\\x80-\\xBF] # non-overlong 2-byte
16+
| \\xE0[\\xA0-\\xBF][\\x80-\\xBF] # excluding overlongs
17+
| [\\xE1-\\xEC\\xEE\\xEF][\\x80-\\xBF]{2} # straight 3-byte
18+
| \\xED[\\x80-\\x9F][\\x80-\\xBF] # excluding surrogates
19+
| \\xF0[\\x90-\\xBF][\\x80-\\xBF]{2} # planes 1-3
20+
| [\\xF1-\\xF3][\\x80-\\xBF]{3} # planes 4-15
21+
| \\xF4[\\x80-\\x8F][\\x80-\\xBF]{2} # plane 16
22+
)*\\z
23+
""".trim();
24+
25+
private static final Pattern UTF8_PATTERN = Pattern.compile(UTF8_REGEX, Pattern.COMMENTS);
2326

2427
private ContentUtils() {
2528
}
@@ -83,14 +86,14 @@ public static String convertToString(byte[] value) {
8386
if (ContentUtils.isValidUtf8(value)) {
8487
valueAsString = new String(value);
8588
} else {
86-
try {
89+
if (value.length == 8) {
8790
valueAsString = String.valueOf(ContentUtils.asLong(value));
88-
} catch (Exception e) {
89-
try {
90-
valueAsString = String.valueOf(ContentUtils.asInt(value));
91-
} catch (Exception ex) {
92-
valueAsString = String.valueOf(ContentUtils.asShort(value));
93-
}
91+
} else if (value.length == 4) {
92+
valueAsString = String.valueOf(ContentUtils.asInt(value));
93+
} else if (value.length == 2) {
94+
valueAsString = String.valueOf(ContentUtils.asShort(value));
95+
} else {
96+
valueAsString = bytesToHex(value);
9497
}
9598
}
9699
} catch (Exception ex) {

0 commit comments

Comments
 (0)