pub enum ServiceBusResponse {
Show 22 variants
QueueSwitched {
queue_info: QueueInfo,
},
CurrentQueue {
queue_info: Option<QueueInfo>,
},
QueueStatistics {
queue_name: String,
queue_type: QueueType,
active_message_count: Option<u64>,
dead_letter_message_count: Option<u64>,
retrieved_at: DateTime<Utc>,
},
MessagesReceived {
messages: Vec<MessageModel>,
},
ReceivedMessages {
messages: Vec<ServiceBusReceivedMessage>,
},
MessageCompleted {
message_id: String,
},
MessageAbandoned {
message_id: String,
},
MessageDeadLettered {
message_id: String,
},
BulkOperationCompleted {
result: BulkOperationResult,
},
BulkMessagesCompleted {
successful_ids: Vec<MessageIdentifier>,
failed_ids: Vec<MessageIdentifier>,
stats: OperationStats,
},
BulkMessagesAbandoned {
successful_ids: Vec<MessageIdentifier>,
failed_ids: Vec<MessageIdentifier>,
stats: OperationStats,
},
BulkMessagesDeadLettered {
successful_ids: Vec<MessageIdentifier>,
failed_ids: Vec<MessageIdentifier>,
stats: OperationStats,
},
MessageSent {
queue_name: String,
},
MessagesSent {
queue_name: String,
count: usize,
stats: OperationStats,
},
ConnectionStatus {
connected: bool,
current_queue: Option<QueueInfo>,
last_error: Option<String>,
},
QueueStats {
queue_name: String,
message_count: Option<u64>,
active_consumer: bool,
},
ConsumerDisposed,
AllResourcesDisposed,
ResourcesDisposed,
ConnectionReset,
Success,
Error {
error: ServiceBusError,
},
}Expand description
Response types for Service Bus operations.
This enum represents all possible responses from [ServiceBusCommand] operations
executed through the [ServiceBusManager]. Each response variant corresponds to
a specific command type and contains the relevant data or status information.
§Response Categories
- Queue Management - Information about queue switches, statistics, and current state
- Message Retrieval - Retrieved messages in various formats
- Individual Operations - Confirmations for single message operations
- Bulk Operations - Results from bulk processing with detailed statistics
- Send Operations - Confirmations and statistics for message sending
- Status Operations - Connection health and queue status information
- Resource Management - Confirmations for cleanup operations
- Generic Results - Success confirmations and error responses
§Examples
use quetty_server::service_bus_manager::{ServiceBusResponse, ServiceBusManager};
match manager.execute_command(command).await {
ServiceBusResponse::MessagesReceived { messages } => {
println!("Received {} messages", messages.len());
for message in messages {
println!("Message: {}", message.id);
}
}
ServiceBusResponse::QueueSwitched { queue_info } => {
println!("Switched to queue: {}", queue_info.name);
}
ServiceBusResponse::Error { error } => {
eprintln!("Operation failed: {}", error);
}
_ => println!("Operation completed successfully"),
}Variants§
QueueSwitched
Successful queue switch operation.
Returned when a [SwitchQueue] command completes successfully.
CurrentQueue
Information about the currently active queue.
Returned by [GetCurrentQueue] command.
QueueStatistics
Detailed statistics for a specific queue.
Returned by [GetQueueStatistics] command with comprehensive metrics.
Fields
MessagesReceived
Messages retrieved via peek operations.
Contains parsed message models from [PeekMessages] command.
Fields
messages: Vec<MessageModel>List of parsed message models
ReceivedMessages
Raw messages received with locks for processing.
Contains native Service Bus message objects from [ReceiveMessages] command.
Fields
messages: Vec<ServiceBusReceivedMessage>List of raw Service Bus messages with locks
MessageCompleted
Confirmation that a message was completed successfully.
MessageAbandoned
Confirmation that a message was abandoned.
MessageDeadLettered
Confirmation that a message was moved to dead letter queue.
BulkOperationCompleted
Result of a bulk operation with comprehensive statistics.
Used for complex bulk operations like delete, send, etc.
Fields
result: BulkOperationResultDetailed operation results and statistics
BulkMessagesCompleted
Result of bulk message completion operation.
Fields
successful_ids: Vec<MessageIdentifier>List of successfully completed message identifiers
failed_ids: Vec<MessageIdentifier>List of failed message identifiers
stats: OperationStatsOperation timing and performance statistics
BulkMessagesAbandoned
Result of bulk message abandon operation.
Fields
successful_ids: Vec<MessageIdentifier>List of successfully abandoned message identifiers
failed_ids: Vec<MessageIdentifier>List of failed message identifiers
stats: OperationStatsOperation timing and performance statistics
BulkMessagesDeadLettered
Result of bulk dead letter operation.
Fields
successful_ids: Vec<MessageIdentifier>List of successfully dead lettered message identifiers
failed_ids: Vec<MessageIdentifier>List of failed message identifiers
stats: OperationStatsOperation timing and performance statistics
MessageSent
Confirmation that a single message was sent successfully.
MessagesSent
Confirmation that multiple messages were sent successfully.
Fields
stats: OperationStatsOperation timing and performance statistics
ConnectionStatus
Current connection status and health information.
Fields
QueueStats
Basic statistics for a specific queue.
Fields
ConsumerDisposed
Confirmation that the consumer was disposed successfully.
AllResourcesDisposed
Confirmation that all resources were disposed successfully.
ResourcesDisposed
Confirmation that resources were disposed successfully.
ConnectionReset
Confirmation that the connection was reset successfully.
Success
Generic success response for operations without specific data.
Error
Error response containing detailed error information.
Returned when any operation fails with comprehensive error details.
Fields
error: ServiceBusErrorThe specific error that occurred