View Source ExOciSdk.Queue.QueueClient (ex_oci_sdk v0.2.2)
Client for interacting with OCI Queue Service messages and operations.
This module handles message-level operations for OCI Queues, including:
- Reading messages (
get_messages/3) - Writing messages (
put_messages/4) - Deleting messages (
delete_message/4,delete_messages/4) - Updating messages (
update_message/5,update_messages/4) - Retrieving queue stats (
get_stats/3) - Listing channels (
list_channels/3)
For queue administration operations like creating, deleting, and updating queues,
see ExOciSdk.Queue.QueueAdminClient.
Summary
Functions
Creates a new QueueClient instance.
Deletes a single message from a queue.
Deletes multiple messages from a queue in a single request.
Retrieves messages from a queue.
Retrieves statistics for a queue.
Lists channels in a queue.
Puts messages into a queue.
Returns defaults service configuration settings ExOciSdk.Queue.Types.service_settings/0.
Updates a single message's visibility timeout.
Updates visibility timeout for multiple messages in a single request.
Types
@type t() :: %ExOciSdk.Queue.QueueClient{ client: ExOciSdk.Client.t(), service_endpoint: String.t() | nil }
Queue client structure containing the base client and service configuration.
:client- The base OCI client instance, seeExOciSdk.Client.t/0:service_endpoint- Optional custom service endpoint URL
Functions
@spec create(ExOciSdk.Client.t(), ExOciSdk.Queue.Types.queue_client_create_opts()) :: t()
Creates a new QueueClient instance.
Parameters
client- Base sdk client, seeExOciSdk.Client.t/0opts- Options list, seeExOciSdk.Queue.Types.queue_client_create_opts/0
@spec delete_message( t(), ExOciSdk.Queue.Types.queue_id(), ExOciSdk.Queue.Types.message_receipt(), ExOciSdk.Queue.Types.queue_default_opts() ) :: {:ok, ExOciSdk.Response.Types.response_success()} | {:error, ExOciSdk.Response.Types.response_error()}
Deletes a single message from a queue.
Parameters
queue_client- Queue client instancet/0queue_id- Target queue identifiermessage_receipt- Receipt of the message to deleteopts- Options list, seeExOciSdk.Queue.Types.queue_default_opts/0
Returns
{:ok, response}- On success{:error, reason}- On failure
@spec delete_messages( t(), ExOciSdk.Queue.Types.queue_id(), ExOciSdk.Queue.Types.delete_messages_input(), ExOciSdk.Queue.Types.queue_default_opts() ) :: {:ok, ExOciSdk.Response.Types.response_success()} | {:error, ExOciSdk.Response.Types.response_error()}
Deletes multiple messages from a queue in a single request.
Parameters
queue_client- Queue client instancet/0queue_id- Target queue identifierdelete_messages_input- input of messages to delete, seeExOciSdk.Queue.Types.delete_messages_input/0opts- Options list, seeExOciSdk.Queue.Types.queue_default_opts/0
Returns
{:ok, response}- On success{:error, reason}- On failure
@spec get_messages( t(), ExOciSdk.Queue.Types.queue_id(), ExOciSdk.Queue.Types.get_messages_opts() ) :: {:ok, ExOciSdk.Response.Types.response_success()} | {:error, ExOciSdk.Response.Types.response_error()}
Retrieves messages from a queue.
Parameters
queue_client- Queue client instancet/0queue_id- Target queue identifieropts- Options list, seeExOciSdk.Queue.Types.get_messages_opts/0
Returns
{:ok, response}- On success, where response contains the messages{:error, reason}- On failure
@spec get_stats( t(), ExOciSdk.Queue.Types.queue_id(), ExOciSdk.Queue.Types.get_stats_opts() ) :: {:ok, ExOciSdk.Response.Types.response_success()} | {:error, ExOciSdk.Response.Types.response_error()}
Retrieves statistics for a queue.
Parameters
queue_client- Queue client instancet/0queue_id- Target queue identifieropts- Options list, seeExOciSdk.Queue.Types.get_stats_opts/0
Returns
{:ok, response}- On success, where response contains queue statistics{:error, reason}- On failure
@spec list_channels( t(), ExOciSdk.Queue.Types.queue_id(), ExOciSdk.Queue.Types.list_channels_opts() ) :: {:ok, ExOciSdk.Response.Types.response_success()} | {:error, ExOciSdk.Response.Types.response_error()}
Lists channels in a queue.
Parameters
queue_client- Queue client instancet/0queue_id- Target queue identifieropts- Options list, seeExOciSdk.Queue.Types.list_channels_opts/0
Returns
{:ok, response}- On success, where response contains list of channels{:error, reason}- On failure
@spec put_messages( t(), ExOciSdk.Queue.Types.queue_id(), ExOciSdk.Queue.Types.put_messages_input(), ExOciSdk.Queue.Types.queue_default_opts() ) :: {:ok, ExOciSdk.Response.Types.response_success()} | {:error, ExOciSdk.Response.Types.response_error()}
Puts messages into a queue.
Parameters
queue_client- Queue client instancet/0queue_id- Target queue identifierput_messages_input- Message input, seeExOciSdk.Queue.Types.put_messages_input/0opts- Options list, seeExOciSdk.Queue.Types.queue_default_opts/0
Returns
{:ok, response}- On success{:error, reason}- On failure
@spec service_settings() :: ExOciSdk.Queue.Types.service_settings()
Returns defaults service configuration settings ExOciSdk.Queue.Types.service_settings/0.
@spec update_message( t(), ExOciSdk.Queue.Types.queue_id(), ExOciSdk.Queue.Types.message_receipt(), ExOciSdk.Queue.Types.update_message_input(), ExOciSdk.Queue.Types.queue_default_opts() ) :: {:ok, ExOciSdk.Response.Types.response_success()} | {:error, ExOciSdk.Response.Types.response_error()}
Updates a single message's visibility timeout.
Parameters
queue_client- Queue client instancet/0queue_id- Target queue identifiermessage_receipt- Receipt of the message to updateupdate_message_input- Update input, seeExOciSdk.Queue.Types.update_message_input/0opts- Options list, seeExOciSdk.Queue.Types.queue_default_opts/0
Returns
{:ok, response}- On success{:error, reason}- On failure
@spec update_messages( t(), ExOciSdk.Queue.Types.queue_id(), ExOciSdk.Queue.Types.update_messages_input(), ExOciSdk.Queue.Types.queue_default_opts() ) :: {:ok, ExOciSdk.Response.Types.response_success()} | {:error, ExOciSdk.Response.Types.response_error()}
Updates visibility timeout for multiple messages in a single request.
Parameters
queue_client- Queue client instancet/0queue_id- Target queue identifierupdate_messages_input- Update input, seeExOciSdk.Queue.Types.update_messages_input/0opts- Options list, seeExOciSdk.Queue.Types.queue_default_opts/0
Returns
{:ok, response}- On success{:error, reason}- On failure