pub struct ElastiCacheState {Show 21 fields
pub account_id: String,
pub region: String,
pub parameter_groups: Vec<CacheParameterGroup>,
pub subnet_groups: BTreeMap<String, CacheSubnetGroup>,
pub reserved_cache_nodes: BTreeMap<String, ReservedCacheNode>,
pub reserved_cache_nodes_offerings: Vec<ReservedCacheNodesOffering>,
pub cache_clusters: BTreeMap<String, CacheCluster>,
pub replication_groups: BTreeMap<String, ReplicationGroup>,
pub global_replication_groups: BTreeMap<String, GlobalReplicationGroup>,
pub users: BTreeMap<String, ElastiCacheUser>,
pub user_groups: BTreeMap<String, ElastiCacheUserGroup>,
pub snapshots: BTreeMap<String, CacheSnapshot>,
pub serverless_caches: BTreeMap<String, ServerlessCache>,
pub serverless_cache_snapshots: BTreeMap<String, ServerlessCacheSnapshot>,
pub tags: BTreeMap<String, Vec<(String, String)>>,
pub security_groups: BTreeMap<String, CacheSecurityGroup>,
pub parameter_group_parameters: BTreeMap<String, Vec<CacheParameter>>,
pub events: Vec<CacheEvent>,
pub migrations: BTreeMap<String, Migration>,
pub service_updates: BTreeMap<String, ServiceUpdate>,
pub update_actions: BTreeMap<String, UpdateAction>,
/* private fields */
}Fields§
§account_id: String§region: String§parameter_groups: Vec<CacheParameterGroup>§subnet_groups: BTreeMap<String, CacheSubnetGroup>§reserved_cache_nodes: BTreeMap<String, ReservedCacheNode>§reserved_cache_nodes_offerings: Vec<ReservedCacheNodesOffering>§cache_clusters: BTreeMap<String, CacheCluster>§replication_groups: BTreeMap<String, ReplicationGroup>§global_replication_groups: BTreeMap<String, GlobalReplicationGroup>§users: BTreeMap<String, ElastiCacheUser>§user_groups: BTreeMap<String, ElastiCacheUserGroup>§snapshots: BTreeMap<String, CacheSnapshot>§serverless_caches: BTreeMap<String, ServerlessCache>§serverless_cache_snapshots: BTreeMap<String, ServerlessCacheSnapshot>§security_groups: BTreeMap<String, CacheSecurityGroup>§parameter_group_parameters: BTreeMap<String, Vec<CacheParameter>>§events: Vec<CacheEvent>§migrations: BTreeMap<String, Migration>Active migrations keyed by replication group id.
service_updates: BTreeMap<String, ServiceUpdate>Available service updates keyed by ServiceUpdateName, seeded with a small realistic set and read by DescribeServiceUpdates.
update_actions: BTreeMap<String, UpdateAction>Update actions keyed by “{service_update_name}#{target_kind}#{id}”. Materialized lazily from (service_updates x clusters/replication groups) and transitioned by BatchApplyUpdateAction / BatchStopUpdateAction.
Implementations§
Source§impl ElastiCacheState
impl ElastiCacheState
pub fn new(account_id: &str, region: &str) -> Self
pub fn reset(&mut self)
Sourcepub fn ensure_update_actions(&mut self)
pub fn ensure_update_actions(&mut self)
Ensure an UpdateAction exists for every (service_update, target) pair, where targets are this account’s cache clusters and replication groups. AWS auto-creates these when a service update is released; we materialize them lazily so DescribeUpdateActions and the batch ops share state.
pub fn begin_cache_cluster_creation(&mut self, cache_cluster_id: &str) -> bool
pub fn finish_cache_cluster_creation(&mut self, cluster: CacheCluster)
pub fn cancel_cache_cluster_creation(&mut self, cache_cluster_id: &str)
Sourcepub fn cache_cluster_creation_in_progress(&self, cache_cluster_id: &str) -> bool
pub fn cache_cluster_creation_in_progress(&self, cache_cluster_id: &str) -> bool
True if id is currently being created (in the lock-drop window of
CreateCacheCluster, before it is inserted into cache_clusters).
Sourcepub fn request_cache_cluster_delete_during_creation(
&mut self,
cache_cluster_id: &str,
)
pub fn request_cache_cluster_delete_during_creation( &mut self, cache_cluster_id: &str, )
Record that a DeleteCacheCluster arrived for id while it was still
being created. The create’s finish step calls
[take_cache_cluster_delete_request] to detect this and reap the
container instead of resurrecting the deleted cluster
(bug-audit 2026-05-28, 4.3).
Sourcepub fn take_cache_cluster_delete_request(
&mut self,
cache_cluster_id: &str,
) -> bool
pub fn take_cache_cluster_delete_request( &mut self, cache_cluster_id: &str, ) -> bool
Consume a pending delete request for id (set while it was creating).
Returns true if one was present, in which case the caller must drop the
in-progress marker and reap any started container without inserting the
cluster.
pub fn begin_replication_group_creation( &mut self, replication_group_id: &str, ) -> bool
pub fn finish_replication_group_creation(&mut self, group: ReplicationGroup)
pub fn cancel_replication_group_creation(&mut self, replication_group_id: &str)
pub fn begin_serverless_cache_creation( &mut self, serverless_cache_name: &str, ) -> bool
pub fn finish_serverless_cache_creation(&mut self, cache: ServerlessCache)
pub fn cancel_serverless_cache_creation(&mut self, serverless_cache_name: &str)
pub fn register_arn(&mut self, arn: &str)
pub fn has_arn(&self, arn: &str) -> bool
Trait Implementations§
Source§impl AccountState for ElastiCacheState
impl AccountState for ElastiCacheState
Source§fn new_for_account(account_id: &str, region: &str, _endpoint: &str) -> Self
fn new_for_account(account_id: &str, region: &str, _endpoint: &str) -> Self
Source§fn inherit_from(&mut self, _sibling: &Self)
fn inherit_from(&mut self, _sibling: &Self)
MultiAccountState::get_or_create,
with a reference to an existing sibling state. Services can override
this to propagate shared resources (e.g. body caches) to the new state.Source§impl Clone for ElastiCacheState
impl Clone for ElastiCacheState
Source§fn clone(&self) -> ElastiCacheState
fn clone(&self) -> ElastiCacheState
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ElastiCacheState
impl Debug for ElastiCacheState
Source§impl<'de> Deserialize<'de> for ElastiCacheState
impl<'de> Deserialize<'de> for ElastiCacheState
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for ElastiCacheState
impl RefUnwindSafe for ElastiCacheState
impl Send for ElastiCacheState
impl Sync for ElastiCacheState
impl Unpin for ElastiCacheState
impl UnsafeUnpin for ElastiCacheState
impl UnwindSafe for ElastiCacheState
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more