Module brod_kafka_request

Helper functions for building request messages.

Description

Helper functions for building request messages.

Data Types

conn()

conn() = kpro:connection()

offset()

offset() = brod:offset()

partition()

partition() = brod:partition()

topic()

topic() = brod:topic()

topic_config()

topic_config() = kpro:struct()

vsn()

vsn() = brod_kafka_apis:vsn()

Function Index

create_topics/3Make a create_topics request.
delete_topics/3Make a delete_topics request.
fetch/7Make a fetch request, If the first arg is a connection pid, call brod_kafka_apis:pick_version/2 to resolve version.
join_group/2Make a join_group request.
list_groups/1Make a list_groups request.
list_offsets/4Make a list_offsets request message for offset resolution.
metadata/2Make a metadata request.
offset_commit/2Make a offset_commit request.
offset_fetch/3Make a offset fetch request.
produce/7Make a produce request, If the first arg is a connection pid, call brod_kafka_apis:pick_version/2 to resolve version.
sync_group/2Make a sync_group request.

Function Details

create_topics/3

create_topics(Connection::vsn() | conn(), TopicConfigs::[topic_config()], RequestConfigs::#{timeout => kpro:int32(), validate_only => boolean()}) -> kpro:req()

Make a create_topics request.

delete_topics/3

delete_topics(Connection::vsn() | conn(), Topics::[topic()], Timeout::pos_integer()) -> kpro:req()

Make a delete_topics request.

fetch/7

fetch(Pid::conn(), Topic::topic(), Partition::partition(), Offset::offset(), WaitTime::kpro:wait(), MinBytes::kpro:count(), MaxBytes::kpro:count()) -> kpro:req()

Make a fetch request, If the first arg is a connection pid, call brod_kafka_apis:pick_version/2 to resolve version.

join_group/2

join_group(Conn::conn(), Fields::kpro:struct()) -> kpro:req()

Make a join_group request.

list_groups/1

list_groups(Connection::conn()) -> kpro:req()

Make a list_groups request.

list_offsets/4

list_offsets(Connection::conn(), Topic::topic(), Partition::partition(), TimeOrSemanticOffset::brod:offset_time()) -> kpro:req()

Make a list_offsets request message for offset resolution. In kafka protocol, -2 and -1 are semantic 'time' to request for 'earliest' and 'latest' offsets. In brod implementation, -2, -1, 'earliest' and 'latest' are semantic 'offset', this is why often a variable named Offset is used as the Time argument.

metadata/2

metadata(Connection::vsn() | conn(), Topics::all | [topic()]) -> kpro:req()

Make a metadata request.

offset_commit/2

offset_commit(Conn::conn(), Fields::kpro:struct()) -> kpro:req()

Make a offset_commit request.

offset_fetch/3

offset_fetch(Connection::conn(), GroupId::brod:group_id(), Topics) -> kpro:req()

Make a offset fetch request. NOTE: empty topics list only works for kafka 0.10.2.0 or later

produce/7

produce(MaybePid::conn() | vsn(), Topic::topic(), Partition::partition(), BatchInput::kpro:batch_input(), RequiredAcks::integer(), AckTimeout::integer(), Compression::brod:compression()) -> kpro:req()

Make a produce request, If the first arg is a connection pid, call brod_kafka_apis:pick_version/2 to resolve version.

sync_group/2

sync_group(Conn::conn(), Fields::kpro:struct()) -> kpro:req()

Make a sync_group request.


Generated by EDoc