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
#![allow(clippy::module_inception)]
#![allow(clippy::upper_case_acronyms)]
#![allow(clippy::large_enum_variant)]
#![allow(clippy::wrong_self_convention)]
#![allow(clippy::should_implement_trait)]
#![allow(clippy::blacklisted_name)]
#![allow(clippy::vec_init_then_push)]
#![allow(rustdoc::bare_urls)]
#![warn(missing_docs)]
//! <p>Use AppConfig, a capability of Amazon Web Services Systems Manager, to create, manage, and quickly deploy
//! application configurations. AppConfig supports controlled deployments to applications of
//! any size and includes built-in validation checks and monitoring. You can use AppConfig with
//! applications hosted on Amazon EC2 instances, Lambda, containers, mobile applications, or IoT
//! devices.</p>
//! <p>To prevent errors when deploying application configurations, especially for production
//! systems where a simple typo could cause an unexpected outage, AppConfig includes
//! validators. A validator provides a syntactic or semantic check to ensure that the
//! configuration you want to deploy works as intended. To validate your application
//! configuration data, you provide a schema or an Amazon Web Services Lambda function that runs against
//! the configuration. The configuration deployment or update can only proceed when the
//! configuration data is valid.</p>
//! <p>During a configuration deployment, AppConfig monitors the application to ensure that the
//! deployment is successful. If the system encounters an error, AppConfig rolls back the
//! change to minimize impact for your application users. You can configure a deployment
//! strategy for each application or environment that includes deployment criteria, including
//! velocity, bake time, and alarms to monitor. Similar to error monitoring, if a deployment
//! triggers an alarm, AppConfig automatically rolls back to the previous version. </p>
//! <p>AppConfig supports multiple use cases. Here are some examples:</p>
//! <ul>
//! <li>
//! <p>
//! <b>Feature flags</b>: Use AppConfig to turn on new
//! features that require a timely deployment, such as a product launch or announcement.
//! </p>
//! </li>
//! <li>
//! <p>
//! <b>Application tuning</b>: Use AppConfig to carefully
//! introduce changes to your application that can only be tested with production
//! traffic.</p>
//! </li>
//! <li>
//! <p>
//! <b>Allow list</b>: Use AppConfig to allow premium
//! subscribers to access paid content. </p>
//! </li>
//! <li>
//! <p>
//! <b>Operational issues</b>: Use AppConfig to reduce
//! stress on your application when a dependency or other external factor impacts the
//! system.</p>
//! </li>
//! </ul>
//! <p>This reference is intended to be used with the <a href="http://docs.aws.amazon.com/appconfig/latest/userguide/what-is-appconfig.html">AppConfig User Guide</a>.</p>
//!
//! # Crate Organization
//!
//! The entry point for most customers will be [`Client`]. [`Client`] exposes one method for each API offered
//! by the service.
//!
//! Some APIs require complex or nested arguments. These exist in [`model`](crate::model).
//!
//! Lastly, errors that can be returned by the service are contained within [`error`]. [`Error`] defines a meta
//! error encompassing all possible errors that can be returned by the service.
//!
//! The other modules within this crate are not required for normal usage.

// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
pub use error_meta::Error;

#[doc(inline)]
pub use config::Config;

mod aws_endpoint;
/// Client and fluent builders for calling the service.
pub mod client;
/// Configuration for the service.
pub mod config;
/// Errors that can occur when calling the service.
pub mod error;
mod error_meta;
mod http_serde;
/// Input structures for operations.
pub mod input;
mod json_deser;
mod json_errors;
mod json_ser;
/// Generated accessors for nested fields
mod lens;
pub mod middleware;
/// Data structures used by operation inputs/outputs.
pub mod model;
mod no_credentials;
/// All operations that this crate can perform.
pub mod operation;
mod operation_deser;
mod operation_ser;
/// Output structures for operations.
pub mod output;
/// Paginators for the service
pub mod paginator;
/// Crate version number.
pub static PKG_VERSION: &str = env!("CARGO_PKG_VERSION");
/// Re-exported types from supporting crates.
pub mod types {
    pub use aws_smithy_http::result::SdkError;
    pub use aws_smithy_types::Blob;
    pub use aws_smithy_types::DateTime;
}
static API_METADATA: aws_http::user_agent::ApiMetadata =
    aws_http::user_agent::ApiMetadata::new("appconfig", PKG_VERSION);
pub use aws_smithy_http::endpoint::Endpoint;
pub use aws_smithy_types::retry::RetryConfig;
pub use aws_types::app_name::AppName;
pub use aws_types::region::Region;
pub use aws_types::Credentials;
#[doc(inline)]
pub use client::Client;