lake (lake v0.2.6)

View Source

Connect to and use RabbitMQ Streams.

Summary

Functions

Convert a delivered osiris chunk into a list of messages.

Establish a connection.

Set a subscription's credit asynchronously.

Delete a stream.

Retrieve stream metadata such as endpoints and replicas.

Retrieve all partitions of SuperStream.

Publish a message asynchronously.

Publish a message synchronously.

Query a publisher's stored offset from the stream.

Determine the partition for RoutingKey.

Stop a connection.

Store a publisher's offset to the stream.

Retrieve statistics for Stream.

Establish a connection via TLS.

Establish a connection via TLS.

Unsubscribe from a stream.

Functions

chunk_to_messages(OsirisChunk)

Convert a delivered osiris chunk into a list of messages.

connect(Host, User, Password, Vhost)

Establish a connection.

See also: connect/5, connect/6.

connect(Host, Port, User, Password, Vhost)

Establish a connection.

See also: connect/4, connect/6.

connect(Host, Port, User, Password, Vhost, Options)

Establish a connection.

Options supports the options gen_tcp:connect/2 offers, and also the following:

* {exchange_command_versions, boolean()}: Enable exchanging command versions. Requires RabbitMQ 3.11. Defaults to true.

See also: connect/4, connect/5.

consumer_update_response(Connection, CorrelationId, ResponseCode, OffsetSpecification)

Respond to a consumer_update request.

create(Connection, Stream, Arguments)

Create a new stream.

credit_async(Connection, SubscriptionId, Credit)

Set a subscription's credit asynchronously.

declare_publisher(Connection, Stream, PublisherId, PublisherReference)

Declare a publisher.

delete(Connection, Stream)

Delete a stream.

delete_publisher(Connection, PublisherId)

Delete a publisher.

metadata(Connection, Streams)

Retrieve stream metadata such as endpoints and replicas.

partitions(Connection, SuperStream)

Retrieve all partitions of SuperStream.

publish_async(Connection, PublisherId, Messages)

Publish a message asynchronously.

publish_sync(Connection, PublisherId, Messages)

Publish a message synchronously.

query_offset(Connection, PublisherReference, Stream)

Query a publisher's stored offset from the stream.

query_publisher_sequence(Connection, PublisherReference, Stream)

Query a publisher's sequence.

route(Connection, RoutingKey, SuperStream)

Determine the partition for RoutingKey.

stop(Connection)

Stop a connection.

store_offset(Connection, PublisherReference, Stream, Offset)

Store a publisher's offset to the stream.

FIXME store_offset/4 is fire-and-forget; maybe the name should indicate that?

stream_stats(Connection, Stream)

Retrieve statistics for Stream.

subscribe(Connection, Stream, SubscriptionId, OffsetDefinition, Credit, Properties)

Subscribe to a stream.

tls_connect(Host, User, Password, Vhost)

Establish a connection via TLS.

See also: tls_connect/5, tls_connect/6.

tls_connect(Host, Port, User, Password, Vhost)

Establish a connection via TLS.

See also: tls_connect/4, tls_connect/6.

tls_connect(Host, Port, User, Password, Vhost, Options)

Establish a connection via TLS.

Options supports the options ssl:connect/2 offers, and also the following:

* {exchange_command_versions, boolean()}: Enable exchanging command versions. Requires RabbitMQ 3.11. Defaults to true.

See also: tls_connect/4, tls_connect/5.

unsubscribe(Connection, SubscriptionId)

Unsubscribe from a stream.