pub struct SesState {Show 33 fields
pub account_id: String,
pub region: String,
pub identities: BTreeMap<String, EmailIdentity>,
pub configuration_sets: BTreeMap<String, ConfigurationSet>,
pub templates: BTreeMap<String, EmailTemplate>,
pub sent_emails: Vec<SentEmail>,
pub bounces: Vec<SentBounce>,
pub contact_lists: BTreeMap<String, ContactList>,
pub contacts: BTreeMap<String, BTreeMap<String, Contact>>,
pub tags: BTreeMap<String, BTreeMap<String, String>>,
pub suppressed_destinations: BTreeMap<String, SuppressedDestination>,
pub event_destinations: BTreeMap<String, Vec<EventDestination>>,
pub identity_policies: BTreeMap<String, BTreeMap<String, String>>,
pub custom_verification_email_templates: BTreeMap<String, CustomVerificationEmailTemplate>,
pub dedicated_ip_pools: BTreeMap<String, DedicatedIpPool>,
pub dedicated_ips: BTreeMap<String, DedicatedIp>,
pub multi_region_endpoints: BTreeMap<String, MultiRegionEndpoint>,
pub account_settings: AccountSettings,
pub import_jobs: BTreeMap<String, ImportJob>,
pub export_jobs: BTreeMap<String, ExportJob>,
pub tenants: BTreeMap<String, Tenant>,
pub tenant_resource_associations: BTreeMap<String, Vec<TenantResourceAssociation>>,
pub reputation_entities: BTreeMap<String, ReputationEntityState>,
pub receipt_rule_sets: BTreeMap<String, ReceiptRuleSet>,
pub active_receipt_rule_set: Option<String>,
pub receipt_filters: BTreeMap<String, ReceiptFilter>,
pub inbound_emails: Vec<InboundEmail>,
pub smtp_submissions: Vec<SmtpSubmission>,
pub event_destination_dispatches: Vec<EventDestinationDispatch>,
pub deliverability_dashboard: DeliverabilityDashboard,
pub deliverability_test_reports: BTreeMap<String, DeliverabilityTestReport>,
pub vdm_recommendations: Vec<VdmRecommendation>,
pub suppressed_drops_total: u64,
}Fields§
§account_id: String§region: String§identities: BTreeMap<String, EmailIdentity>§configuration_sets: BTreeMap<String, ConfigurationSet>§templates: BTreeMap<String, EmailTemplate>§sent_emails: Vec<SentEmail>§bounces: Vec<SentBounce>§contact_lists: BTreeMap<String, ContactList>§contacts: BTreeMap<String, BTreeMap<String, Contact>>Tags keyed by resource ARN, value is key→value tag map.
suppressed_destinations: BTreeMap<String, SuppressedDestination>Suppression list: email → suppressed destination info.
event_destinations: BTreeMap<String, Vec<EventDestination>>Event destinations: config set name → list of event destinations.
identity_policies: BTreeMap<String, BTreeMap<String, String>>Identity policies: identity name → policy name → policy JSON document.
custom_verification_email_templates: BTreeMap<String, CustomVerificationEmailTemplate>Custom verification email templates: template name → template.
dedicated_ip_pools: BTreeMap<String, DedicatedIpPool>Dedicated IP pools: pool name → pool.
dedicated_ips: BTreeMap<String, DedicatedIp>Dedicated IPs: IP address → dedicated IP info.
multi_region_endpoints: BTreeMap<String, MultiRegionEndpoint>Multi-region endpoints: endpoint name → endpoint.
account_settings: AccountSettingsAccount-level settings (sending, suppression, VDM, details).
import_jobs: BTreeMap<String, ImportJob>Import jobs: job_id → ImportJob.
export_jobs: BTreeMap<String, ExportJob>Export jobs: job_id → ExportJob.
tenants: BTreeMap<String, Tenant>Tenants: tenant_name → Tenant.
tenant_resource_associations: BTreeMap<String, Vec<TenantResourceAssociation>>Tenant resource associations: tenant_name → Vec<resource_arn>.
reputation_entities: BTreeMap<String, ReputationEntityState>Reputation entities: “type/reference” → ReputationEntity.
receipt_rule_sets: BTreeMap<String, ReceiptRuleSet>Receipt rule sets: name → rule set.
active_receipt_rule_set: Option<String>Which rule set is active (by name).
receipt_filters: BTreeMap<String, ReceiptFilter>Receipt filters: name → filter.
inbound_emails: Vec<InboundEmail>Inbound emails processed by the introspection endpoint.
smtp_submissions: Vec<SmtpSubmission>Emails accepted via the SMTP submission listener
(FAKECLOUD_SES_SMTP_PORT).
event_destination_dispatches: Vec<EventDestinationDispatch>Log of every event-destination dispatch performed by the SES
fanout. Used by the
/_fakecloud/ses/event-destinations/deliveries introspection
endpoint to prove kinesis/firehose/cloudwatch wiring works without
having to peek into the downstream services’ state.
deliverability_dashboard: DeliverabilityDashboardDeliverability dashboard subscription state.
deliverability_test_reports: BTreeMap<String, DeliverabilityTestReport>Deliverability test reports keyed by ReportId.
vdm_recommendations: Vec<VdmRecommendation>VDM recommendations (read-only, lazily seeded once on first read).
suppressed_drops_total: u64Running count of recipients dropped because they were on the
suppression list (gated by the effective SuppressedReasons
filter). Surfaced through the introspection endpoint so tests can
assert the gate fired.
Implementations§
Source§impl SesState
impl SesState
pub fn new(account_id: &str, region: &str) -> Self
Sourcepub fn effective_suppressed_reasons(
&self,
config_set_name: Option<&str>,
) -> Vec<String>
pub fn effective_suppressed_reasons( &self, config_set_name: Option<&str>, ) -> Vec<String>
Effective SuppressedReasons for a send. Configuration-set scope
wins when populated; otherwise we fall back to the account-level
list. An empty list at both scopes is treated as “enforce both
reasons” (BOUNCE + COMPLAINT) — that matches the historical
fakecloud contract, and AWS callers who never call
PutAccountSuppressionAttributes still expect the suppression list
they explicitly populated to take effect.
Sourcepub fn suppressed_match(
&self,
address: &str,
config_set_name: Option<&str>,
) -> Option<&SuppressedDestination>
pub fn suppressed_match( &self, address: &str, config_set_name: Option<&str>, ) -> Option<&SuppressedDestination>
Look up address against the suppression list (case-insensitive,
trimmed). Returns the matching SuppressedDestination only when
the stored reason is enforced under the effective filter for the
supplied configuration-set scope.
Trait Implementations§
Source§impl AccountState for SesState
impl AccountState for SesState
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.