Method: Kafka::FFI::Message#headers

Defined in:
lib/kafka/ffi/message.rb

#headersnil, Message::Header

Get the message header list

Returns:

  • (nil)

    Message does not have any headers

  • (Message::Header)

    Set of headers

Raises:



110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
# File 'lib/kafka/ffi/message.rb', line 110

def headers
  ptr = ::FFI::MemoryPointer.new(:pointer)

  err = ::Kafka::FFI.rd_kafka_message_headers(self, ptr)
  case err
  when :ok
    if ptr.null?
      nil
    else
      Message::Header.new(ptr)
    end
  when RD_KAFKA_RESP_ERR__NOENT
    # Messages does not have headers
    nil
  else
    raise ::Kafka::ResponseError, err
  end
ensure
  ptr.free
end