Add default header patterns to SimpleKHMapper

Fix indentation with tabs only
This commit is contained in:
Jean d'Arc
2019-11-15 19:37:11 +00:00
committed by Gary Russell
parent 8c8e56be48
commit 90e90525bc
2 changed files with 24 additions and 4 deletions

View File

@@ -45,7 +45,9 @@ public class SimpleKafkaHeaderMapper extends AbstractKafkaHeaderMapper {
* consumer/producer records.
*/
public SimpleKafkaHeaderMapper() {
super();
super("!" + MessageHeaders.ID,
"!" + MessageHeaders.TIMESTAMP,
"*");
}
/**

View File

@@ -38,7 +38,7 @@ public class SimpleKafkaHeaderMapperTests {
@Test
public void testSpecificStringConvert() {
SimpleKafkaHeaderMapper mapper = new SimpleKafkaHeaderMapper("*");
SimpleKafkaHeaderMapper mapper = new SimpleKafkaHeaderMapper();
Map<String, Boolean> rawMappedHeaders = new HashMap<>();
rawMappedHeaders.put("thisOnesAString", true);
rawMappedHeaders.put("thisOnesBytes", false);
@@ -64,7 +64,7 @@ public class SimpleKafkaHeaderMapperTests {
@Test
public void testNotStringConvert() {
SimpleKafkaHeaderMapper mapper = new SimpleKafkaHeaderMapper("*");
SimpleKafkaHeaderMapper mapper = new SimpleKafkaHeaderMapper();
Map<String, Boolean> rawMappedHeaders = new HashMap<>();
rawMappedHeaders.put("thisOnesBytes", false);
mapper.setRawMappedHeaders(rawMappedHeaders);
@@ -87,7 +87,7 @@ public class SimpleKafkaHeaderMapperTests {
@Test
public void testAlwaysStringConvert() {
SimpleKafkaHeaderMapper mapper = new SimpleKafkaHeaderMapper("*");
SimpleKafkaHeaderMapper mapper = new SimpleKafkaHeaderMapper();
mapper.setMapAllStringsOut(true);
Map<String, Boolean> rawMappedHeaders = new HashMap<>();
rawMappedHeaders.put("thisOnesBytes", false);
@@ -111,4 +111,22 @@ public class SimpleKafkaHeaderMapperTests {
entry("neverConverted", "baz".getBytes()));
}
@Test
public void testDefaultHeaderPatterns() {
SimpleKafkaHeaderMapper mapper = new SimpleKafkaHeaderMapper();
mapper.setMapAllStringsOut(true);
Map<String, Object> headersMap = new HashMap<>();
headersMap.put(MessageHeaders.ID, "foo".getBytes());
headersMap.put(MessageHeaders.TIMESTAMP, "bar");
headersMap.put("thisOnePresent", "baz");
MessageHeaders headers = new MessageHeaders(headersMap);
Headers target = new RecordHeaders();
mapper.fromHeaders(headers, target);
assertThat(target).contains(
new RecordHeader("thisOnePresent", "baz".getBytes()));
headersMap.clear();
mapper.toHeaders(target, headersMap);
assertThat(headersMap).contains(
entry("thisOnePresent", "baz".getBytes()));
}
}