#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct ConfigurationOverrides {
#[doc(hidden)]
pub application_configuration: std::option::Option<std::vec::Vec<crate::model::Configuration>>,
#[doc(hidden)]
pub monitoring_configuration: std::option::Option<crate::model::MonitoringConfiguration>,
}
impl ConfigurationOverrides {
pub fn application_configuration(&self) -> std::option::Option<&[crate::model::Configuration]> {
self.application_configuration.as_deref()
}
pub fn monitoring_configuration(
&self,
) -> std::option::Option<&crate::model::MonitoringConfiguration> {
self.monitoring_configuration.as_ref()
}
}
pub mod configuration_overrides {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) application_configuration:
std::option::Option<std::vec::Vec<crate::model::Configuration>>,
pub(crate) monitoring_configuration:
std::option::Option<crate::model::MonitoringConfiguration>,
}
impl Builder {
pub fn application_configuration(mut self, input: crate::model::Configuration) -> Self {
let mut v = self.application_configuration.unwrap_or_default();
v.push(input);
self.application_configuration = Some(v);
self
}
pub fn set_application_configuration(
mut self,
input: std::option::Option<std::vec::Vec<crate::model::Configuration>>,
) -> Self {
self.application_configuration = input;
self
}
pub fn monitoring_configuration(
mut self,
input: crate::model::MonitoringConfiguration,
) -> Self {
self.monitoring_configuration = Some(input);
self
}
pub fn set_monitoring_configuration(
mut self,
input: std::option::Option<crate::model::MonitoringConfiguration>,
) -> Self {
self.monitoring_configuration = input;
self
}
pub fn build(self) -> crate::model::ConfigurationOverrides {
crate::model::ConfigurationOverrides {
application_configuration: self.application_configuration,
monitoring_configuration: self.monitoring_configuration,
}
}
}
}
impl ConfigurationOverrides {
pub fn builder() -> crate::model::configuration_overrides::Builder {
crate::model::configuration_overrides::Builder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct MonitoringConfiguration {
#[doc(hidden)]
pub persistent_app_ui: std::option::Option<crate::model::PersistentAppUi>,
#[doc(hidden)]
pub cloud_watch_monitoring_configuration:
std::option::Option<crate::model::CloudWatchMonitoringConfiguration>,
#[doc(hidden)]
pub s3_monitoring_configuration: std::option::Option<crate::model::S3MonitoringConfiguration>,
}
impl MonitoringConfiguration {
pub fn persistent_app_ui(&self) -> std::option::Option<&crate::model::PersistentAppUi> {
self.persistent_app_ui.as_ref()
}
pub fn cloud_watch_monitoring_configuration(
&self,
) -> std::option::Option<&crate::model::CloudWatchMonitoringConfiguration> {
self.cloud_watch_monitoring_configuration.as_ref()
}
pub fn s3_monitoring_configuration(
&self,
) -> std::option::Option<&crate::model::S3MonitoringConfiguration> {
self.s3_monitoring_configuration.as_ref()
}
}
pub mod monitoring_configuration {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) persistent_app_ui: std::option::Option<crate::model::PersistentAppUi>,
pub(crate) cloud_watch_monitoring_configuration:
std::option::Option<crate::model::CloudWatchMonitoringConfiguration>,
pub(crate) s3_monitoring_configuration:
std::option::Option<crate::model::S3MonitoringConfiguration>,
}
impl Builder {
pub fn persistent_app_ui(mut self, input: crate::model::PersistentAppUi) -> Self {
self.persistent_app_ui = Some(input);
self
}
pub fn set_persistent_app_ui(
mut self,
input: std::option::Option<crate::model::PersistentAppUi>,
) -> Self {
self.persistent_app_ui = input;
self
}
pub fn cloud_watch_monitoring_configuration(
mut self,
input: crate::model::CloudWatchMonitoringConfiguration,
) -> Self {
self.cloud_watch_monitoring_configuration = Some(input);
self
}
pub fn set_cloud_watch_monitoring_configuration(
mut self,
input: std::option::Option<crate::model::CloudWatchMonitoringConfiguration>,
) -> Self {
self.cloud_watch_monitoring_configuration = input;
self
}
pub fn s3_monitoring_configuration(
mut self,
input: crate::model::S3MonitoringConfiguration,
) -> Self {
self.s3_monitoring_configuration = Some(input);
self
}
pub fn set_s3_monitoring_configuration(
mut self,
input: std::option::Option<crate::model::S3MonitoringConfiguration>,
) -> Self {
self.s3_monitoring_configuration = input;
self
}
pub fn build(self) -> crate::model::MonitoringConfiguration {
crate::model::MonitoringConfiguration {
persistent_app_ui: self.persistent_app_ui,
cloud_watch_monitoring_configuration: self.cloud_watch_monitoring_configuration,
s3_monitoring_configuration: self.s3_monitoring_configuration,
}
}
}
}
impl MonitoringConfiguration {
pub fn builder() -> crate::model::monitoring_configuration::Builder {
crate::model::monitoring_configuration::Builder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct S3MonitoringConfiguration {
#[doc(hidden)]
pub log_uri: std::option::Option<std::string::String>,
}
impl S3MonitoringConfiguration {
pub fn log_uri(&self) -> std::option::Option<&str> {
self.log_uri.as_deref()
}
}
pub mod s3_monitoring_configuration {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) log_uri: std::option::Option<std::string::String>,
}
impl Builder {
pub fn log_uri(mut self, input: impl Into<std::string::String>) -> Self {
self.log_uri = Some(input.into());
self
}
pub fn set_log_uri(mut self, input: std::option::Option<std::string::String>) -> Self {
self.log_uri = input;
self
}
pub fn build(self) -> crate::model::S3MonitoringConfiguration {
crate::model::S3MonitoringConfiguration {
log_uri: self.log_uri,
}
}
}
}
impl S3MonitoringConfiguration {
pub fn builder() -> crate::model::s3_monitoring_configuration::Builder {
crate::model::s3_monitoring_configuration::Builder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct CloudWatchMonitoringConfiguration {
#[doc(hidden)]
pub log_group_name: std::option::Option<std::string::String>,
#[doc(hidden)]
pub log_stream_name_prefix: std::option::Option<std::string::String>,
}
impl CloudWatchMonitoringConfiguration {
pub fn log_group_name(&self) -> std::option::Option<&str> {
self.log_group_name.as_deref()
}
pub fn log_stream_name_prefix(&self) -> std::option::Option<&str> {
self.log_stream_name_prefix.as_deref()
}
}
pub mod cloud_watch_monitoring_configuration {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) log_group_name: std::option::Option<std::string::String>,
pub(crate) log_stream_name_prefix: std::option::Option<std::string::String>,
}
impl Builder {
pub fn log_group_name(mut self, input: impl Into<std::string::String>) -> Self {
self.log_group_name = Some(input.into());
self
}
pub fn set_log_group_name(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.log_group_name = input;
self
}
pub fn log_stream_name_prefix(mut self, input: impl Into<std::string::String>) -> Self {
self.log_stream_name_prefix = Some(input.into());
self
}
pub fn set_log_stream_name_prefix(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.log_stream_name_prefix = input;
self
}
pub fn build(self) -> crate::model::CloudWatchMonitoringConfiguration {
crate::model::CloudWatchMonitoringConfiguration {
log_group_name: self.log_group_name,
log_stream_name_prefix: self.log_stream_name_prefix,
}
}
}
}
impl CloudWatchMonitoringConfiguration {
pub fn builder() -> crate::model::cloud_watch_monitoring_configuration::Builder {
crate::model::cloud_watch_monitoring_configuration::Builder::default()
}
}
#[allow(missing_docs)] #[non_exhaustive]
#[derive(
std::clone::Clone,
std::cmp::Eq,
std::cmp::Ord,
std::cmp::PartialEq,
std::cmp::PartialOrd,
std::fmt::Debug,
std::hash::Hash,
)]
pub enum PersistentAppUi {
#[allow(missing_docs)] Disabled,
#[allow(missing_docs)] Enabled,
Unknown(crate::types::UnknownVariantValue),
}
impl std::convert::From<&str> for PersistentAppUi {
fn from(s: &str) -> Self {
match s {
"DISABLED" => PersistentAppUi::Disabled,
"ENABLED" => PersistentAppUi::Enabled,
other => PersistentAppUi::Unknown(crate::types::UnknownVariantValue(other.to_owned())),
}
}
}
impl std::str::FromStr for PersistentAppUi {
type Err = std::convert::Infallible;
fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
Ok(PersistentAppUi::from(s))
}
}
impl PersistentAppUi {
pub fn as_str(&self) -> &str {
match self {
PersistentAppUi::Disabled => "DISABLED",
PersistentAppUi::Enabled => "ENABLED",
PersistentAppUi::Unknown(value) => value.as_str(),
}
}
pub const fn values() -> &'static [&'static str] {
&["DISABLED", "ENABLED"]
}
}
impl AsRef<str> for PersistentAppUi {
fn as_ref(&self) -> &str {
self.as_str()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq)]
pub struct Configuration {
#[doc(hidden)]
pub classification: std::option::Option<std::string::String>,
#[doc(hidden)]
pub properties:
std::option::Option<std::collections::HashMap<std::string::String, std::string::String>>,
#[doc(hidden)]
pub configurations: std::option::Option<std::vec::Vec<crate::model::Configuration>>,
}
impl Configuration {
pub fn classification(&self) -> std::option::Option<&str> {
self.classification.as_deref()
}
pub fn properties(
&self,
) -> std::option::Option<&std::collections::HashMap<std::string::String, std::string::String>>
{
self.properties.as_ref()
}
pub fn configurations(&self) -> std::option::Option<&[crate::model::Configuration]> {
self.configurations.as_deref()
}
}
impl std::fmt::Debug for Configuration {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
let mut formatter = f.debug_struct("Configuration");
formatter.field("classification", &self.classification);
formatter.field("properties", &"*** Sensitive Data Redacted ***");
formatter.field("configurations", &self.configurations);
formatter.finish()
}
}
pub mod configuration {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default)]
pub struct Builder {
pub(crate) classification: std::option::Option<std::string::String>,
pub(crate) properties: std::option::Option<
std::collections::HashMap<std::string::String, std::string::String>,
>,
pub(crate) configurations: std::option::Option<std::vec::Vec<crate::model::Configuration>>,
}
impl Builder {
pub fn classification(mut self, input: impl Into<std::string::String>) -> Self {
self.classification = Some(input.into());
self
}
pub fn set_classification(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.classification = input;
self
}
pub fn properties(
mut self,
k: impl Into<std::string::String>,
v: impl Into<std::string::String>,
) -> Self {
let mut hash_map = self.properties.unwrap_or_default();
hash_map.insert(k.into(), v.into());
self.properties = Some(hash_map);
self
}
pub fn set_properties(
mut self,
input: std::option::Option<
std::collections::HashMap<std::string::String, std::string::String>,
>,
) -> Self {
self.properties = input;
self
}
pub fn configurations(mut self, input: crate::model::Configuration) -> Self {
let mut v = self.configurations.unwrap_or_default();
v.push(input);
self.configurations = Some(v);
self
}
pub fn set_configurations(
mut self,
input: std::option::Option<std::vec::Vec<crate::model::Configuration>>,
) -> Self {
self.configurations = input;
self
}
pub fn build(self) -> crate::model::Configuration {
crate::model::Configuration {
classification: self.classification,
properties: self.properties,
configurations: self.configurations,
}
}
}
impl std::fmt::Debug for Builder {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
let mut formatter = f.debug_struct("Builder");
formatter.field("classification", &self.classification);
formatter.field("properties", &"*** Sensitive Data Redacted ***");
formatter.field("configurations", &self.configurations);
formatter.finish()
}
}
}
impl Configuration {
pub fn builder() -> crate::model::configuration::Builder {
crate::model::configuration::Builder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct JobDriver {
#[doc(hidden)]
pub spark_submit_job_driver: std::option::Option<crate::model::SparkSubmitJobDriver>,
#[doc(hidden)]
pub spark_sql_job_driver: std::option::Option<crate::model::SparkSqlJobDriver>,
}
impl JobDriver {
pub fn spark_submit_job_driver(
&self,
) -> std::option::Option<&crate::model::SparkSubmitJobDriver> {
self.spark_submit_job_driver.as_ref()
}
pub fn spark_sql_job_driver(&self) -> std::option::Option<&crate::model::SparkSqlJobDriver> {
self.spark_sql_job_driver.as_ref()
}
}
pub mod job_driver {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) spark_submit_job_driver: std::option::Option<crate::model::SparkSubmitJobDriver>,
pub(crate) spark_sql_job_driver: std::option::Option<crate::model::SparkSqlJobDriver>,
}
impl Builder {
pub fn spark_submit_job_driver(
mut self,
input: crate::model::SparkSubmitJobDriver,
) -> Self {
self.spark_submit_job_driver = Some(input);
self
}
pub fn set_spark_submit_job_driver(
mut self,
input: std::option::Option<crate::model::SparkSubmitJobDriver>,
) -> Self {
self.spark_submit_job_driver = input;
self
}
pub fn spark_sql_job_driver(mut self, input: crate::model::SparkSqlJobDriver) -> Self {
self.spark_sql_job_driver = Some(input);
self
}
pub fn set_spark_sql_job_driver(
mut self,
input: std::option::Option<crate::model::SparkSqlJobDriver>,
) -> Self {
self.spark_sql_job_driver = input;
self
}
pub fn build(self) -> crate::model::JobDriver {
crate::model::JobDriver {
spark_submit_job_driver: self.spark_submit_job_driver,
spark_sql_job_driver: self.spark_sql_job_driver,
}
}
}
}
impl JobDriver {
pub fn builder() -> crate::model::job_driver::Builder {
crate::model::job_driver::Builder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq)]
pub struct SparkSqlJobDriver {
#[doc(hidden)]
pub entry_point: std::option::Option<std::string::String>,
#[doc(hidden)]
pub spark_sql_parameters: std::option::Option<std::string::String>,
}
impl SparkSqlJobDriver {
pub fn entry_point(&self) -> std::option::Option<&str> {
self.entry_point.as_deref()
}
pub fn spark_sql_parameters(&self) -> std::option::Option<&str> {
self.spark_sql_parameters.as_deref()
}
}
impl std::fmt::Debug for SparkSqlJobDriver {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
let mut formatter = f.debug_struct("SparkSqlJobDriver");
formatter.field("entry_point", &"*** Sensitive Data Redacted ***");
formatter.field("spark_sql_parameters", &"*** Sensitive Data Redacted ***");
formatter.finish()
}
}
pub mod spark_sql_job_driver {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default)]
pub struct Builder {
pub(crate) entry_point: std::option::Option<std::string::String>,
pub(crate) spark_sql_parameters: std::option::Option<std::string::String>,
}
impl Builder {
pub fn entry_point(mut self, input: impl Into<std::string::String>) -> Self {
self.entry_point = Some(input.into());
self
}
pub fn set_entry_point(mut self, input: std::option::Option<std::string::String>) -> Self {
self.entry_point = input;
self
}
pub fn spark_sql_parameters(mut self, input: impl Into<std::string::String>) -> Self {
self.spark_sql_parameters = Some(input.into());
self
}
pub fn set_spark_sql_parameters(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.spark_sql_parameters = input;
self
}
pub fn build(self) -> crate::model::SparkSqlJobDriver {
crate::model::SparkSqlJobDriver {
entry_point: self.entry_point,
spark_sql_parameters: self.spark_sql_parameters,
}
}
}
impl std::fmt::Debug for Builder {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
let mut formatter = f.debug_struct("Builder");
formatter.field("entry_point", &"*** Sensitive Data Redacted ***");
formatter.field("spark_sql_parameters", &"*** Sensitive Data Redacted ***");
formatter.finish()
}
}
}
impl SparkSqlJobDriver {
pub fn builder() -> crate::model::spark_sql_job_driver::Builder {
crate::model::spark_sql_job_driver::Builder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq)]
pub struct SparkSubmitJobDriver {
#[doc(hidden)]
pub entry_point: std::option::Option<std::string::String>,
#[doc(hidden)]
pub entry_point_arguments: std::option::Option<std::vec::Vec<std::string::String>>,
#[doc(hidden)]
pub spark_submit_parameters: std::option::Option<std::string::String>,
}
impl SparkSubmitJobDriver {
pub fn entry_point(&self) -> std::option::Option<&str> {
self.entry_point.as_deref()
}
pub fn entry_point_arguments(&self) -> std::option::Option<&[std::string::String]> {
self.entry_point_arguments.as_deref()
}
pub fn spark_submit_parameters(&self) -> std::option::Option<&str> {
self.spark_submit_parameters.as_deref()
}
}
impl std::fmt::Debug for SparkSubmitJobDriver {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
let mut formatter = f.debug_struct("SparkSubmitJobDriver");
formatter.field("entry_point", &"*** Sensitive Data Redacted ***");
formatter.field("entry_point_arguments", &self.entry_point_arguments);
formatter.field(
"spark_submit_parameters",
&"*** Sensitive Data Redacted ***",
);
formatter.finish()
}
}
pub mod spark_submit_job_driver {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default)]
pub struct Builder {
pub(crate) entry_point: std::option::Option<std::string::String>,
pub(crate) entry_point_arguments: std::option::Option<std::vec::Vec<std::string::String>>,
pub(crate) spark_submit_parameters: std::option::Option<std::string::String>,
}
impl Builder {
pub fn entry_point(mut self, input: impl Into<std::string::String>) -> Self {
self.entry_point = Some(input.into());
self
}
pub fn set_entry_point(mut self, input: std::option::Option<std::string::String>) -> Self {
self.entry_point = input;
self
}
pub fn entry_point_arguments(mut self, input: impl Into<std::string::String>) -> Self {
let mut v = self.entry_point_arguments.unwrap_or_default();
v.push(input.into());
self.entry_point_arguments = Some(v);
self
}
pub fn set_entry_point_arguments(
mut self,
input: std::option::Option<std::vec::Vec<std::string::String>>,
) -> Self {
self.entry_point_arguments = input;
self
}
pub fn spark_submit_parameters(mut self, input: impl Into<std::string::String>) -> Self {
self.spark_submit_parameters = Some(input.into());
self
}
pub fn set_spark_submit_parameters(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.spark_submit_parameters = input;
self
}
pub fn build(self) -> crate::model::SparkSubmitJobDriver {
crate::model::SparkSubmitJobDriver {
entry_point: self.entry_point,
entry_point_arguments: self.entry_point_arguments,
spark_submit_parameters: self.spark_submit_parameters,
}
}
}
impl std::fmt::Debug for Builder {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
let mut formatter = f.debug_struct("Builder");
formatter.field("entry_point", &"*** Sensitive Data Redacted ***");
formatter.field("entry_point_arguments", &self.entry_point_arguments);
formatter.field(
"spark_submit_parameters",
&"*** Sensitive Data Redacted ***",
);
formatter.finish()
}
}
}
impl SparkSubmitJobDriver {
pub fn builder() -> crate::model::spark_submit_job_driver::Builder {
crate::model::spark_submit_job_driver::Builder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct VirtualCluster {
#[doc(hidden)]
pub id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub name: std::option::Option<std::string::String>,
#[doc(hidden)]
pub arn: std::option::Option<std::string::String>,
#[doc(hidden)]
pub state: std::option::Option<crate::model::VirtualClusterState>,
#[doc(hidden)]
pub container_provider: std::option::Option<crate::model::ContainerProvider>,
#[doc(hidden)]
pub created_at: std::option::Option<aws_smithy_types::DateTime>,
#[doc(hidden)]
pub tags:
std::option::Option<std::collections::HashMap<std::string::String, std::string::String>>,
}
impl VirtualCluster {
pub fn id(&self) -> std::option::Option<&str> {
self.id.as_deref()
}
pub fn name(&self) -> std::option::Option<&str> {
self.name.as_deref()
}
pub fn arn(&self) -> std::option::Option<&str> {
self.arn.as_deref()
}
pub fn state(&self) -> std::option::Option<&crate::model::VirtualClusterState> {
self.state.as_ref()
}
pub fn container_provider(&self) -> std::option::Option<&crate::model::ContainerProvider> {
self.container_provider.as_ref()
}
pub fn created_at(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
self.created_at.as_ref()
}
pub fn tags(
&self,
) -> std::option::Option<&std::collections::HashMap<std::string::String, std::string::String>>
{
self.tags.as_ref()
}
}
pub mod virtual_cluster {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) id: std::option::Option<std::string::String>,
pub(crate) name: std::option::Option<std::string::String>,
pub(crate) arn: std::option::Option<std::string::String>,
pub(crate) state: std::option::Option<crate::model::VirtualClusterState>,
pub(crate) container_provider: std::option::Option<crate::model::ContainerProvider>,
pub(crate) created_at: std::option::Option<aws_smithy_types::DateTime>,
pub(crate) tags: std::option::Option<
std::collections::HashMap<std::string::String, std::string::String>,
>,
}
impl Builder {
pub fn id(mut self, input: impl Into<std::string::String>) -> Self {
self.id = Some(input.into());
self
}
pub fn set_id(mut self, input: std::option::Option<std::string::String>) -> Self {
self.id = input;
self
}
pub fn name(mut self, input: impl Into<std::string::String>) -> Self {
self.name = Some(input.into());
self
}
pub fn set_name(mut self, input: std::option::Option<std::string::String>) -> Self {
self.name = input;
self
}
pub fn arn(mut self, input: impl Into<std::string::String>) -> Self {
self.arn = Some(input.into());
self
}
pub fn set_arn(mut self, input: std::option::Option<std::string::String>) -> Self {
self.arn = input;
self
}
pub fn state(mut self, input: crate::model::VirtualClusterState) -> Self {
self.state = Some(input);
self
}
pub fn set_state(
mut self,
input: std::option::Option<crate::model::VirtualClusterState>,
) -> Self {
self.state = input;
self
}
pub fn container_provider(mut self, input: crate::model::ContainerProvider) -> Self {
self.container_provider = Some(input);
self
}
pub fn set_container_provider(
mut self,
input: std::option::Option<crate::model::ContainerProvider>,
) -> Self {
self.container_provider = input;
self
}
pub fn created_at(mut self, input: aws_smithy_types::DateTime) -> Self {
self.created_at = Some(input);
self
}
pub fn set_created_at(
mut self,
input: std::option::Option<aws_smithy_types::DateTime>,
) -> Self {
self.created_at = input;
self
}
pub fn tags(
mut self,
k: impl Into<std::string::String>,
v: impl Into<std::string::String>,
) -> Self {
let mut hash_map = self.tags.unwrap_or_default();
hash_map.insert(k.into(), v.into());
self.tags = Some(hash_map);
self
}
pub fn set_tags(
mut self,
input: std::option::Option<
std::collections::HashMap<std::string::String, std::string::String>,
>,
) -> Self {
self.tags = input;
self
}
pub fn build(self) -> crate::model::VirtualCluster {
crate::model::VirtualCluster {
id: self.id,
name: self.name,
arn: self.arn,
state: self.state,
container_provider: self.container_provider,
created_at: self.created_at,
tags: self.tags,
}
}
}
}
impl VirtualCluster {
pub fn builder() -> crate::model::virtual_cluster::Builder {
crate::model::virtual_cluster::Builder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct ContainerProvider {
#[doc(hidden)]
pub r#type: std::option::Option<crate::model::ContainerProviderType>,
#[doc(hidden)]
pub id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub info: std::option::Option<crate::model::ContainerInfo>,
}
impl ContainerProvider {
pub fn r#type(&self) -> std::option::Option<&crate::model::ContainerProviderType> {
self.r#type.as_ref()
}
pub fn id(&self) -> std::option::Option<&str> {
self.id.as_deref()
}
pub fn info(&self) -> std::option::Option<&crate::model::ContainerInfo> {
self.info.as_ref()
}
}
pub mod container_provider {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) r#type: std::option::Option<crate::model::ContainerProviderType>,
pub(crate) id: std::option::Option<std::string::String>,
pub(crate) info: std::option::Option<crate::model::ContainerInfo>,
}
impl Builder {
pub fn r#type(mut self, input: crate::model::ContainerProviderType) -> Self {
self.r#type = Some(input);
self
}
pub fn set_type(
mut self,
input: std::option::Option<crate::model::ContainerProviderType>,
) -> Self {
self.r#type = input;
self
}
pub fn id(mut self, input: impl Into<std::string::String>) -> Self {
self.id = Some(input.into());
self
}
pub fn set_id(mut self, input: std::option::Option<std::string::String>) -> Self {
self.id = input;
self
}
pub fn info(mut self, input: crate::model::ContainerInfo) -> Self {
self.info = Some(input);
self
}
pub fn set_info(mut self, input: std::option::Option<crate::model::ContainerInfo>) -> Self {
self.info = input;
self
}
pub fn build(self) -> crate::model::ContainerProvider {
crate::model::ContainerProvider {
r#type: self.r#type,
id: self.id,
info: self.info,
}
}
}
}
impl ContainerProvider {
pub fn builder() -> crate::model::container_provider::Builder {
crate::model::container_provider::Builder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub enum ContainerInfo {
EksInfo(crate::model::EksInfo),
#[non_exhaustive]
Unknown,
}
impl ContainerInfo {
#[allow(irrefutable_let_patterns)]
pub fn as_eks_info(&self) -> std::result::Result<&crate::model::EksInfo, &Self> {
if let ContainerInfo::EksInfo(val) = &self {
Ok(val)
} else {
Err(self)
}
}
pub fn is_eks_info(&self) -> bool {
self.as_eks_info().is_ok()
}
pub fn is_unknown(&self) -> bool {
matches!(self, Self::Unknown)
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct EksInfo {
#[doc(hidden)]
pub namespace: std::option::Option<std::string::String>,
}
impl EksInfo {
pub fn namespace(&self) -> std::option::Option<&str> {
self.namespace.as_deref()
}
}
pub mod eks_info {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) namespace: std::option::Option<std::string::String>,
}
impl Builder {
pub fn namespace(mut self, input: impl Into<std::string::String>) -> Self {
self.namespace = Some(input.into());
self
}
pub fn set_namespace(mut self, input: std::option::Option<std::string::String>) -> Self {
self.namespace = input;
self
}
pub fn build(self) -> crate::model::EksInfo {
crate::model::EksInfo {
namespace: self.namespace,
}
}
}
}
impl EksInfo {
pub fn builder() -> crate::model::eks_info::Builder {
crate::model::eks_info::Builder::default()
}
}
#[allow(missing_docs)] #[non_exhaustive]
#[derive(
std::clone::Clone,
std::cmp::Eq,
std::cmp::Ord,
std::cmp::PartialEq,
std::cmp::PartialOrd,
std::fmt::Debug,
std::hash::Hash,
)]
pub enum ContainerProviderType {
#[allow(missing_docs)] Eks,
Unknown(crate::types::UnknownVariantValue),
}
impl std::convert::From<&str> for ContainerProviderType {
fn from(s: &str) -> Self {
match s {
"EKS" => ContainerProviderType::Eks,
other => {
ContainerProviderType::Unknown(crate::types::UnknownVariantValue(other.to_owned()))
}
}
}
}
impl std::str::FromStr for ContainerProviderType {
type Err = std::convert::Infallible;
fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
Ok(ContainerProviderType::from(s))
}
}
impl ContainerProviderType {
pub fn as_str(&self) -> &str {
match self {
ContainerProviderType::Eks => "EKS",
ContainerProviderType::Unknown(value) => value.as_str(),
}
}
pub const fn values() -> &'static [&'static str] {
&["EKS"]
}
}
impl AsRef<str> for ContainerProviderType {
fn as_ref(&self) -> &str {
self.as_str()
}
}
#[allow(missing_docs)] #[non_exhaustive]
#[derive(
std::clone::Clone,
std::cmp::Eq,
std::cmp::Ord,
std::cmp::PartialEq,
std::cmp::PartialOrd,
std::fmt::Debug,
std::hash::Hash,
)]
pub enum VirtualClusterState {
#[allow(missing_docs)] Arrested,
#[allow(missing_docs)] Running,
#[allow(missing_docs)] Terminated,
#[allow(missing_docs)] Terminating,
Unknown(crate::types::UnknownVariantValue),
}
impl std::convert::From<&str> for VirtualClusterState {
fn from(s: &str) -> Self {
match s {
"ARRESTED" => VirtualClusterState::Arrested,
"RUNNING" => VirtualClusterState::Running,
"TERMINATED" => VirtualClusterState::Terminated,
"TERMINATING" => VirtualClusterState::Terminating,
other => {
VirtualClusterState::Unknown(crate::types::UnknownVariantValue(other.to_owned()))
}
}
}
}
impl std::str::FromStr for VirtualClusterState {
type Err = std::convert::Infallible;
fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
Ok(VirtualClusterState::from(s))
}
}
impl VirtualClusterState {
pub fn as_str(&self) -> &str {
match self {
VirtualClusterState::Arrested => "ARRESTED",
VirtualClusterState::Running => "RUNNING",
VirtualClusterState::Terminated => "TERMINATED",
VirtualClusterState::Terminating => "TERMINATING",
VirtualClusterState::Unknown(value) => value.as_str(),
}
}
pub const fn values() -> &'static [&'static str] {
&["ARRESTED", "RUNNING", "TERMINATED", "TERMINATING"]
}
}
impl AsRef<str> for VirtualClusterState {
fn as_ref(&self) -> &str {
self.as_str()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct Endpoint {
#[doc(hidden)]
pub id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub name: std::option::Option<std::string::String>,
#[doc(hidden)]
pub arn: std::option::Option<std::string::String>,
#[doc(hidden)]
pub virtual_cluster_id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub r#type: std::option::Option<std::string::String>,
#[doc(hidden)]
pub state: std::option::Option<crate::model::EndpointState>,
#[doc(hidden)]
pub release_label: std::option::Option<std::string::String>,
#[doc(hidden)]
pub execution_role_arn: std::option::Option<std::string::String>,
#[deprecated(
note = "Customer provided certificate-arn is deprecated and would be removed in future."
)]
#[doc(hidden)]
pub certificate_arn: std::option::Option<std::string::String>,
#[doc(hidden)]
pub certificate_authority: std::option::Option<crate::model::Certificate>,
#[doc(hidden)]
pub configuration_overrides: std::option::Option<crate::model::ConfigurationOverrides>,
#[doc(hidden)]
pub server_url: std::option::Option<std::string::String>,
#[doc(hidden)]
pub created_at: std::option::Option<aws_smithy_types::DateTime>,
#[doc(hidden)]
pub security_group: std::option::Option<std::string::String>,
#[doc(hidden)]
pub subnet_ids: std::option::Option<std::vec::Vec<std::string::String>>,
#[doc(hidden)]
pub state_details: std::option::Option<std::string::String>,
#[doc(hidden)]
pub failure_reason: std::option::Option<crate::model::FailureReason>,
#[doc(hidden)]
pub tags:
std::option::Option<std::collections::HashMap<std::string::String, std::string::String>>,
}
impl Endpoint {
pub fn id(&self) -> std::option::Option<&str> {
self.id.as_deref()
}
pub fn name(&self) -> std::option::Option<&str> {
self.name.as_deref()
}
pub fn arn(&self) -> std::option::Option<&str> {
self.arn.as_deref()
}
pub fn virtual_cluster_id(&self) -> std::option::Option<&str> {
self.virtual_cluster_id.as_deref()
}
pub fn r#type(&self) -> std::option::Option<&str> {
self.r#type.as_deref()
}
pub fn state(&self) -> std::option::Option<&crate::model::EndpointState> {
self.state.as_ref()
}
pub fn release_label(&self) -> std::option::Option<&str> {
self.release_label.as_deref()
}
pub fn execution_role_arn(&self) -> std::option::Option<&str> {
self.execution_role_arn.as_deref()
}
#[deprecated(
note = "Customer provided certificate-arn is deprecated and would be removed in future."
)]
pub fn certificate_arn(&self) -> std::option::Option<&str> {
self.certificate_arn.as_deref()
}
pub fn certificate_authority(&self) -> std::option::Option<&crate::model::Certificate> {
self.certificate_authority.as_ref()
}
pub fn configuration_overrides(
&self,
) -> std::option::Option<&crate::model::ConfigurationOverrides> {
self.configuration_overrides.as_ref()
}
pub fn server_url(&self) -> std::option::Option<&str> {
self.server_url.as_deref()
}
pub fn created_at(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
self.created_at.as_ref()
}
pub fn security_group(&self) -> std::option::Option<&str> {
self.security_group.as_deref()
}
pub fn subnet_ids(&self) -> std::option::Option<&[std::string::String]> {
self.subnet_ids.as_deref()
}
pub fn state_details(&self) -> std::option::Option<&str> {
self.state_details.as_deref()
}
pub fn failure_reason(&self) -> std::option::Option<&crate::model::FailureReason> {
self.failure_reason.as_ref()
}
pub fn tags(
&self,
) -> std::option::Option<&std::collections::HashMap<std::string::String, std::string::String>>
{
self.tags.as_ref()
}
}
pub mod endpoint {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) id: std::option::Option<std::string::String>,
pub(crate) name: std::option::Option<std::string::String>,
pub(crate) arn: std::option::Option<std::string::String>,
pub(crate) virtual_cluster_id: std::option::Option<std::string::String>,
pub(crate) r#type: std::option::Option<std::string::String>,
pub(crate) state: std::option::Option<crate::model::EndpointState>,
pub(crate) release_label: std::option::Option<std::string::String>,
pub(crate) execution_role_arn: std::option::Option<std::string::String>,
pub(crate) certificate_arn: std::option::Option<std::string::String>,
pub(crate) certificate_authority: std::option::Option<crate::model::Certificate>,
pub(crate) configuration_overrides:
std::option::Option<crate::model::ConfigurationOverrides>,
pub(crate) server_url: std::option::Option<std::string::String>,
pub(crate) created_at: std::option::Option<aws_smithy_types::DateTime>,
pub(crate) security_group: std::option::Option<std::string::String>,
pub(crate) subnet_ids: std::option::Option<std::vec::Vec<std::string::String>>,
pub(crate) state_details: std::option::Option<std::string::String>,
pub(crate) failure_reason: std::option::Option<crate::model::FailureReason>,
pub(crate) tags: std::option::Option<
std::collections::HashMap<std::string::String, std::string::String>,
>,
}
impl Builder {
pub fn id(mut self, input: impl Into<std::string::String>) -> Self {
self.id = Some(input.into());
self
}
pub fn set_id(mut self, input: std::option::Option<std::string::String>) -> Self {
self.id = input;
self
}
pub fn name(mut self, input: impl Into<std::string::String>) -> Self {
self.name = Some(input.into());
self
}
pub fn set_name(mut self, input: std::option::Option<std::string::String>) -> Self {
self.name = input;
self
}
pub fn arn(mut self, input: impl Into<std::string::String>) -> Self {
self.arn = Some(input.into());
self
}
pub fn set_arn(mut self, input: std::option::Option<std::string::String>) -> Self {
self.arn = input;
self
}
pub fn virtual_cluster_id(mut self, input: impl Into<std::string::String>) -> Self {
self.virtual_cluster_id = Some(input.into());
self
}
pub fn set_virtual_cluster_id(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.virtual_cluster_id = input;
self
}
pub fn r#type(mut self, input: impl Into<std::string::String>) -> Self {
self.r#type = Some(input.into());
self
}
pub fn set_type(mut self, input: std::option::Option<std::string::String>) -> Self {
self.r#type = input;
self
}
pub fn state(mut self, input: crate::model::EndpointState) -> Self {
self.state = Some(input);
self
}
pub fn set_state(
mut self,
input: std::option::Option<crate::model::EndpointState>,
) -> Self {
self.state = input;
self
}
pub fn release_label(mut self, input: impl Into<std::string::String>) -> Self {
self.release_label = Some(input.into());
self
}
pub fn set_release_label(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.release_label = input;
self
}
pub fn execution_role_arn(mut self, input: impl Into<std::string::String>) -> Self {
self.execution_role_arn = Some(input.into());
self
}
pub fn set_execution_role_arn(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.execution_role_arn = input;
self
}
#[deprecated(
note = "Customer provided certificate-arn is deprecated and would be removed in future."
)]
pub fn certificate_arn(mut self, input: impl Into<std::string::String>) -> Self {
self.certificate_arn = Some(input.into());
self
}
#[deprecated(
note = "Customer provided certificate-arn is deprecated and would be removed in future."
)]
pub fn set_certificate_arn(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.certificate_arn = input;
self
}
pub fn certificate_authority(mut self, input: crate::model::Certificate) -> Self {
self.certificate_authority = Some(input);
self
}
pub fn set_certificate_authority(
mut self,
input: std::option::Option<crate::model::Certificate>,
) -> Self {
self.certificate_authority = input;
self
}
pub fn configuration_overrides(
mut self,
input: crate::model::ConfigurationOverrides,
) -> Self {
self.configuration_overrides = Some(input);
self
}
pub fn set_configuration_overrides(
mut self,
input: std::option::Option<crate::model::ConfigurationOverrides>,
) -> Self {
self.configuration_overrides = input;
self
}
pub fn server_url(mut self, input: impl Into<std::string::String>) -> Self {
self.server_url = Some(input.into());
self
}
pub fn set_server_url(mut self, input: std::option::Option<std::string::String>) -> Self {
self.server_url = input;
self
}
pub fn created_at(mut self, input: aws_smithy_types::DateTime) -> Self {
self.created_at = Some(input);
self
}
pub fn set_created_at(
mut self,
input: std::option::Option<aws_smithy_types::DateTime>,
) -> Self {
self.created_at = input;
self
}
pub fn security_group(mut self, input: impl Into<std::string::String>) -> Self {
self.security_group = Some(input.into());
self
}
pub fn set_security_group(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.security_group = input;
self
}
pub fn subnet_ids(mut self, input: impl Into<std::string::String>) -> Self {
let mut v = self.subnet_ids.unwrap_or_default();
v.push(input.into());
self.subnet_ids = Some(v);
self
}
pub fn set_subnet_ids(
mut self,
input: std::option::Option<std::vec::Vec<std::string::String>>,
) -> Self {
self.subnet_ids = input;
self
}
pub fn state_details(mut self, input: impl Into<std::string::String>) -> Self {
self.state_details = Some(input.into());
self
}
pub fn set_state_details(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.state_details = input;
self
}
pub fn failure_reason(mut self, input: crate::model::FailureReason) -> Self {
self.failure_reason = Some(input);
self
}
pub fn set_failure_reason(
mut self,
input: std::option::Option<crate::model::FailureReason>,
) -> Self {
self.failure_reason = input;
self
}
pub fn tags(
mut self,
k: impl Into<std::string::String>,
v: impl Into<std::string::String>,
) -> Self {
let mut hash_map = self.tags.unwrap_or_default();
hash_map.insert(k.into(), v.into());
self.tags = Some(hash_map);
self
}
pub fn set_tags(
mut self,
input: std::option::Option<
std::collections::HashMap<std::string::String, std::string::String>,
>,
) -> Self {
self.tags = input;
self
}
pub fn build(self) -> crate::model::Endpoint {
crate::model::Endpoint {
id: self.id,
name: self.name,
arn: self.arn,
virtual_cluster_id: self.virtual_cluster_id,
r#type: self.r#type,
state: self.state,
release_label: self.release_label,
execution_role_arn: self.execution_role_arn,
certificate_arn: self.certificate_arn,
certificate_authority: self.certificate_authority,
configuration_overrides: self.configuration_overrides,
server_url: self.server_url,
created_at: self.created_at,
security_group: self.security_group,
subnet_ids: self.subnet_ids,
state_details: self.state_details,
failure_reason: self.failure_reason,
tags: self.tags,
}
}
}
}
impl Endpoint {
pub fn builder() -> crate::model::endpoint::Builder {
crate::model::endpoint::Builder::default()
}
}
#[allow(missing_docs)] #[non_exhaustive]
#[derive(
std::clone::Clone,
std::cmp::Eq,
std::cmp::Ord,
std::cmp::PartialEq,
std::cmp::PartialOrd,
std::fmt::Debug,
std::hash::Hash,
)]
pub enum FailureReason {
#[allow(missing_docs)] ClusterUnavailable,
#[allow(missing_docs)] InternalError,
#[allow(missing_docs)] UserError,
#[allow(missing_docs)] ValidationError,
Unknown(crate::types::UnknownVariantValue),
}
impl std::convert::From<&str> for FailureReason {
fn from(s: &str) -> Self {
match s {
"CLUSTER_UNAVAILABLE" => FailureReason::ClusterUnavailable,
"INTERNAL_ERROR" => FailureReason::InternalError,
"USER_ERROR" => FailureReason::UserError,
"VALIDATION_ERROR" => FailureReason::ValidationError,
other => FailureReason::Unknown(crate::types::UnknownVariantValue(other.to_owned())),
}
}
}
impl std::str::FromStr for FailureReason {
type Err = std::convert::Infallible;
fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
Ok(FailureReason::from(s))
}
}
impl FailureReason {
pub fn as_str(&self) -> &str {
match self {
FailureReason::ClusterUnavailable => "CLUSTER_UNAVAILABLE",
FailureReason::InternalError => "INTERNAL_ERROR",
FailureReason::UserError => "USER_ERROR",
FailureReason::ValidationError => "VALIDATION_ERROR",
FailureReason::Unknown(value) => value.as_str(),
}
}
pub const fn values() -> &'static [&'static str] {
&[
"CLUSTER_UNAVAILABLE",
"INTERNAL_ERROR",
"USER_ERROR",
"VALIDATION_ERROR",
]
}
}
impl AsRef<str> for FailureReason {
fn as_ref(&self) -> &str {
self.as_str()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct Certificate {
#[doc(hidden)]
pub certificate_arn: std::option::Option<std::string::String>,
#[doc(hidden)]
pub certificate_data: std::option::Option<std::string::String>,
}
impl Certificate {
pub fn certificate_arn(&self) -> std::option::Option<&str> {
self.certificate_arn.as_deref()
}
pub fn certificate_data(&self) -> std::option::Option<&str> {
self.certificate_data.as_deref()
}
}
pub mod certificate {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) certificate_arn: std::option::Option<std::string::String>,
pub(crate) certificate_data: std::option::Option<std::string::String>,
}
impl Builder {
pub fn certificate_arn(mut self, input: impl Into<std::string::String>) -> Self {
self.certificate_arn = Some(input.into());
self
}
pub fn set_certificate_arn(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.certificate_arn = input;
self
}
pub fn certificate_data(mut self, input: impl Into<std::string::String>) -> Self {
self.certificate_data = Some(input.into());
self
}
pub fn set_certificate_data(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.certificate_data = input;
self
}
pub fn build(self) -> crate::model::Certificate {
crate::model::Certificate {
certificate_arn: self.certificate_arn,
certificate_data: self.certificate_data,
}
}
}
}
impl Certificate {
pub fn builder() -> crate::model::certificate::Builder {
crate::model::certificate::Builder::default()
}
}
#[allow(missing_docs)] #[non_exhaustive]
#[derive(
std::clone::Clone,
std::cmp::Eq,
std::cmp::Ord,
std::cmp::PartialEq,
std::cmp::PartialOrd,
std::fmt::Debug,
std::hash::Hash,
)]
pub enum EndpointState {
#[allow(missing_docs)] Active,
#[allow(missing_docs)] Creating,
#[allow(missing_docs)] Terminated,
#[allow(missing_docs)] TerminatedWithErrors,
#[allow(missing_docs)] Terminating,
Unknown(crate::types::UnknownVariantValue),
}
impl std::convert::From<&str> for EndpointState {
fn from(s: &str) -> Self {
match s {
"ACTIVE" => EndpointState::Active,
"CREATING" => EndpointState::Creating,
"TERMINATED" => EndpointState::Terminated,
"TERMINATED_WITH_ERRORS" => EndpointState::TerminatedWithErrors,
"TERMINATING" => EndpointState::Terminating,
other => EndpointState::Unknown(crate::types::UnknownVariantValue(other.to_owned())),
}
}
}
impl std::str::FromStr for EndpointState {
type Err = std::convert::Infallible;
fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
Ok(EndpointState::from(s))
}
}
impl EndpointState {
pub fn as_str(&self) -> &str {
match self {
EndpointState::Active => "ACTIVE",
EndpointState::Creating => "CREATING",
EndpointState::Terminated => "TERMINATED",
EndpointState::TerminatedWithErrors => "TERMINATED_WITH_ERRORS",
EndpointState::Terminating => "TERMINATING",
EndpointState::Unknown(value) => value.as_str(),
}
}
pub const fn values() -> &'static [&'static str] {
&[
"ACTIVE",
"CREATING",
"TERMINATED",
"TERMINATED_WITH_ERRORS",
"TERMINATING",
]
}
}
impl AsRef<str> for EndpointState {
fn as_ref(&self) -> &str {
self.as_str()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct JobTemplate {
#[doc(hidden)]
pub name: std::option::Option<std::string::String>,
#[doc(hidden)]
pub id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub arn: std::option::Option<std::string::String>,
#[doc(hidden)]
pub created_at: std::option::Option<aws_smithy_types::DateTime>,
#[doc(hidden)]
pub created_by: std::option::Option<std::string::String>,
#[doc(hidden)]
pub tags:
std::option::Option<std::collections::HashMap<std::string::String, std::string::String>>,
#[doc(hidden)]
pub job_template_data: std::option::Option<crate::model::JobTemplateData>,
#[doc(hidden)]
pub kms_key_arn: std::option::Option<std::string::String>,
#[doc(hidden)]
pub decryption_error: std::option::Option<std::string::String>,
}
impl JobTemplate {
pub fn name(&self) -> std::option::Option<&str> {
self.name.as_deref()
}
pub fn id(&self) -> std::option::Option<&str> {
self.id.as_deref()
}
pub fn arn(&self) -> std::option::Option<&str> {
self.arn.as_deref()
}
pub fn created_at(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
self.created_at.as_ref()
}
pub fn created_by(&self) -> std::option::Option<&str> {
self.created_by.as_deref()
}
pub fn tags(
&self,
) -> std::option::Option<&std::collections::HashMap<std::string::String, std::string::String>>
{
self.tags.as_ref()
}
pub fn job_template_data(&self) -> std::option::Option<&crate::model::JobTemplateData> {
self.job_template_data.as_ref()
}
pub fn kms_key_arn(&self) -> std::option::Option<&str> {
self.kms_key_arn.as_deref()
}
pub fn decryption_error(&self) -> std::option::Option<&str> {
self.decryption_error.as_deref()
}
}
pub mod job_template {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) name: std::option::Option<std::string::String>,
pub(crate) id: std::option::Option<std::string::String>,
pub(crate) arn: std::option::Option<std::string::String>,
pub(crate) created_at: std::option::Option<aws_smithy_types::DateTime>,
pub(crate) created_by: std::option::Option<std::string::String>,
pub(crate) tags: std::option::Option<
std::collections::HashMap<std::string::String, std::string::String>,
>,
pub(crate) job_template_data: std::option::Option<crate::model::JobTemplateData>,
pub(crate) kms_key_arn: std::option::Option<std::string::String>,
pub(crate) decryption_error: std::option::Option<std::string::String>,
}
impl Builder {
pub fn name(mut self, input: impl Into<std::string::String>) -> Self {
self.name = Some(input.into());
self
}
pub fn set_name(mut self, input: std::option::Option<std::string::String>) -> Self {
self.name = input;
self
}
pub fn id(mut self, input: impl Into<std::string::String>) -> Self {
self.id = Some(input.into());
self
}
pub fn set_id(mut self, input: std::option::Option<std::string::String>) -> Self {
self.id = input;
self
}
pub fn arn(mut self, input: impl Into<std::string::String>) -> Self {
self.arn = Some(input.into());
self
}
pub fn set_arn(mut self, input: std::option::Option<std::string::String>) -> Self {
self.arn = input;
self
}
pub fn created_at(mut self, input: aws_smithy_types::DateTime) -> Self {
self.created_at = Some(input);
self
}
pub fn set_created_at(
mut self,
input: std::option::Option<aws_smithy_types::DateTime>,
) -> Self {
self.created_at = input;
self
}
pub fn created_by(mut self, input: impl Into<std::string::String>) -> Self {
self.created_by = Some(input.into());
self
}
pub fn set_created_by(mut self, input: std::option::Option<std::string::String>) -> Self {
self.created_by = input;
self
}
pub fn tags(
mut self,
k: impl Into<std::string::String>,
v: impl Into<std::string::String>,
) -> Self {
let mut hash_map = self.tags.unwrap_or_default();
hash_map.insert(k.into(), v.into());
self.tags = Some(hash_map);
self
}
pub fn set_tags(
mut self,
input: std::option::Option<
std::collections::HashMap<std::string::String, std::string::String>,
>,
) -> Self {
self.tags = input;
self
}
pub fn job_template_data(mut self, input: crate::model::JobTemplateData) -> Self {
self.job_template_data = Some(input);
self
}
pub fn set_job_template_data(
mut self,
input: std::option::Option<crate::model::JobTemplateData>,
) -> Self {
self.job_template_data = input;
self
}
pub fn kms_key_arn(mut self, input: impl Into<std::string::String>) -> Self {
self.kms_key_arn = Some(input.into());
self
}
pub fn set_kms_key_arn(mut self, input: std::option::Option<std::string::String>) -> Self {
self.kms_key_arn = input;
self
}
pub fn decryption_error(mut self, input: impl Into<std::string::String>) -> Self {
self.decryption_error = Some(input.into());
self
}
pub fn set_decryption_error(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.decryption_error = input;
self
}
pub fn build(self) -> crate::model::JobTemplate {
crate::model::JobTemplate {
name: self.name,
id: self.id,
arn: self.arn,
created_at: self.created_at,
created_by: self.created_by,
tags: self.tags,
job_template_data: self.job_template_data,
kms_key_arn: self.kms_key_arn,
decryption_error: self.decryption_error,
}
}
}
}
impl JobTemplate {
pub fn builder() -> crate::model::job_template::Builder {
crate::model::job_template::Builder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct JobTemplateData {
#[doc(hidden)]
pub execution_role_arn: std::option::Option<std::string::String>,
#[doc(hidden)]
pub release_label: std::option::Option<std::string::String>,
#[doc(hidden)]
pub configuration_overrides:
std::option::Option<crate::model::ParametricConfigurationOverrides>,
#[doc(hidden)]
pub job_driver: std::option::Option<crate::model::JobDriver>,
#[doc(hidden)]
pub parameter_configuration: std::option::Option<
std::collections::HashMap<
std::string::String,
crate::model::TemplateParameterConfiguration,
>,
>,
#[doc(hidden)]
pub job_tags:
std::option::Option<std::collections::HashMap<std::string::String, std::string::String>>,
}
impl JobTemplateData {
pub fn execution_role_arn(&self) -> std::option::Option<&str> {
self.execution_role_arn.as_deref()
}
pub fn release_label(&self) -> std::option::Option<&str> {
self.release_label.as_deref()
}
pub fn configuration_overrides(
&self,
) -> std::option::Option<&crate::model::ParametricConfigurationOverrides> {
self.configuration_overrides.as_ref()
}
pub fn job_driver(&self) -> std::option::Option<&crate::model::JobDriver> {
self.job_driver.as_ref()
}
pub fn parameter_configuration(
&self,
) -> std::option::Option<
&std::collections::HashMap<
std::string::String,
crate::model::TemplateParameterConfiguration,
>,
> {
self.parameter_configuration.as_ref()
}
pub fn job_tags(
&self,
) -> std::option::Option<&std::collections::HashMap<std::string::String, std::string::String>>
{
self.job_tags.as_ref()
}
}
pub mod job_template_data {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) execution_role_arn: std::option::Option<std::string::String>,
pub(crate) release_label: std::option::Option<std::string::String>,
pub(crate) configuration_overrides:
std::option::Option<crate::model::ParametricConfigurationOverrides>,
pub(crate) job_driver: std::option::Option<crate::model::JobDriver>,
pub(crate) parameter_configuration: std::option::Option<
std::collections::HashMap<
std::string::String,
crate::model::TemplateParameterConfiguration,
>,
>,
pub(crate) job_tags: std::option::Option<
std::collections::HashMap<std::string::String, std::string::String>,
>,
}
impl Builder {
pub fn execution_role_arn(mut self, input: impl Into<std::string::String>) -> Self {
self.execution_role_arn = Some(input.into());
self
}
pub fn set_execution_role_arn(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.execution_role_arn = input;
self
}
pub fn release_label(mut self, input: impl Into<std::string::String>) -> Self {
self.release_label = Some(input.into());
self
}
pub fn set_release_label(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.release_label = input;
self
}
pub fn configuration_overrides(
mut self,
input: crate::model::ParametricConfigurationOverrides,
) -> Self {
self.configuration_overrides = Some(input);
self
}
pub fn set_configuration_overrides(
mut self,
input: std::option::Option<crate::model::ParametricConfigurationOverrides>,
) -> Self {
self.configuration_overrides = input;
self
}
pub fn job_driver(mut self, input: crate::model::JobDriver) -> Self {
self.job_driver = Some(input);
self
}
pub fn set_job_driver(
mut self,
input: std::option::Option<crate::model::JobDriver>,
) -> Self {
self.job_driver = input;
self
}
pub fn parameter_configuration(
mut self,
k: impl Into<std::string::String>,
v: crate::model::TemplateParameterConfiguration,
) -> Self {
let mut hash_map = self.parameter_configuration.unwrap_or_default();
hash_map.insert(k.into(), v);
self.parameter_configuration = Some(hash_map);
self
}
pub fn set_parameter_configuration(
mut self,
input: std::option::Option<
std::collections::HashMap<
std::string::String,
crate::model::TemplateParameterConfiguration,
>,
>,
) -> Self {
self.parameter_configuration = input;
self
}
pub fn job_tags(
mut self,
k: impl Into<std::string::String>,
v: impl Into<std::string::String>,
) -> Self {
let mut hash_map = self.job_tags.unwrap_or_default();
hash_map.insert(k.into(), v.into());
self.job_tags = Some(hash_map);
self
}
pub fn set_job_tags(
mut self,
input: std::option::Option<
std::collections::HashMap<std::string::String, std::string::String>,
>,
) -> Self {
self.job_tags = input;
self
}
pub fn build(self) -> crate::model::JobTemplateData {
crate::model::JobTemplateData {
execution_role_arn: self.execution_role_arn,
release_label: self.release_label,
configuration_overrides: self.configuration_overrides,
job_driver: self.job_driver,
parameter_configuration: self.parameter_configuration,
job_tags: self.job_tags,
}
}
}
}
impl JobTemplateData {
pub fn builder() -> crate::model::job_template_data::Builder {
crate::model::job_template_data::Builder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct TemplateParameterConfiguration {
#[doc(hidden)]
pub r#type: std::option::Option<crate::model::TemplateParameterDataType>,
#[doc(hidden)]
pub default_value: std::option::Option<std::string::String>,
}
impl TemplateParameterConfiguration {
pub fn r#type(&self) -> std::option::Option<&crate::model::TemplateParameterDataType> {
self.r#type.as_ref()
}
pub fn default_value(&self) -> std::option::Option<&str> {
self.default_value.as_deref()
}
}
pub mod template_parameter_configuration {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) r#type: std::option::Option<crate::model::TemplateParameterDataType>,
pub(crate) default_value: std::option::Option<std::string::String>,
}
impl Builder {
pub fn r#type(mut self, input: crate::model::TemplateParameterDataType) -> Self {
self.r#type = Some(input);
self
}
pub fn set_type(
mut self,
input: std::option::Option<crate::model::TemplateParameterDataType>,
) -> Self {
self.r#type = input;
self
}
pub fn default_value(mut self, input: impl Into<std::string::String>) -> Self {
self.default_value = Some(input.into());
self
}
pub fn set_default_value(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.default_value = input;
self
}
pub fn build(self) -> crate::model::TemplateParameterConfiguration {
crate::model::TemplateParameterConfiguration {
r#type: self.r#type,
default_value: self.default_value,
}
}
}
}
impl TemplateParameterConfiguration {
pub fn builder() -> crate::model::template_parameter_configuration::Builder {
crate::model::template_parameter_configuration::Builder::default()
}
}
#[allow(missing_docs)] #[non_exhaustive]
#[derive(
std::clone::Clone,
std::cmp::Eq,
std::cmp::Ord,
std::cmp::PartialEq,
std::cmp::PartialOrd,
std::fmt::Debug,
std::hash::Hash,
)]
pub enum TemplateParameterDataType {
#[allow(missing_docs)] Number,
#[allow(missing_docs)] String,
Unknown(crate::types::UnknownVariantValue),
}
impl std::convert::From<&str> for TemplateParameterDataType {
fn from(s: &str) -> Self {
match s {
"NUMBER" => TemplateParameterDataType::Number,
"STRING" => TemplateParameterDataType::String,
other => TemplateParameterDataType::Unknown(crate::types::UnknownVariantValue(
other.to_owned(),
)),
}
}
}
impl std::str::FromStr for TemplateParameterDataType {
type Err = std::convert::Infallible;
fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
Ok(TemplateParameterDataType::from(s))
}
}
impl TemplateParameterDataType {
pub fn as_str(&self) -> &str {
match self {
TemplateParameterDataType::Number => "NUMBER",
TemplateParameterDataType::String => "STRING",
TemplateParameterDataType::Unknown(value) => value.as_str(),
}
}
pub const fn values() -> &'static [&'static str] {
&["NUMBER", "STRING"]
}
}
impl AsRef<str> for TemplateParameterDataType {
fn as_ref(&self) -> &str {
self.as_str()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct ParametricConfigurationOverrides {
#[doc(hidden)]
pub application_configuration: std::option::Option<std::vec::Vec<crate::model::Configuration>>,
#[doc(hidden)]
pub monitoring_configuration:
std::option::Option<crate::model::ParametricMonitoringConfiguration>,
}
impl ParametricConfigurationOverrides {
pub fn application_configuration(&self) -> std::option::Option<&[crate::model::Configuration]> {
self.application_configuration.as_deref()
}
pub fn monitoring_configuration(
&self,
) -> std::option::Option<&crate::model::ParametricMonitoringConfiguration> {
self.monitoring_configuration.as_ref()
}
}
pub mod parametric_configuration_overrides {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) application_configuration:
std::option::Option<std::vec::Vec<crate::model::Configuration>>,
pub(crate) monitoring_configuration:
std::option::Option<crate::model::ParametricMonitoringConfiguration>,
}
impl Builder {
pub fn application_configuration(mut self, input: crate::model::Configuration) -> Self {
let mut v = self.application_configuration.unwrap_or_default();
v.push(input);
self.application_configuration = Some(v);
self
}
pub fn set_application_configuration(
mut self,
input: std::option::Option<std::vec::Vec<crate::model::Configuration>>,
) -> Self {
self.application_configuration = input;
self
}
pub fn monitoring_configuration(
mut self,
input: crate::model::ParametricMonitoringConfiguration,
) -> Self {
self.monitoring_configuration = Some(input);
self
}
pub fn set_monitoring_configuration(
mut self,
input: std::option::Option<crate::model::ParametricMonitoringConfiguration>,
) -> Self {
self.monitoring_configuration = input;
self
}
pub fn build(self) -> crate::model::ParametricConfigurationOverrides {
crate::model::ParametricConfigurationOverrides {
application_configuration: self.application_configuration,
monitoring_configuration: self.monitoring_configuration,
}
}
}
}
impl ParametricConfigurationOverrides {
pub fn builder() -> crate::model::parametric_configuration_overrides::Builder {
crate::model::parametric_configuration_overrides::Builder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct ParametricMonitoringConfiguration {
#[doc(hidden)]
pub persistent_app_ui: std::option::Option<std::string::String>,
#[doc(hidden)]
pub cloud_watch_monitoring_configuration:
std::option::Option<crate::model::ParametricCloudWatchMonitoringConfiguration>,
#[doc(hidden)]
pub s3_monitoring_configuration:
std::option::Option<crate::model::ParametricS3MonitoringConfiguration>,
}
impl ParametricMonitoringConfiguration {
pub fn persistent_app_ui(&self) -> std::option::Option<&str> {
self.persistent_app_ui.as_deref()
}
pub fn cloud_watch_monitoring_configuration(
&self,
) -> std::option::Option<&crate::model::ParametricCloudWatchMonitoringConfiguration> {
self.cloud_watch_monitoring_configuration.as_ref()
}
pub fn s3_monitoring_configuration(
&self,
) -> std::option::Option<&crate::model::ParametricS3MonitoringConfiguration> {
self.s3_monitoring_configuration.as_ref()
}
}
pub mod parametric_monitoring_configuration {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) persistent_app_ui: std::option::Option<std::string::String>,
pub(crate) cloud_watch_monitoring_configuration:
std::option::Option<crate::model::ParametricCloudWatchMonitoringConfiguration>,
pub(crate) s3_monitoring_configuration:
std::option::Option<crate::model::ParametricS3MonitoringConfiguration>,
}
impl Builder {
pub fn persistent_app_ui(mut self, input: impl Into<std::string::String>) -> Self {
self.persistent_app_ui = Some(input.into());
self
}
pub fn set_persistent_app_ui(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.persistent_app_ui = input;
self
}
pub fn cloud_watch_monitoring_configuration(
mut self,
input: crate::model::ParametricCloudWatchMonitoringConfiguration,
) -> Self {
self.cloud_watch_monitoring_configuration = Some(input);
self
}
pub fn set_cloud_watch_monitoring_configuration(
mut self,
input: std::option::Option<crate::model::ParametricCloudWatchMonitoringConfiguration>,
) -> Self {
self.cloud_watch_monitoring_configuration = input;
self
}
pub fn s3_monitoring_configuration(
mut self,
input: crate::model::ParametricS3MonitoringConfiguration,
) -> Self {
self.s3_monitoring_configuration = Some(input);
self
}
pub fn set_s3_monitoring_configuration(
mut self,
input: std::option::Option<crate::model::ParametricS3MonitoringConfiguration>,
) -> Self {
self.s3_monitoring_configuration = input;
self
}
pub fn build(self) -> crate::model::ParametricMonitoringConfiguration {
crate::model::ParametricMonitoringConfiguration {
persistent_app_ui: self.persistent_app_ui,
cloud_watch_monitoring_configuration: self.cloud_watch_monitoring_configuration,
s3_monitoring_configuration: self.s3_monitoring_configuration,
}
}
}
}
impl ParametricMonitoringConfiguration {
pub fn builder() -> crate::model::parametric_monitoring_configuration::Builder {
crate::model::parametric_monitoring_configuration::Builder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct ParametricS3MonitoringConfiguration {
#[doc(hidden)]
pub log_uri: std::option::Option<std::string::String>,
}
impl ParametricS3MonitoringConfiguration {
pub fn log_uri(&self) -> std::option::Option<&str> {
self.log_uri.as_deref()
}
}
pub mod parametric_s3_monitoring_configuration {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) log_uri: std::option::Option<std::string::String>,
}
impl Builder {
pub fn log_uri(mut self, input: impl Into<std::string::String>) -> Self {
self.log_uri = Some(input.into());
self
}
pub fn set_log_uri(mut self, input: std::option::Option<std::string::String>) -> Self {
self.log_uri = input;
self
}
pub fn build(self) -> crate::model::ParametricS3MonitoringConfiguration {
crate::model::ParametricS3MonitoringConfiguration {
log_uri: self.log_uri,
}
}
}
}
impl ParametricS3MonitoringConfiguration {
pub fn builder() -> crate::model::parametric_s3_monitoring_configuration::Builder {
crate::model::parametric_s3_monitoring_configuration::Builder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct ParametricCloudWatchMonitoringConfiguration {
#[doc(hidden)]
pub log_group_name: std::option::Option<std::string::String>,
#[doc(hidden)]
pub log_stream_name_prefix: std::option::Option<std::string::String>,
}
impl ParametricCloudWatchMonitoringConfiguration {
pub fn log_group_name(&self) -> std::option::Option<&str> {
self.log_group_name.as_deref()
}
pub fn log_stream_name_prefix(&self) -> std::option::Option<&str> {
self.log_stream_name_prefix.as_deref()
}
}
pub mod parametric_cloud_watch_monitoring_configuration {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) log_group_name: std::option::Option<std::string::String>,
pub(crate) log_stream_name_prefix: std::option::Option<std::string::String>,
}
impl Builder {
pub fn log_group_name(mut self, input: impl Into<std::string::String>) -> Self {
self.log_group_name = Some(input.into());
self
}
pub fn set_log_group_name(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.log_group_name = input;
self
}
pub fn log_stream_name_prefix(mut self, input: impl Into<std::string::String>) -> Self {
self.log_stream_name_prefix = Some(input.into());
self
}
pub fn set_log_stream_name_prefix(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.log_stream_name_prefix = input;
self
}
pub fn build(self) -> crate::model::ParametricCloudWatchMonitoringConfiguration {
crate::model::ParametricCloudWatchMonitoringConfiguration {
log_group_name: self.log_group_name,
log_stream_name_prefix: self.log_stream_name_prefix,
}
}
}
}
impl ParametricCloudWatchMonitoringConfiguration {
pub fn builder() -> crate::model::parametric_cloud_watch_monitoring_configuration::Builder {
crate::model::parametric_cloud_watch_monitoring_configuration::Builder::default()
}
}
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq, std::fmt::Debug)]
pub struct JobRun {
#[doc(hidden)]
pub id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub name: std::option::Option<std::string::String>,
#[doc(hidden)]
pub virtual_cluster_id: std::option::Option<std::string::String>,
#[doc(hidden)]
pub arn: std::option::Option<std::string::String>,
#[doc(hidden)]
pub state: std::option::Option<crate::model::JobRunState>,
#[doc(hidden)]
pub client_token: std::option::Option<std::string::String>,
#[doc(hidden)]
pub execution_role_arn: std::option::Option<std::string::String>,
#[doc(hidden)]
pub release_label: std::option::Option<std::string::String>,
#[doc(hidden)]
pub configuration_overrides: std::option::Option<crate::model::ConfigurationOverrides>,
#[doc(hidden)]
pub job_driver: std::option::Option<crate::model::JobDriver>,
#[doc(hidden)]
pub created_at: std::option::Option<aws_smithy_types::DateTime>,
#[doc(hidden)]
pub created_by: std::option::Option<std::string::String>,
#[doc(hidden)]
pub finished_at: std::option::Option<aws_smithy_types::DateTime>,
#[doc(hidden)]
pub state_details: std::option::Option<std::string::String>,
#[doc(hidden)]
pub failure_reason: std::option::Option<crate::model::FailureReason>,
#[doc(hidden)]
pub tags:
std::option::Option<std::collections::HashMap<std::string::String, std::string::String>>,
}
impl JobRun {
pub fn id(&self) -> std::option::Option<&str> {
self.id.as_deref()
}
pub fn name(&self) -> std::option::Option<&str> {
self.name.as_deref()
}
pub fn virtual_cluster_id(&self) -> std::option::Option<&str> {
self.virtual_cluster_id.as_deref()
}
pub fn arn(&self) -> std::option::Option<&str> {
self.arn.as_deref()
}
pub fn state(&self) -> std::option::Option<&crate::model::JobRunState> {
self.state.as_ref()
}
pub fn client_token(&self) -> std::option::Option<&str> {
self.client_token.as_deref()
}
pub fn execution_role_arn(&self) -> std::option::Option<&str> {
self.execution_role_arn.as_deref()
}
pub fn release_label(&self) -> std::option::Option<&str> {
self.release_label.as_deref()
}
pub fn configuration_overrides(
&self,
) -> std::option::Option<&crate::model::ConfigurationOverrides> {
self.configuration_overrides.as_ref()
}
pub fn job_driver(&self) -> std::option::Option<&crate::model::JobDriver> {
self.job_driver.as_ref()
}
pub fn created_at(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
self.created_at.as_ref()
}
pub fn created_by(&self) -> std::option::Option<&str> {
self.created_by.as_deref()
}
pub fn finished_at(&self) -> std::option::Option<&aws_smithy_types::DateTime> {
self.finished_at.as_ref()
}
pub fn state_details(&self) -> std::option::Option<&str> {
self.state_details.as_deref()
}
pub fn failure_reason(&self) -> std::option::Option<&crate::model::FailureReason> {
self.failure_reason.as_ref()
}
pub fn tags(
&self,
) -> std::option::Option<&std::collections::HashMap<std::string::String, std::string::String>>
{
self.tags.as_ref()
}
}
pub mod job_run {
#[derive(std::clone::Clone, std::cmp::PartialEq, std::default::Default, std::fmt::Debug)]
pub struct Builder {
pub(crate) id: std::option::Option<std::string::String>,
pub(crate) name: std::option::Option<std::string::String>,
pub(crate) virtual_cluster_id: std::option::Option<std::string::String>,
pub(crate) arn: std::option::Option<std::string::String>,
pub(crate) state: std::option::Option<crate::model::JobRunState>,
pub(crate) client_token: std::option::Option<std::string::String>,
pub(crate) execution_role_arn: std::option::Option<std::string::String>,
pub(crate) release_label: std::option::Option<std::string::String>,
pub(crate) configuration_overrides:
std::option::Option<crate::model::ConfigurationOverrides>,
pub(crate) job_driver: std::option::Option<crate::model::JobDriver>,
pub(crate) created_at: std::option::Option<aws_smithy_types::DateTime>,
pub(crate) created_by: std::option::Option<std::string::String>,
pub(crate) finished_at: std::option::Option<aws_smithy_types::DateTime>,
pub(crate) state_details: std::option::Option<std::string::String>,
pub(crate) failure_reason: std::option::Option<crate::model::FailureReason>,
pub(crate) tags: std::option::Option<
std::collections::HashMap<std::string::String, std::string::String>,
>,
}
impl Builder {
pub fn id(mut self, input: impl Into<std::string::String>) -> Self {
self.id = Some(input.into());
self
}
pub fn set_id(mut self, input: std::option::Option<std::string::String>) -> Self {
self.id = input;
self
}
pub fn name(mut self, input: impl Into<std::string::String>) -> Self {
self.name = Some(input.into());
self
}
pub fn set_name(mut self, input: std::option::Option<std::string::String>) -> Self {
self.name = input;
self
}
pub fn virtual_cluster_id(mut self, input: impl Into<std::string::String>) -> Self {
self.virtual_cluster_id = Some(input.into());
self
}
pub fn set_virtual_cluster_id(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.virtual_cluster_id = input;
self
}
pub fn arn(mut self, input: impl Into<std::string::String>) -> Self {
self.arn = Some(input.into());
self
}
pub fn set_arn(mut self, input: std::option::Option<std::string::String>) -> Self {
self.arn = input;
self
}
pub fn state(mut self, input: crate::model::JobRunState) -> Self {
self.state = Some(input);
self
}
pub fn set_state(mut self, input: std::option::Option<crate::model::JobRunState>) -> Self {
self.state = input;
self
}
pub fn client_token(mut self, input: impl Into<std::string::String>) -> Self {
self.client_token = Some(input.into());
self
}
pub fn set_client_token(mut self, input: std::option::Option<std::string::String>) -> Self {
self.client_token = input;
self
}
pub fn execution_role_arn(mut self, input: impl Into<std::string::String>) -> Self {
self.execution_role_arn = Some(input.into());
self
}
pub fn set_execution_role_arn(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.execution_role_arn = input;
self
}
pub fn release_label(mut self, input: impl Into<std::string::String>) -> Self {
self.release_label = Some(input.into());
self
}
pub fn set_release_label(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.release_label = input;
self
}
pub fn configuration_overrides(
mut self,
input: crate::model::ConfigurationOverrides,
) -> Self {
self.configuration_overrides = Some(input);
self
}
pub fn set_configuration_overrides(
mut self,
input: std::option::Option<crate::model::ConfigurationOverrides>,
) -> Self {
self.configuration_overrides = input;
self
}
pub fn job_driver(mut self, input: crate::model::JobDriver) -> Self {
self.job_driver = Some(input);
self
}
pub fn set_job_driver(
mut self,
input: std::option::Option<crate::model::JobDriver>,
) -> Self {
self.job_driver = input;
self
}
pub fn created_at(mut self, input: aws_smithy_types::DateTime) -> Self {
self.created_at = Some(input);
self
}
pub fn set_created_at(
mut self,
input: std::option::Option<aws_smithy_types::DateTime>,
) -> Self {
self.created_at = input;
self
}
pub fn created_by(mut self, input: impl Into<std::string::String>) -> Self {
self.created_by = Some(input.into());
self
}
pub fn set_created_by(mut self, input: std::option::Option<std::string::String>) -> Self {
self.created_by = input;
self
}
pub fn finished_at(mut self, input: aws_smithy_types::DateTime) -> Self {
self.finished_at = Some(input);
self
}
pub fn set_finished_at(
mut self,
input: std::option::Option<aws_smithy_types::DateTime>,
) -> Self {
self.finished_at = input;
self
}
pub fn state_details(mut self, input: impl Into<std::string::String>) -> Self {
self.state_details = Some(input.into());
self
}
pub fn set_state_details(
mut self,
input: std::option::Option<std::string::String>,
) -> Self {
self.state_details = input;
self
}
pub fn failure_reason(mut self, input: crate::model::FailureReason) -> Self {
self.failure_reason = Some(input);
self
}
pub fn set_failure_reason(
mut self,
input: std::option::Option<crate::model::FailureReason>,
) -> Self {
self.failure_reason = input;
self
}
pub fn tags(
mut self,
k: impl Into<std::string::String>,
v: impl Into<std::string::String>,
) -> Self {
let mut hash_map = self.tags.unwrap_or_default();
hash_map.insert(k.into(), v.into());
self.tags = Some(hash_map);
self
}
pub fn set_tags(
mut self,
input: std::option::Option<
std::collections::HashMap<std::string::String, std::string::String>,
>,
) -> Self {
self.tags = input;
self
}
pub fn build(self) -> crate::model::JobRun {
crate::model::JobRun {
id: self.id,
name: self.name,
virtual_cluster_id: self.virtual_cluster_id,
arn: self.arn,
state: self.state,
client_token: self.client_token,
execution_role_arn: self.execution_role_arn,
release_label: self.release_label,
configuration_overrides: self.configuration_overrides,
job_driver: self.job_driver,
created_at: self.created_at,
created_by: self.created_by,
finished_at: self.finished_at,
state_details: self.state_details,
failure_reason: self.failure_reason,
tags: self.tags,
}
}
}
}
impl JobRun {
pub fn builder() -> crate::model::job_run::Builder {
crate::model::job_run::Builder::default()
}
}
#[allow(missing_docs)] #[non_exhaustive]
#[derive(
std::clone::Clone,
std::cmp::Eq,
std::cmp::Ord,
std::cmp::PartialEq,
std::cmp::PartialOrd,
std::fmt::Debug,
std::hash::Hash,
)]
pub enum JobRunState {
#[allow(missing_docs)] Cancelled,
#[allow(missing_docs)] CancelPending,
#[allow(missing_docs)] Completed,
#[allow(missing_docs)] Failed,
#[allow(missing_docs)] Pending,
#[allow(missing_docs)] Running,
#[allow(missing_docs)] Submitted,
Unknown(crate::types::UnknownVariantValue),
}
impl std::convert::From<&str> for JobRunState {
fn from(s: &str) -> Self {
match s {
"CANCELLED" => JobRunState::Cancelled,
"CANCEL_PENDING" => JobRunState::CancelPending,
"COMPLETED" => JobRunState::Completed,
"FAILED" => JobRunState::Failed,
"PENDING" => JobRunState::Pending,
"RUNNING" => JobRunState::Running,
"SUBMITTED" => JobRunState::Submitted,
other => JobRunState::Unknown(crate::types::UnknownVariantValue(other.to_owned())),
}
}
}
impl std::str::FromStr for JobRunState {
type Err = std::convert::Infallible;
fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
Ok(JobRunState::from(s))
}
}
impl JobRunState {
pub fn as_str(&self) -> &str {
match self {
JobRunState::Cancelled => "CANCELLED",
JobRunState::CancelPending => "CANCEL_PENDING",
JobRunState::Completed => "COMPLETED",
JobRunState::Failed => "FAILED",
JobRunState::Pending => "PENDING",
JobRunState::Running => "RUNNING",
JobRunState::Submitted => "SUBMITTED",
JobRunState::Unknown(value) => value.as_str(),
}
}
pub const fn values() -> &'static [&'static str] {
&[
"CANCELLED",
"CANCEL_PENDING",
"COMPLETED",
"FAILED",
"PENDING",
"RUNNING",
"SUBMITTED",
]
}
}
impl AsRef<str> for JobRunState {
fn as_ref(&self) -> &str {
self.as_str()
}
}