1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
/// <p>Contains summary information about a routing profile queue.</p>
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct RoutingProfileQueueConfigSummary {
/// <p>The identifier for the queue.</p>
pub queue_id: ::std::option::Option<::std::string::String>,
/// <p>The Amazon Resource Name (ARN) of the queue.</p>
pub queue_arn: ::std::option::Option<::std::string::String>,
/// <p>The name of the queue.</p>
pub queue_name: ::std::option::Option<::std::string::String>,
/// <p>The order in which contacts are to be handled for the queue. For more information, see <a href="https://docs.aws.amazon.com/connect/latest/adminguide/concepts-routing-profiles-priority.html">Queues: priority and delay</a>.</p>
pub priority: i32,
/// <p>The delay, in seconds, that a contact should be in the queue before they are routed to an available agent. For more information, see <a href="https://docs.aws.amazon.com/connect/latest/adminguide/concepts-routing-profiles-priority.html">Queues: priority and delay</a> in the <i>Amazon Connect Administrator Guide</i>.</p>
pub delay: i32,
/// <p>The channels this queue supports.</p>
pub channel: ::std::option::Option<crate::types::Channel>,
}
impl RoutingProfileQueueConfigSummary {
/// <p>The identifier for the queue.</p>
pub fn queue_id(&self) -> ::std::option::Option<&str> {
self.queue_id.as_deref()
}
/// <p>The Amazon Resource Name (ARN) of the queue.</p>
pub fn queue_arn(&self) -> ::std::option::Option<&str> {
self.queue_arn.as_deref()
}
/// <p>The name of the queue.</p>
pub fn queue_name(&self) -> ::std::option::Option<&str> {
self.queue_name.as_deref()
}
/// <p>The order in which contacts are to be handled for the queue. For more information, see <a href="https://docs.aws.amazon.com/connect/latest/adminguide/concepts-routing-profiles-priority.html">Queues: priority and delay</a>.</p>
pub fn priority(&self) -> i32 {
self.priority
}
/// <p>The delay, in seconds, that a contact should be in the queue before they are routed to an available agent. For more information, see <a href="https://docs.aws.amazon.com/connect/latest/adminguide/concepts-routing-profiles-priority.html">Queues: priority and delay</a> in the <i>Amazon Connect Administrator Guide</i>.</p>
pub fn delay(&self) -> i32 {
self.delay
}
/// <p>The channels this queue supports.</p>
pub fn channel(&self) -> ::std::option::Option<&crate::types::Channel> {
self.channel.as_ref()
}
}
impl RoutingProfileQueueConfigSummary {
/// Creates a new builder-style object to manufacture [`RoutingProfileQueueConfigSummary`](crate::types::RoutingProfileQueueConfigSummary).
pub fn builder() -> crate::types::builders::RoutingProfileQueueConfigSummaryBuilder {
crate::types::builders::RoutingProfileQueueConfigSummaryBuilder::default()
}
}
/// A builder for [`RoutingProfileQueueConfigSummary`](crate::types::RoutingProfileQueueConfigSummary).
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
pub struct RoutingProfileQueueConfigSummaryBuilder {
pub(crate) queue_id: ::std::option::Option<::std::string::String>,
pub(crate) queue_arn: ::std::option::Option<::std::string::String>,
pub(crate) queue_name: ::std::option::Option<::std::string::String>,
pub(crate) priority: ::std::option::Option<i32>,
pub(crate) delay: ::std::option::Option<i32>,
pub(crate) channel: ::std::option::Option<crate::types::Channel>,
}
impl RoutingProfileQueueConfigSummaryBuilder {
/// <p>The identifier for the queue.</p>
pub fn queue_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.queue_id = ::std::option::Option::Some(input.into());
self
}
/// <p>The identifier for the queue.</p>
pub fn set_queue_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.queue_id = input;
self
}
/// <p>The identifier for the queue.</p>
pub fn get_queue_id(&self) -> &::std::option::Option<::std::string::String> {
&self.queue_id
}
/// <p>The Amazon Resource Name (ARN) of the queue.</p>
pub fn queue_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.queue_arn = ::std::option::Option::Some(input.into());
self
}
/// <p>The Amazon Resource Name (ARN) of the queue.</p>
pub fn set_queue_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.queue_arn = input;
self
}
/// <p>The Amazon Resource Name (ARN) of the queue.</p>
pub fn get_queue_arn(&self) -> &::std::option::Option<::std::string::String> {
&self.queue_arn
}
/// <p>The name of the queue.</p>
pub fn queue_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.queue_name = ::std::option::Option::Some(input.into());
self
}
/// <p>The name of the queue.</p>
pub fn set_queue_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.queue_name = input;
self
}
/// <p>The name of the queue.</p>
pub fn get_queue_name(&self) -> &::std::option::Option<::std::string::String> {
&self.queue_name
}
/// <p>The order in which contacts are to be handled for the queue. For more information, see <a href="https://docs.aws.amazon.com/connect/latest/adminguide/concepts-routing-profiles-priority.html">Queues: priority and delay</a>.</p>
pub fn priority(mut self, input: i32) -> Self {
self.priority = ::std::option::Option::Some(input);
self
}
/// <p>The order in which contacts are to be handled for the queue. For more information, see <a href="https://docs.aws.amazon.com/connect/latest/adminguide/concepts-routing-profiles-priority.html">Queues: priority and delay</a>.</p>
pub fn set_priority(mut self, input: ::std::option::Option<i32>) -> Self {
self.priority = input;
self
}
/// <p>The order in which contacts are to be handled for the queue. For more information, see <a href="https://docs.aws.amazon.com/connect/latest/adminguide/concepts-routing-profiles-priority.html">Queues: priority and delay</a>.</p>
pub fn get_priority(&self) -> &::std::option::Option<i32> {
&self.priority
}
/// <p>The delay, in seconds, that a contact should be in the queue before they are routed to an available agent. For more information, see <a href="https://docs.aws.amazon.com/connect/latest/adminguide/concepts-routing-profiles-priority.html">Queues: priority and delay</a> in the <i>Amazon Connect Administrator Guide</i>.</p>
pub fn delay(mut self, input: i32) -> Self {
self.delay = ::std::option::Option::Some(input);
self
}
/// <p>The delay, in seconds, that a contact should be in the queue before they are routed to an available agent. For more information, see <a href="https://docs.aws.amazon.com/connect/latest/adminguide/concepts-routing-profiles-priority.html">Queues: priority and delay</a> in the <i>Amazon Connect Administrator Guide</i>.</p>
pub fn set_delay(mut self, input: ::std::option::Option<i32>) -> Self {
self.delay = input;
self
}
/// <p>The delay, in seconds, that a contact should be in the queue before they are routed to an available agent. For more information, see <a href="https://docs.aws.amazon.com/connect/latest/adminguide/concepts-routing-profiles-priority.html">Queues: priority and delay</a> in the <i>Amazon Connect Administrator Guide</i>.</p>
pub fn get_delay(&self) -> &::std::option::Option<i32> {
&self.delay
}
/// <p>The channels this queue supports.</p>
pub fn channel(mut self, input: crate::types::Channel) -> Self {
self.channel = ::std::option::Option::Some(input);
self
}
/// <p>The channels this queue supports.</p>
pub fn set_channel(mut self, input: ::std::option::Option<crate::types::Channel>) -> Self {
self.channel = input;
self
}
/// <p>The channels this queue supports.</p>
pub fn get_channel(&self) -> &::std::option::Option<crate::types::Channel> {
&self.channel
}
/// Consumes the builder and constructs a [`RoutingProfileQueueConfigSummary`](crate::types::RoutingProfileQueueConfigSummary).
pub fn build(self) -> crate::types::RoutingProfileQueueConfigSummary {
crate::types::RoutingProfileQueueConfigSummary {
queue_id: self.queue_id,
queue_arn: self.queue_arn,
queue_name: self.queue_name,
priority: self.priority.unwrap_or_default(),
delay: self.delay.unwrap_or_default(),
channel: self.channel,
}
}
}