class Kafka::Protocol::AddPartitionsToTxnRequest

Public Class Methods

new(transactional_id: nil, producer_id:, producer_epoch:, topics:) click to toggle source
# File lib/kafka/protocol/add_partitions_to_txn_request.rb, line 6
def initialize(transactional_id: nil, producer_id:, producer_epoch:, topics:)
  @transactional_id = transactional_id
  @producer_id = producer_id
  @producer_epoch = producer_epoch
  @topics = topics
end

Public Instance Methods

api_key() click to toggle source
# File lib/kafka/protocol/add_partitions_to_txn_request.rb, line 13
def api_key
  ADD_PARTITIONS_TO_TXN_API
end
encode(encoder) click to toggle source
# File lib/kafka/protocol/add_partitions_to_txn_request.rb, line 21
def encode(encoder)
  encoder.write_string(@transactional_id.to_s)
  encoder.write_int64(@producer_id)
  encoder.write_int16(@producer_epoch)
  encoder.write_array(@topics.to_a) do |topic, partitions|
    encoder.write_string(topic)
    encoder.write_array(partitions) do |partition|
      encoder.write_int32(partition)
    end
  end
end
response_class() click to toggle source
# File lib/kafka/protocol/add_partitions_to_txn_request.rb, line 17
def response_class
  AddPartitionsToTxnResponse
end