OffsetCommitResponse.fromData constructor

OffsetCommitResponse.fromData(
  1. List<int> data
)

Implementation

factory OffsetCommitResponse.fromData(List<int> data) {
  List<OffsetCommitResult> offsets = [];
  var reader = new KafkaBytesReader.fromBytes(data);
  var size = reader.readInt32();
  assert(size == data.length - 4);

  reader.readInt32(); // correlationId
  var count = reader.readInt32();
  while (count > 0) {
    var topicName = reader.readString();
    var partitionCount = reader.readInt32();
    while (partitionCount > 0) {
      var partitionId = reader.readInt32();
      var errorCode = reader.readInt16();
      offsets.add(new OffsetCommitResult(topicName, partitionId, errorCode));
      partitionCount--;
    }
    count--;
  }

  return new OffsetCommitResponse._(offsets);
}