diff --git a/kafka-ui-api/src/main/java/com/provectus/kafka/ui/serdes/builtin/HexSerde.java b/kafka-ui-api/src/main/java/com/provectus/kafka/ui/serdes/builtin/HexSerde.java index cf1a6b793f..343bb4e705 100644 --- a/kafka-ui-api/src/main/java/com/provectus/kafka/ui/serdes/builtin/HexSerde.java +++ b/kafka-ui-api/src/main/java/com/provectus/kafka/ui/serdes/builtin/HexSerde.java @@ -16,12 +16,21 @@ public class HexSerde implements BuiltInSerde { return "Hex"; } + @Override + public void autoConfigure(PropertyResolver kafkaClusterProperties, PropertyResolver globalProperties) { + configure(" ", true); + } + @Override public void configure(PropertyResolver serdeProperties, PropertyResolver kafkaClusterProperties, PropertyResolver globalProperties) { String delim = serdeProperties.getProperty("delimiter", String.class).orElse(" "); boolean uppercase = serdeProperties.getProperty("uppercase", Boolean.class).orElse(true); + configure(delim, uppercase); + } + + private void configure(String delim, boolean uppercase) { deserializeHexFormat = HexFormat.ofDelimiter(delim); if (uppercase) { deserializeHexFormat = deserializeHexFormat.withUpperCase(); diff --git a/kafka-ui-api/src/test/java/com/provectus/kafka/ui/serdes/builtin/HexSerdeTest.java b/kafka-ui-api/src/test/java/com/provectus/kafka/ui/serdes/builtin/HexSerdeTest.java index a318279f56..4ec28c1509 100644 --- a/kafka-ui-api/src/test/java/com/provectus/kafka/ui/serdes/builtin/HexSerdeTest.java +++ b/kafka-ui-api/src/test/java/com/provectus/kafka/ui/serdes/builtin/HexSerdeTest.java @@ -16,16 +16,12 @@ public class HexSerdeTest { private static final byte[] TEST_BYTES = "hello world".getBytes(); private static final String TEST_BYTES_HEX_ENCODED = "68 65 6C 6C 6F 20 77 6F 72 6C 64"; - private Serde hexSerde; + private HexSerde hexSerde; @BeforeEach void init() { hexSerde = new HexSerde(); - hexSerde.configure( - PropertyResolverImpl.empty(), - PropertyResolverImpl.empty(), - PropertyResolverImpl.empty() - ); + hexSerde.autoConfigure(PropertyResolverImpl.empty(), PropertyResolverImpl.empty()); }