View Source KafkaEx.New.Client (kafka_ex v0.13.0)

Kayrock-compatible KafkaEx.Server implementation

This implementation attempts to keep as much Kafka 'business logic' as possible out of the server implementation, with the motivation that this should make the client easier to maintain as the Kafka protocol evolves.

This implementation does, however, include implementations of all of the legacy KafkaEx.Server handle_call clauses so that it can be compatible with the legacy KafkaEx API.

Link to this section Summary

Functions

Returns a specification to start this module under a supervisor.

Send a Kayrock request to the appropriate broker

Start the server in a supervision tree

Link to this section Types

@type args() :: [KafkaEx.worker_setting() | {:allow_auto_topic_creation, boolean()}]

Link to this section Functions

Returns a specification to start this module under a supervisor.

See Supervisor.

Link to this function

send_request(server, request, node_selector, timeout \\ nil)

View Source
@spec send_request(
  KafkaEx.New.KafkaExAPI.client(),
  map(),
  KafkaEx.New.NodeSelector.t(),
  pos_integer() | nil
) :: {:ok, term()} | {:error, term()}

Send a Kayrock request to the appropriate broker

Broker metadata will be updated if necessary

Link to this function

start_link(args, name \\ __MODULE__)

View Source
@spec start_link(args(), atom()) :: GenServer.on_start()

Start the server in a supervision tree