Class KeyRecordGrouper
- java.lang.Object
-
- io.aiven.kafka.connect.common.grouper.KeyRecordGrouper
-
- All Implemented Interfaces:
RecordGrouper
public final class KeyRecordGrouper extends java.lang.Object implements RecordGrouper
ARecordGrouperthat groups records by key.The class requires a filename template with
keyvariable declared.The class supports one record per file.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface io.aiven.kafka.connect.common.grouper.RecordGrouper
RecordGrouper.Rotator<T>
-
-
Constructor Summary
Constructors Constructor Description KeyRecordGrouper(Template filenameTemplate)A constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclear()Clear all records.voidput(org.apache.kafka.connect.sink.SinkRecord record)Associate the record with the appropriate file.java.util.Map<java.lang.String,java.util.List<org.apache.kafka.connect.sink.SinkRecord>>records()Get all records associated with files, grouped by the file name.
-
-
-
Constructor Detail
-
KeyRecordGrouper
public KeyRecordGrouper(Template filenameTemplate)
A constructor.- Parameters:
filenameTemplate- the filename template.
-
-
Method Detail
-
put
public void put(org.apache.kafka.connect.sink.SinkRecord record)
Description copied from interface:RecordGrouperAssociate the record with the appropriate file.- Specified by:
putin interfaceRecordGrouper- Parameters:
record- - record to group
-
clear
public void clear()
Description copied from interface:RecordGrouperClear all records.- Specified by:
clearin interfaceRecordGrouper
-
records
public java.util.Map<java.lang.String,java.util.List<org.apache.kafka.connect.sink.SinkRecord>> records()
Description copied from interface:RecordGrouperGet all records associated with files, grouped by the file name.- Specified by:
recordsin interfaceRecordGrouper- Returns:
- map of records assotiated with files
-
-