Conduit v0.12.10 Conduit.Plug.MessageActions View Source

Provides Conduit.Message methods as plugs.

Link to this section Summary

Functions

Calls the next plug and then proxies to Conduit.Message.ack/1

Calls the next plug and then proxies to Conduit.Message.nack/1

Proxies to Conduit.Message.put_assigns/3 for each key/value and calls the next plug

Proxies to Conduit.Message.put_body/2 and calls the next plug

Proxies to Conduit.Message.put_header/3 for each key/value and calls the next plug

Proxies to Conduit.Message.put_private/3 for each key/value and calls the next plug

Link to this section Functions

Calls the next plug and then proxies to Conduit.Message.ack/1.

Options are ignored.

Examples

import Conduit.Plug.MessageActions
plug :ack

iex> import Conduit.Plug.MessageActions
iex> message = ack(%Conduit.Message{}, &Conduit.Message.nack/1, [])
iex> message.status
:ack

Calls the next plug and then proxies to Conduit.Message.nack/1.

Options are ignored.

Examples

import Conduit.Plug.MessageActions
plug :nack

iex> import Conduit.Plug.MessageActions
iex> message = nack(%Conduit.Message{}, &Conduit.Message.ack/1, [])
iex> message.status
:nack

Proxies to Conduit.Message.put_assigns/3 for each key/value and calls the next plug.

Options should be a Keyword list.

Examples

import Conduit.Plug.MessageActions
plug :put_assigns, one: 1, two: 2

iex> import Conduit.Plug.MessageActions
iex> message = put_assigns(%Conduit.Message{}, &(&1), one: 1)
iex> Conduit.Message.assigns(message, :one)
1

Proxies to Conduit.Message.put_body/2 and calls the next plug.

See Conduit.Message/put_body/2 for what values should be passed.

Examples

import Conduit.Plug.MessageActions
plug :put_body, "REDACTED"

iex> import Conduit.Plug.MessageActions
iex> message = put_body(%Conduit.Message{}, &(&1), "REDACTED")
iex> message.body
"REDACTED"
Link to this function put_content_encoding(message, next, opts) View Source

Proxies to Conduit.Message.put_content_encoding/2 and calls the next plug.

See Conduit.Message/put_content_encoding/2 for what values should be passed.

Examples

import Conduit.Plug.MessageActions
plug :put_content_encoding, "gzip"

iex> import Conduit.Plug.MessageActions
iex> message = put_content_encoding(%Conduit.Message{}, &(&1), "gzip")
iex> message.content_encoding
"gzip"
Link to this function put_content_type(message, next, opts) View Source

Proxies to Conduit.Message.put_content_type/2 and calls the next plug.

See Conduit.Message/put_content_type/2 for what values should be passed.

Examples

import Conduit.Plug.MessageActions
plug :put_content_type, "application/json"

iex> import Conduit.Plug.MessageActions
iex> message = put_content_type(%Conduit.Message{}, &(&1), "application/json")
iex> message.content_type
"application/json"
Link to this function put_correlation_id(message, next, opts) View Source

Proxies to Conduit.Message.put_correlation_id/2 and calls the next plug.

See Conduit.Message/put_correlation_id/2 for what values should be passed.

Examples

import Conduit.Plug.MessageActions
plug :put_correlation_id, 1

iex> import Conduit.Plug.MessageActions
iex> message = put_correlation_id(%Conduit.Message{}, &(&1), 1)
iex> message.correlation_id
1

Proxies to Conduit.Message.put_created_by/2 and calls the next plug.

See Conduit.Message/put_created_by/2 for what values should be passed.

Examples

import Conduit.Plug.MessageActions
plug :put_created_by, "my_app"

iex> import Conduit.Plug.MessageActions
iex> message = put_created_by(%Conduit.Message{}, &(&1), "my_app")
iex> message.created_by
"my_app"
Link to this function put_destination(message, next, opts) View Source

Proxies to Conduit.Message.put_destination/2 and calls the next plug.

See Conduit.Message/put_destination/2 for what values should be passed.

Examples

