Kayrock.CreateTopics.V5.Request (kayrock v1.0.1)

Copy Markdown View Source

Kayrock-generated request struct for Kafka create_topics v5 API messages

The schema of this API is

[
  topics: {:compact_array,
   [
     name: :compact_string,
     num_partitions: :int32,
     replication_factor: :int16,
     assignments: {:compact_array,
      [
        partition_index: :int32,
        broker_ids: {:compact_array, :int32},
        tagged_fields: :tagged_fields
      ]},
     configs: {:compact_array,
      [
        name: :compact_string,
        value: :compact_nullable_string,
        tagged_fields: :tagged_fields
      ]},
     tagged_fields: :tagged_fields
   ]},
  timeout_ms: :int32,
  validate_only: :boolean,
  tagged_fields: :tagged_fields
]

Summary

Types

t()

Request struct for the Kafka create_topics API v5

Functions

Returns the Kafka API key for this API

Returns the API version (5) implemented by this module

Returns a function that can be used to deserialize the wire response from the broker for this message type

Returns the schema of this message

Serialize a message to binary data for transfer to a Kafka broker

Types

t()

@type t() :: %Kayrock.CreateTopics.V5.Request{
  client_id: nil | binary(),
  correlation_id: nil | integer(),
  tagged_fields: [{non_neg_integer(), binary()}],
  timeout_ms: nil | integer(),
  topics:
    nil
    | [
        %{
          name: nil | binary(),
          num_partitions: nil | integer(),
          replication_factor: nil | integer(),
          assignments:
            nil
            | [
                %{
                  partition_index: nil | integer(),
                  broker_ids: nil | [nil | integer()],
                  tagged_fields: [{non_neg_integer(), binary()}]
                }
              ],
          configs:
            nil
            | [
                %{
                  name: nil | binary(),
                  value: nil | binary(),
                  tagged_fields: [{non_neg_integer(), binary()}]
                }
              ],
          tagged_fields: [{non_neg_integer(), binary()}]
        }
      ],
  validate_only: nil | integer()
}

Request struct for the Kafka create_topics API v5

Functions

api_key()

@spec api_key() :: integer()

Returns the Kafka API key for this API

api_vsn()

@spec api_vsn() :: integer()

Returns the API version (5) implemented by this module

response_deserializer()

@spec response_deserializer() :: (binary() ->
                              {Kayrock.CreateTopics.V5.Response.t(), binary()})

Returns a function that can be used to deserialize the wire response from the broker for this message type

schema()

@spec schema() :: term()

Returns the schema of this message

See above.

serialize(struct)

@spec serialize(t()) :: iodata()

Serialize a message to binary data for transfer to a Kafka broker