use crate::options::Region;
use super::{partition_key_range_id::PartitionKeyRangeId, CosmosEndpoint, UnavailableReason};
#[derive(Clone, Debug)]
pub(crate) enum LocationEffect {
MarkEndpointUnavailable {
endpoint: CosmosEndpoint,
reason: UnavailableReason,
},
MarkPartitionUnavailable(UnavailablePartition),
RefreshAccountProperties,
}
#[derive(Clone, Debug)]
pub(crate) struct UnavailablePartition {
pub partition_key_range_id: Option<PartitionKeyRangeId>,
pub region: Option<Region>,
pub is_read: bool,
pub is_partitioned_resource: bool,
}