import Conduit.Plug.MessageActions
plug :put_destination, "my.queue"

iex> import Conduit.Plug.MessageActions
iex> message = put_destination(%Conduit.Message{}, &(&1), "my.queue")
iex> message.destination
"my.queue"

Proxies to Conduit.Message.put_header/3 for each key/value and calls the next plug.

Options should be a Map.

Examples

import Conduit.Plug.MessageActions
plug :put_headers, %{"transfer_encoding" => "gzip"}

iex> import Conduit.Plug.MessageActions
iex> message = put_headers(%Conduit.Message{}, &(&1), %{"transfer_encoding" => "gzip"})
iex> Conduit.Message.get_header(message, "transfer_encoding")
"gzip"

Proxies to Conduit.Message.put_message_id/2 and calls the next plug.

See Conduit.Message/put_message_id/2 for what values should be passed.

Examples

import Conduit.Plug.MessageActions
plug :put_message_id, 1

iex> import Conduit.Plug.MessageActions
iex> message = put_message_id(%Conduit.Message{}, &(&1), 1)
iex> message.message_id
1
Link to this function put_new_correlation_id(message, next, opts) View Source

Proxies to Conduit.Message.put_new_correlation_id/2 and calls the next plug.

See Conduit.Message/put_new_correlation_id/2 for what values should be passed.

Examples

import Conduit.Plug.MessageActions
plug :put_new_correlation_id, 1

iex> import Conduit.Plug.MessageActions
iex> message = put_new_correlation_id(%Conduit.Message{}, &(&1), 1)
iex> message.correlation_id
1
Link to this function put_new_destination(message, next, opts) View Source

Proxies to Conduit.Message.put_new_destination/2 and calls the next plug.

See Conduit.Message/put_new_destination/2 for what values should be passed.

Examples

import Conduit.Plug.MessageActions
plug :put_new_destination, "my.queue"

iex> import Conduit.Plug.MessageActions
iex> message = put_new_destination(%Conduit.Message{}, &(&1), "my.queue")
iex> message.destination
"my.queue"
Link to this function put_new_message_id(message, next, opts) View Source

Proxies to Conduit.Message.put_new_message_id/2 and calls the next plug.

See Conduit.Message/put_new_message_id/2 for what values should be passed.

Examples

import Conduit.Plug.MessageActions
plug :put_new_message_id, 1

iex> import Conduit.Plug.MessageActions
iex> message = put_new_message_id(%Conduit.Message{}, &(&1), 1)
iex> message.message_id
1

Proxies to Conduit.Message.put_new_source/2 and calls the next plug.

See Conduit.Message/put_new_source/2 for what values should be passed.

Examples

import Conduit.Plug.MessageActions
plug :put_new_source, "my.queue"

iex> import Conduit.Plug.MessageActions
iex> message = put_new_source(%Conduit.Message{}, &(&1), "my.queue")
iex> message.source
"my.queue"

Proxies to Conduit.Message.put_private/3 for each key/value and calls the next plug.

Options should be a Keyword list.

Examples

import Conduit.Plug.MessageActions
plug :put_private, one: 1, two: 2

iex> import Conduit.Plug.MessageActions
iex> message = put_private(%Conduit.Message{}, &(&1), one: 1)
iex> Conduit.Message.get_private(message, :one)
1

Proxies to Conduit.Message.put_source/2 and calls the next plug.

See Conduit.Message/put_source/2 for what values should be passed.

Examples

import Conduit.Plug.MessageActions
plug :put_source, "my.queue"

iex> import Conduit.Plug.MessageActions
iex> message = put_source(%Conduit.Message{}, &(&1), "my.queue")
iex> message.source
"my.queue"

Proxies to Conduit.Message.put_user_id/2 and calls the next plug.

See Conduit.Message/put_user_id/2 for what values should be passed.

Examples

import Conduit.Plug.MessageActions
plug :put_user_id, 1

iex> import Conduit.Plug.MessageActions
iex> message = put_user_id(%Conduit.Message{}, &(&1), 1)
iex> message.user_id
1