module Stratosphere.ACMPCA.CertificateAuthority.AccessDescriptionProperty (
module Exports, AccessDescriptionProperty(..),
mkAccessDescriptionProperty
) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import {-# SOURCE #-} Stratosphere.ACMPCA.CertificateAuthority.AccessMethodProperty as Exports
import {-# SOURCE #-} Stratosphere.ACMPCA.CertificateAuthority.GeneralNameProperty as Exports
import Stratosphere.ResourceProperties
data AccessDescriptionProperty
=
AccessDescriptionProperty {AccessDescriptionProperty -> ()
haddock_workaround_ :: (),
AccessDescriptionProperty -> GeneralNameProperty
accessLocation :: GeneralNameProperty,
AccessDescriptionProperty -> AccessMethodProperty
accessMethod :: AccessMethodProperty}
deriving stock (AccessDescriptionProperty -> AccessDescriptionProperty -> Bool
(AccessDescriptionProperty -> AccessDescriptionProperty -> Bool)
-> (AccessDescriptionProperty -> AccessDescriptionProperty -> Bool)
-> Eq AccessDescriptionProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: AccessDescriptionProperty -> AccessDescriptionProperty -> Bool
== :: AccessDescriptionProperty -> AccessDescriptionProperty -> Bool
$c/= :: AccessDescriptionProperty -> AccessDescriptionProperty -> Bool
/= :: AccessDescriptionProperty -> AccessDescriptionProperty -> Bool
Prelude.Eq, Int -> AccessDescriptionProperty -> ShowS
[AccessDescriptionProperty] -> ShowS
AccessDescriptionProperty -> String
(Int -> AccessDescriptionProperty -> ShowS)
-> (AccessDescriptionProperty -> String)
-> ([AccessDescriptionProperty] -> ShowS)
-> Show AccessDescriptionProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> AccessDescriptionProperty -> ShowS
showsPrec :: Int -> AccessDescriptionProperty -> ShowS
$cshow :: AccessDescriptionProperty -> String
show :: AccessDescriptionProperty -> String
$cshowList :: [AccessDescriptionProperty] -> ShowS
showList :: [AccessDescriptionProperty] -> ShowS
Prelude.Show)
mkAccessDescriptionProperty ::
GeneralNameProperty
-> AccessMethodProperty -> AccessDescriptionProperty
mkAccessDescriptionProperty :: GeneralNameProperty
-> AccessMethodProperty -> AccessDescriptionProperty
mkAccessDescriptionProperty GeneralNameProperty
accessLocation AccessMethodProperty
accessMethod
= AccessDescriptionProperty
{haddock_workaround_ :: ()
haddock_workaround_ = (), accessLocation :: GeneralNameProperty
accessLocation = GeneralNameProperty
accessLocation,
accessMethod :: AccessMethodProperty
accessMethod = AccessMethodProperty
accessMethod}
instance ToResourceProperties AccessDescriptionProperty where
toResourceProperties :: AccessDescriptionProperty -> ResourceProperties
toResourceProperties AccessDescriptionProperty {()
AccessMethodProperty
GeneralNameProperty
haddock_workaround_ :: AccessDescriptionProperty -> ()
accessLocation :: AccessDescriptionProperty -> GeneralNameProperty
accessMethod :: AccessDescriptionProperty -> AccessMethodProperty
haddock_workaround_ :: ()
accessLocation :: GeneralNameProperty
accessMethod :: AccessMethodProperty
..}
= ResourceProperties
{awsType :: Text
awsType = Text
"AWS::ACMPCA::CertificateAuthority.AccessDescription",
supportsTags :: Bool
supportsTags = Bool
Prelude.False,
properties :: Object
properties = [Key
"AccessLocation" Key -> GeneralNameProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= GeneralNameProperty
accessLocation,
Key
"AccessMethod" Key -> AccessMethodProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= AccessMethodProperty
accessMethod]}
instance JSON.ToJSON AccessDescriptionProperty where
toJSON :: AccessDescriptionProperty -> Value
toJSON AccessDescriptionProperty {()
AccessMethodProperty
GeneralNameProperty
haddock_workaround_ :: AccessDescriptionProperty -> ()
accessLocation :: AccessDescriptionProperty -> GeneralNameProperty
accessMethod :: AccessDescriptionProperty -> AccessMethodProperty
haddock_workaround_ :: ()
accessLocation :: GeneralNameProperty
accessMethod :: AccessMethodProperty
..}
= [(Key, Value)] -> Value
JSON.object
[Key
"AccessLocation" Key -> GeneralNameProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= GeneralNameProperty
accessLocation,
Key
"AccessMethod" Key -> AccessMethodProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= AccessMethodProperty
accessMethod]
instance Property "AccessLocation" AccessDescriptionProperty where
type PropertyType "AccessLocation" AccessDescriptionProperty = GeneralNameProperty
set :: PropertyType "AccessLocation" AccessDescriptionProperty
-> AccessDescriptionProperty -> AccessDescriptionProperty
set PropertyType "AccessLocation" AccessDescriptionProperty
newValue AccessDescriptionProperty {()
AccessMethodProperty
GeneralNameProperty
haddock_workaround_ :: AccessDescriptionProperty -> ()
accessLocation :: AccessDescriptionProperty -> GeneralNameProperty
accessMethod :: AccessDescriptionProperty -> AccessMethodProperty
haddock_workaround_ :: ()
accessLocation :: GeneralNameProperty
accessMethod :: AccessMethodProperty
..}
= AccessDescriptionProperty {accessLocation :: GeneralNameProperty
accessLocation = PropertyType "AccessLocation" AccessDescriptionProperty
GeneralNameProperty
newValue, ()
AccessMethodProperty
haddock_workaround_ :: ()
accessMethod :: AccessMethodProperty
haddock_workaround_ :: ()
accessMethod :: AccessMethodProperty
..}
instance Property "AccessMethod" AccessDescriptionProperty where
type PropertyType "AccessMethod" AccessDescriptionProperty = AccessMethodProperty
set :: PropertyType "AccessMethod" AccessDescriptionProperty
-> AccessDescriptionProperty -> AccessDescriptionProperty
set PropertyType "AccessMethod" AccessDescriptionProperty
newValue AccessDescriptionProperty {()
AccessMethodProperty
GeneralNameProperty
haddock_workaround_ :: AccessDescriptionProperty -> ()
accessLocation :: AccessDescriptionProperty -> GeneralNameProperty
accessMethod :: AccessDescriptionProperty -> AccessMethodProperty
haddock_workaround_ :: ()
accessLocation :: GeneralNameProperty
accessMethod :: AccessMethodProperty
..}
= AccessDescriptionProperty {accessMethod :: AccessMethodProperty
accessMethod = PropertyType "AccessMethod" AccessDescriptionProperty
AccessMethodProperty
newValue, ()
GeneralNameProperty
haddock_workaround_ :: ()
accessLocation :: GeneralNameProperty
haddock_workaround_ :: ()
accessLocation :: GeneralNameProperty
..}