#[derive(Debug, Default)]
pub struct Application {
properties: ApplicationProperties
}
#[derive(Debug, Default)]
pub struct ApplicationProperties {
pub description: Option<::Value<String>>,
pub name: ::Value<String>,
pub tags: Option<::ValueMap<String>>,
}
impl ::serde::Serialize for ApplicationProperties {
fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
let mut map = ::serde::Serializer::serialize_map(s, None)?;
if let Some(ref description) = self.description {
::serde::ser::SerializeMap::serialize_entry(&mut map, "Description", description)?;
}
::serde::ser::SerializeMap::serialize_entry(&mut map, "Name", &self.name)?;
if let Some(ref tags) = self.tags {
::serde::ser::SerializeMap::serialize_entry(&mut map, "Tags", tags)?;
}
::serde::ser::SerializeMap::end(map)
}
}
impl<'de> ::serde::Deserialize<'de> for ApplicationProperties {
fn deserialize<D: ::serde::Deserializer<'de>>(d: D) -> Result<ApplicationProperties, D::Error> {
struct Visitor;
impl<'de> ::serde::de::Visitor<'de> for Visitor {
type Value = ApplicationProperties;
fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
write!(f, "a struct of type ApplicationProperties")
}
fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
let mut description: Option<::Value<String>> = None;
let mut name: Option<::Value<String>> = None;
let mut tags: Option<::ValueMap<String>> = None;
while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
match __cfn_key.as_ref() {
"Description" => {
description = ::serde::de::MapAccess::next_value(&mut map)?;
}
"Name" => {
name = ::serde::de::MapAccess::next_value(&mut map)?;
}
"Tags" => {
tags = ::serde::de::MapAccess::next_value(&mut map)?;
}
_ => {}
}
}
Ok(ApplicationProperties {
description: description,
name: name.ok_or(::serde::de::Error::missing_field("Name"))?,
tags: tags,
})
}
}
d.deserialize_map(Visitor)
}
}
impl ::Resource for Application {
type Properties = ApplicationProperties;
const TYPE: &'static str = "AWS::ServiceCatalogAppRegistry::Application";
fn properties(&self) -> &ApplicationProperties {
&self.properties
}
fn properties_mut(&mut self) -> &mut ApplicationProperties {
&mut self.properties
}
}
impl ::private::Sealed for Application {}
impl From<ApplicationProperties> for Application {
fn from(properties: ApplicationProperties) -> Application {
Application { properties }
}
}
#[derive(Debug, Default)]
pub struct AttributeGroup {
properties: AttributeGroupProperties
}
#[derive(Debug, Default)]
pub struct AttributeGroupProperties {
pub attributes: ::Value<::json::Value>,
pub description: Option<::Value<String>>,
pub name: ::Value<String>,
pub tags: Option<::ValueMap<String>>,
}
impl ::serde::Serialize for AttributeGroupProperties {
fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
let mut map = ::serde::Serializer::serialize_map(s, None)?;
::serde::ser::SerializeMap::serialize_entry(&mut map, "Attributes", &self.attributes)?;
if let Some(ref description) = self.description {
::serde::ser::SerializeMap::serialize_entry(&mut map, "Description", description)?;
}
::serde::ser::SerializeMap::serialize_entry(&mut map, "Name", &self.name)?;
if let Some(ref tags) = self.tags {
::serde::ser::SerializeMap::serialize_entry(&mut map, "Tags", tags)?;
}
::serde::ser::SerializeMap::end(map)
}
}
impl<'de> ::serde::Deserialize<'de> for AttributeGroupProperties {
fn deserialize<D: ::serde::Deserializer<'de>>(d: D) -> Result<AttributeGroupProperties, D::Error> {
struct Visitor;
impl<'de> ::serde::de::Visitor<'de> for Visitor {
type Value = AttributeGroupProperties;
fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
write!(f, "a struct of type AttributeGroupProperties")
}
fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
let mut attributes: Option<::Value<::json::Value>> = None;
let mut description: Option<::Value<String>> = None;
let mut name: Option<::Value<String>> = None;
let mut tags: Option<::ValueMap<String>> = None;
while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
match __cfn_key.as_ref() {
"Attributes" => {
attributes = ::serde::de::MapAccess::next_value(&mut map)?;
}
"Description" => {
description = ::serde::de::MapAccess::next_value(&mut map)?;
}
"Name" => {
name = ::serde::de::MapAccess::next_value(&mut map)?;
}
"Tags" => {
tags = ::serde::de::MapAccess::next_value(&mut map)?;
}
_ => {}
}
}
Ok(AttributeGroupProperties {
attributes: attributes.ok_or(::serde::de::Error::missing_field("Attributes"))?,
description: description,
name: name.ok_or(::serde::de::Error::missing_field("Name"))?,
tags: tags,
})
}
}
d.deserialize_map(Visitor)
}
}
impl ::Resource for AttributeGroup {
type Properties = AttributeGroupProperties;
const TYPE: &'static str = "AWS::ServiceCatalogAppRegistry::AttributeGroup";
fn properties(&self) -> &AttributeGroupProperties {
&self.properties
}
fn properties_mut(&mut self) -> &mut AttributeGroupProperties {
&mut self.properties
}
}
impl ::private::Sealed for AttributeGroup {}
impl From<AttributeGroupProperties> for AttributeGroup {
fn from(properties: AttributeGroupProperties) -> AttributeGroup {
AttributeGroup { properties }
}
}
#[derive(Debug, Default)]
pub struct AttributeGroupAssociation {
properties: AttributeGroupAssociationProperties
}
#[derive(Debug, Default)]
pub struct AttributeGroupAssociationProperties {
pub application: ::Value<String>,
pub attribute_group: ::Value<String>,
}
impl ::serde::Serialize for AttributeGroupAssociationProperties {
fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
let mut map = ::serde::Serializer::serialize_map(s, None)?;
::serde::ser::SerializeMap::serialize_entry(&mut map, "Application", &self.application)?;
::serde::ser::SerializeMap::serialize_entry(&mut map, "AttributeGroup", &self.attribute_group)?;
::serde::ser::SerializeMap::end(map)
}
}
impl<'de> ::serde::Deserialize<'de> for AttributeGroupAssociationProperties {
fn deserialize<D: ::serde::Deserializer<'de>>(d: D) -> Result<AttributeGroupAssociationProperties, D::Error> {
struct Visitor;
impl<'de> ::serde::de::Visitor<'de> for Visitor {
type Value = AttributeGroupAssociationProperties;
fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
write!(f, "a struct of type AttributeGroupAssociationProperties")
}
fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
let mut application: Option<::Value<String>> = None;
let mut attribute_group: Option<::Value<String>> = None;
while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
match __cfn_key.as_ref() {
"Application" => {
application = ::serde::de::MapAccess::next_value(&mut map)?;
}
"AttributeGroup" => {
attribute_group = ::serde::de::MapAccess::next_value(&mut map)?;
}
_ => {}
}
}
Ok(AttributeGroupAssociationProperties {
application: application.ok_or(::serde::de::Error::missing_field("Application"))?,
attribute_group: attribute_group.ok_or(::serde::de::Error::missing_field("AttributeGroup"))?,
})
}
}
d.deserialize_map(Visitor)
}
}
impl ::Resource for AttributeGroupAssociation {
type Properties = AttributeGroupAssociationProperties;
const TYPE: &'static str = "AWS::ServiceCatalogAppRegistry::AttributeGroupAssociation";
fn properties(&self) -> &AttributeGroupAssociationProperties {
&self.properties
}
fn properties_mut(&mut self) -> &mut AttributeGroupAssociationProperties {
&mut self.properties
}
}
impl ::private::Sealed for AttributeGroupAssociation {}
impl From<AttributeGroupAssociationProperties> for AttributeGroupAssociation {
fn from(properties: AttributeGroupAssociationProperties) -> AttributeGroupAssociation {
AttributeGroupAssociation { properties }
}
}
#[derive(Debug, Default)]
pub struct ResourceAssociation {
properties: ResourceAssociationProperties
}
#[derive(Debug, Default)]
pub struct ResourceAssociationProperties {
pub application: ::Value<String>,
pub resource: ::Value<String>,
pub resource_type: ::Value<String>,
}
impl ::serde::Serialize for ResourceAssociationProperties {
fn serialize<S: ::serde::Serializer>(&self, s: S) -> Result<S::Ok, S::Error> {
let mut map = ::serde::Serializer::serialize_map(s, None)?;
::serde::ser::SerializeMap::serialize_entry(&mut map, "Application", &self.application)?;
::serde::ser::SerializeMap::serialize_entry(&mut map, "Resource", &self.resource)?;
::serde::ser::SerializeMap::serialize_entry(&mut map, "ResourceType", &self.resource_type)?;
::serde::ser::SerializeMap::end(map)
}
}
impl<'de> ::serde::Deserialize<'de> for ResourceAssociationProperties {
fn deserialize<D: ::serde::Deserializer<'de>>(d: D) -> Result<ResourceAssociationProperties, D::Error> {
struct Visitor;
impl<'de> ::serde::de::Visitor<'de> for Visitor {
type Value = ResourceAssociationProperties;
fn expecting(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
write!(f, "a struct of type ResourceAssociationProperties")
}
fn visit_map<A: ::serde::de::MapAccess<'de>>(self, mut map: A) -> Result<Self::Value, A::Error> {
let mut application: Option<::Value<String>> = None;
let mut resource: Option<::Value<String>> = None;
let mut resource_type: Option<::Value<String>> = None;
while let Some(__cfn_key) = ::serde::de::MapAccess::next_key::<String>(&mut map)? {
match __cfn_key.as_ref() {
"Application" => {
application = ::serde::de::MapAccess::next_value(&mut map)?;
}
"Resource" => {
resource = ::serde::de::MapAccess::next_value(&mut map)?;
}
"ResourceType" => {
resource_type = ::serde::de::MapAccess::next_value(&mut map)?;
}
_ => {}
}
}
Ok(ResourceAssociationProperties {
application: application.ok_or(::serde::de::Error::missing_field("Application"))?,
resource: resource.ok_or(::serde::de::Error::missing_field("Resource"))?,
resource_type: resource_type.ok_or(::serde::de::Error::missing_field("ResourceType"))?,
})
}
}
d.deserialize_map(Visitor)
}
}
impl ::Resource for ResourceAssociation {
type Properties = ResourceAssociationProperties;
const TYPE: &'static str = "AWS::ServiceCatalogAppRegistry::ResourceAssociation";
fn properties(&self) -> &ResourceAssociationProperties {
&self.properties
}
fn properties_mut(&mut self) -> &mut ResourceAssociationProperties {
&mut self.properties
}
}
impl ::private::Sealed for ResourceAssociation {}
impl From<ResourceAssociationProperties> for ResourceAssociation {
fn from(properties: ResourceAssociationProperties) -> ResourceAssociation {
ResourceAssociation { properties }
}
}