Class KeyRecordGrouper

java.lang.Object
io.aiven.kafka.connect.common.grouper.KeyRecordGrouper
All Implemented Interfaces:
RecordGrouper

public final class KeyRecordGrouper extends Object implements RecordGrouper
A RecordGrouper that groups records by key.

The class requires a filename template with key variable declared.

The class supports one record per file.

  • Constructor Details

    • KeyRecordGrouper

      public KeyRecordGrouper(Template filenameTemplate)
      A constructor.
      Parameters:
      filenameTemplate - the filename template.
  • Method Details

    • put

      public void put(org.apache.kafka.connect.sink.SinkRecord record)
      Description copied from interface: RecordGrouper
      Associate the record with the appropriate file.
      Specified by:
      put in interface RecordGrouper
      Parameters:
      record - - record to group
    • clear

      public void clear()
      Description copied from interface: RecordGrouper
      Clear all records.
      Specified by:
      clear in interface RecordGrouper
    • records

      public Map<String,List<org.apache.kafka.connect.sink.SinkRecord>> records()
      Description copied from interface: RecordGrouper
      Get all records associated with files, grouped by the file name.
      Specified by:
      records in interface RecordGrouper
      Returns:
      map of records assotiated with files