View Source ExOciSdk.Queue.QueueClient (ex_oci_sdk v0.2.0)
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/0
opts
- 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/0
queue_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/0
queue_id
- Target queue identifierdelete_messages_input
- input of messages to delete, seeExOciSdk.Queue.Types.delete_messages_input/0
opts
- 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/0
queue_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/0
queue_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/0
queue_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/0
queue_id
- Target queue identifierput_messages_input
- Message input, seeExOciSdk.Queue.Types.put_messages_input/0
opts
- 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/0
queue_id
- Target queue identifiermessage_receipt
- Receipt of the message to updateupdate_message_input
- Update input, seeExOciSdk.Queue.Types.update_message_input/0
opts
- 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/0
queue_id
- Target queue identifierupdate_messages_input
- Update input, seeExOciSdk.Queue.Types.update_messages_input/0
opts
- Options list, seeExOciSdk.Queue.Types.queue_default_opts/0
Returns
{:ok, response}
- On success{:error, reason}
- On failure