#[non_exhaustive]pub struct DescribeReservedCacheNodesInput { /* private fields */ }
Expand description
Represents the input of a DescribeReservedCacheNodes
operation.
Implementations§
source§impl DescribeReservedCacheNodesInput
impl DescribeReservedCacheNodesInput
sourcepub async fn make_operation(
&self,
_config: &Config
) -> Result<Operation<DescribeReservedCacheNodes, AwsResponseRetryClassifier>, BuildError>
pub async fn make_operation(
&self,
_config: &Config
) -> Result<Operation<DescribeReservedCacheNodes, AwsResponseRetryClassifier>, BuildError>
Consumes the builder and constructs an Operation<DescribeReservedCacheNodes
>
Examples found in repository?
6296 6297 6298 6299 6300 6301 6302 6303 6304 6305 6306 6307 6308 6309 6310 6311 6312 6313 6314 6315 6316 6317 6318 6319 6320 6321 6322 6323 6324 6325 6326 6327 6328 6329 6330 6331 6332 6333 6334 6335 6336 6337 6338
pub async fn customize(
self,
) -> std::result::Result<
crate::operation::customize::CustomizableOperation<
crate::operation::DescribeReservedCacheNodes,
aws_http::retry::AwsResponseRetryClassifier,
>,
aws_smithy_http::result::SdkError<crate::error::DescribeReservedCacheNodesError>,
> {
let handle = self.handle.clone();
let operation = self
.inner
.build()
.map_err(aws_smithy_http::result::SdkError::construction_failure)?
.make_operation(&handle.conf)
.await
.map_err(aws_smithy_http::result::SdkError::construction_failure)?;
Ok(crate::operation::customize::CustomizableOperation { handle, operation })
}
/// Sends the request and returns the response.
///
/// If an error occurs, an `SdkError` will be returned with additional details that
/// can be matched against.
///
/// By default, any retryable failures will be retried twice. Retry behavior
/// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
/// set when configuring the client.
pub async fn send(
self,
) -> std::result::Result<
crate::output::DescribeReservedCacheNodesOutput,
aws_smithy_http::result::SdkError<crate::error::DescribeReservedCacheNodesError>,
> {
let op = self
.inner
.build()
.map_err(aws_smithy_http::result::SdkError::construction_failure)?
.make_operation(&self.handle.conf)
.await
.map_err(aws_smithy_http::result::SdkError::construction_failure)?;
self.handle.client.call(op).await
}
More examples
1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297
pub fn send(
self,
) -> impl tokio_stream::Stream<
Item = std::result::Result<
crate::output::DescribeReservedCacheNodesOutput,
aws_smithy_http::result::SdkError<crate::error::DescribeReservedCacheNodesError>,
>,
> + Unpin {
// Move individual fields out of self for the borrow checker
let builder = self.builder;
let handle = self.handle;
aws_smithy_async::future::fn_stream::FnStream::new(move |tx| {
Box::pin(async move {
// Build the input for the first time. If required fields are missing, this is where we'll produce an early error.
let mut input = match builder
.build()
.map_err(aws_smithy_http::result::SdkError::construction_failure)
{
Ok(input) => input,
Err(e) => {
let _ = tx.send(Err(e)).await;
return;
}
};
loop {
let op = match input
.make_operation(&handle.conf)
.await
.map_err(aws_smithy_http::result::SdkError::construction_failure)
{
Ok(op) => op,
Err(e) => {
let _ = tx.send(Err(e)).await;
return;
}
};
let resp = handle.client.call(op).await;
// If the input member is None or it was an error
let done = match resp {
Ok(ref resp) => {
let new_token = crate::lens::reflens_structure_crate_output_describe_reserved_cache_nodes_output_marker(resp);
let is_empty = new_token.map(|token| token.is_empty()).unwrap_or(true);
if !is_empty
&& new_token == input.marker.as_ref()
&& self.stop_on_duplicate_token
{
true
} else {
input.marker = new_token.cloned();
is_empty
}
}
Err(_) => true,
};
if tx.send(resp).await.is_err() {
// receiving end was dropped
return;
}
if done {
return;
}
}
})
})
}
sourcepub fn builder() -> Builder
pub fn builder() -> Builder
Creates a new builder-style object to manufacture DescribeReservedCacheNodesInput
.
source§impl DescribeReservedCacheNodesInput
impl DescribeReservedCacheNodesInput
sourcepub fn reserved_cache_node_id(&self) -> Option<&str>
pub fn reserved_cache_node_id(&self) -> Option<&str>
The reserved cache node identifier filter value. Use this parameter to show only the reservation that matches the specified reservation ID.
sourcepub fn reserved_cache_nodes_offering_id(&self) -> Option<&str>
pub fn reserved_cache_nodes_offering_id(&self) -> Option<&str>
The offering identifier filter value. Use this parameter to show only purchased reservations matching the specified offering identifier.
sourcepub fn cache_node_type(&self) -> Option<&str>
pub fn cache_node_type(&self) -> Option<&str>
The cache node type filter value. Use this parameter to show only those reservations matching the specified cache node type.
The following node types are supported by ElastiCache. Generally speaking, the current generation types provide more memory and computational power at lower cost when compared to their equivalent previous generation counterparts.
-
General purpose:
-
Current generation:
M6g node types: (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward):
cache.m6g.large
,cache.m6g.xlarge
,cache.m6g.2xlarge
,cache.m6g.4xlarge
,cache.m6g.8xlarge
,cache.m6g.12xlarge
,cache.m6g.16xlarge
For region availability, see Supported Node Types
M5 node types:
cache.m5.large
,cache.m5.xlarge
,cache.m5.2xlarge
,cache.m5.4xlarge
,cache.m5.12xlarge
,cache.m5.24xlarge
M4 node types:
cache.m4.large
,cache.m4.xlarge
,cache.m4.2xlarge
,cache.m4.4xlarge
,cache.m4.10xlarge
T4g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward):
cache.t4g.micro
,cache.t4g.small
,cache.t4g.medium
T3 node types:
cache.t3.micro
,cache.t3.small
,cache.t3.medium
T2 node types:
cache.t2.micro
,cache.t2.small
,cache.t2.medium
-
Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)
T1 node types:
cache.t1.micro
M1 node types:
cache.m1.small
,cache.m1.medium
,cache.m1.large
,cache.m1.xlarge
M3 node types:
cache.m3.medium
,cache.m3.large
,cache.m3.xlarge
,cache.m3.2xlarge
-
-
Compute optimized:
-
Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)
C1 node types:
cache.c1.xlarge
-
-
Memory optimized with data tiering:
-
Current generation:
R6gd node types (available only for Redis engine version 6.2 onward).
cache.r6gd.xlarge
,cache.r6gd.2xlarge
,cache.r6gd.4xlarge
,cache.r6gd.8xlarge
,cache.r6gd.12xlarge
,cache.r6gd.16xlarge
-
-
Memory optimized:
-
Current generation:
R6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward).
cache.r6g.large
,cache.r6g.xlarge
,cache.r6g.2xlarge
,cache.r6g.4xlarge
,cache.r6g.8xlarge
,cache.r6g.12xlarge
,cache.r6g.16xlarge
For region availability, see Supported Node Types
R5 node types:
cache.r5.large
,cache.r5.xlarge
,cache.r5.2xlarge
,cache.r5.4xlarge
,cache.r5.12xlarge
,cache.r5.24xlarge
R4 node types:
cache.r4.large
,cache.r4.xlarge
,cache.r4.2xlarge
,cache.r4.4xlarge
,cache.r4.8xlarge
,cache.r4.16xlarge
-
Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)
M2 node types:
cache.m2.xlarge
,cache.m2.2xlarge
,cache.m2.4xlarge
R3 node types:
cache.r3.large
,cache.r3.xlarge
,cache.r3.2xlarge
,cache.r3.4xlarge
,cache.r3.8xlarge
-
Additional node type info
-
All current generation instance types are created in Amazon VPC by default.
-
Redis append-only files (AOF) are not supported for T1 or T2 instances.
-
Redis Multi-AZ with automatic failover is not supported on T1 instances.
-
Redis configuration variables
appendonly
andappendfsync
are not supported on Redis version 2.8.22 and later.
sourcepub fn duration(&self) -> Option<&str>
pub fn duration(&self) -> Option<&str>
The duration filter value, specified in years or seconds. Use this parameter to show only reservations for this duration.
Valid Values: 1 | 3 | 31536000 | 94608000
sourcepub fn product_description(&self) -> Option<&str>
pub fn product_description(&self) -> Option<&str>
The product description filter value. Use this parameter to show only those reservations matching the specified product description.
sourcepub fn offering_type(&self) -> Option<&str>
pub fn offering_type(&self) -> Option<&str>
The offering type filter value. Use this parameter to show only the available offerings matching the specified offering type.
Valid values: "Light Utilization"|"Medium Utilization"|"Heavy Utilization"|"All Upfront"|"Partial Upfront"| "No Upfront"
sourcepub fn max_records(&self) -> Option<i32>
pub fn max_records(&self) -> Option<i32>
The maximum number of records to include in the response. If more records exist than the specified MaxRecords
value, a marker is included in the response so that the remaining results can be retrieved.
Default: 100
Constraints: minimum 20; maximum 100.
Trait Implementations§
source§impl Clone for DescribeReservedCacheNodesInput
impl Clone for DescribeReservedCacheNodesInput
source§fn clone(&self) -> DescribeReservedCacheNodesInput
fn clone(&self) -> DescribeReservedCacheNodesInput
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more