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

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

Specs

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

Specs

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

Specs

start_link(args(), atom()) :: GenServer.on_start()

Start the server in a supervision tree