module Stratosphere.Route53RecoveryReadiness.ResourceSet.DNSTargetResourceProperty (
module Exports, DNSTargetResourceProperty(..),
mkDNSTargetResourceProperty
) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import {-# SOURCE #-} Stratosphere.Route53RecoveryReadiness.ResourceSet.TargetResourceProperty as Exports
import Stratosphere.ResourceProperties
import Stratosphere.Value
data DNSTargetResourceProperty
=
DNSTargetResourceProperty {DNSTargetResourceProperty -> ()
haddock_workaround_ :: (),
DNSTargetResourceProperty -> Maybe (Value Text)
domainName :: (Prelude.Maybe (Value Prelude.Text)),
DNSTargetResourceProperty -> Maybe (Value Text)
hostedZoneArn :: (Prelude.Maybe (Value Prelude.Text)),
DNSTargetResourceProperty -> Maybe (Value Text)
recordSetId :: (Prelude.Maybe (Value Prelude.Text)),
DNSTargetResourceProperty -> Maybe (Value Text)
recordType :: (Prelude.Maybe (Value Prelude.Text)),
DNSTargetResourceProperty -> Maybe TargetResourceProperty
targetResource :: (Prelude.Maybe TargetResourceProperty)}
deriving stock (DNSTargetResourceProperty -> DNSTargetResourceProperty -> Bool
(DNSTargetResourceProperty -> DNSTargetResourceProperty -> Bool)
-> (DNSTargetResourceProperty -> DNSTargetResourceProperty -> Bool)
-> Eq DNSTargetResourceProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: DNSTargetResourceProperty -> DNSTargetResourceProperty -> Bool
== :: DNSTargetResourceProperty -> DNSTargetResourceProperty -> Bool
$c/= :: DNSTargetResourceProperty -> DNSTargetResourceProperty -> Bool
/= :: DNSTargetResourceProperty -> DNSTargetResourceProperty -> Bool
Prelude.Eq, Int -> DNSTargetResourceProperty -> ShowS
[DNSTargetResourceProperty] -> ShowS
DNSTargetResourceProperty -> String
(Int -> DNSTargetResourceProperty -> ShowS)
-> (DNSTargetResourceProperty -> String)
-> ([DNSTargetResourceProperty] -> ShowS)
-> Show DNSTargetResourceProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> DNSTargetResourceProperty -> ShowS
showsPrec :: Int -> DNSTargetResourceProperty -> ShowS
$cshow :: DNSTargetResourceProperty -> String
show :: DNSTargetResourceProperty -> String
$cshowList :: [DNSTargetResourceProperty] -> ShowS
showList :: [DNSTargetResourceProperty] -> ShowS
Prelude.Show)
mkDNSTargetResourceProperty :: DNSTargetResourceProperty
mkDNSTargetResourceProperty :: DNSTargetResourceProperty
mkDNSTargetResourceProperty
= DNSTargetResourceProperty
{haddock_workaround_ :: ()
haddock_workaround_ = (), domainName :: Maybe (Value Text)
domainName = Maybe (Value Text)
forall a. Maybe a
Prelude.Nothing,
hostedZoneArn :: Maybe (Value Text)
hostedZoneArn = Maybe (Value Text)
forall a. Maybe a
Prelude.Nothing, recordSetId :: Maybe (Value Text)
recordSetId = Maybe (Value Text)
forall a. Maybe a
Prelude.Nothing,
recordType :: Maybe (Value Text)
recordType = Maybe (Value Text)
forall a. Maybe a
Prelude.Nothing, targetResource :: Maybe TargetResourceProperty
targetResource = Maybe TargetResourceProperty
forall a. Maybe a
Prelude.Nothing}
instance ToResourceProperties DNSTargetResourceProperty where
toResourceProperties :: DNSTargetResourceProperty -> ResourceProperties
toResourceProperties DNSTargetResourceProperty {Maybe (Value Text)
Maybe TargetResourceProperty
()
haddock_workaround_ :: DNSTargetResourceProperty -> ()
domainName :: DNSTargetResourceProperty -> Maybe (Value Text)
hostedZoneArn :: DNSTargetResourceProperty -> Maybe (Value Text)
recordSetId :: DNSTargetResourceProperty -> Maybe (Value Text)
recordType :: DNSTargetResourceProperty -> Maybe (Value Text)
targetResource :: DNSTargetResourceProperty -> Maybe TargetResourceProperty
haddock_workaround_ :: ()
domainName :: Maybe (Value Text)
hostedZoneArn :: Maybe (Value Text)
recordSetId :: Maybe (Value Text)
recordType :: Maybe (Value Text)
targetResource :: Maybe TargetResourceProperty
..}
= ResourceProperties
{awsType :: Text
awsType = Text
"AWS::Route53RecoveryReadiness::ResourceSet.DNSTargetResource",
supportsTags :: Bool
supportsTags = Bool
Prelude.False,
properties :: Object
properties = [Item Object] -> Object
forall l. IsList l => [Item l] -> l
Prelude.fromList
([Maybe (Key, Value)] -> [(Key, Value)]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
[Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"DomainName" (Value Text -> (Key, Value))
-> Maybe (Value Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Text)
domainName,
Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"HostedZoneArn" (Value Text -> (Key, Value))
-> Maybe (Value Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Text)
hostedZoneArn,
Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"RecordSetId" (Value Text -> (Key, Value))
-> Maybe (Value Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Text)
recordSetId,
Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"RecordType" (Value Text -> (Key, Value))
-> Maybe (Value Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Text)
recordType,
Key -> TargetResourceProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"TargetResource" (TargetResourceProperty -> (Key, Value))
-> Maybe TargetResourceProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe TargetResourceProperty
targetResource])}
instance JSON.ToJSON DNSTargetResourceProperty where
toJSON :: DNSTargetResourceProperty -> Value
toJSON DNSTargetResourceProperty {Maybe (Value Text)
Maybe TargetResourceProperty
()
haddock_workaround_ :: DNSTargetResourceProperty -> ()
domainName :: DNSTargetResourceProperty -> Maybe (Value Text)
hostedZoneArn :: DNSTargetResourceProperty -> Maybe (Value Text)
recordSetId :: DNSTargetResourceProperty -> Maybe (Value Text)
recordType :: DNSTargetResourceProperty -> Maybe (Value Text)
targetResource :: DNSTargetResourceProperty -> Maybe TargetResourceProperty
haddock_workaround_ :: ()
domainName :: Maybe (Value Text)
hostedZoneArn :: Maybe (Value Text)
recordSetId :: Maybe (Value Text)
recordType :: Maybe (Value Text)
targetResource :: Maybe TargetResourceProperty
..}
= [(Key, Value)] -> Value
JSON.object
([Item [(Key, Value)]] -> [(Key, Value)]
forall l. IsList l => [Item l] -> l
Prelude.fromList
([Maybe (Key, Value)] -> [(Key, Value)]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
[Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"DomainName" (Value Text -> (Key, Value))
-> Maybe (Value Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Text)
domainName,
Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"HostedZoneArn" (Value Text -> (Key, Value))
-> Maybe (Value Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Text)
hostedZoneArn,
Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"RecordSetId" (Value Text -> (Key, Value))
-> Maybe (Value Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Text)
recordSetId,
Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"RecordType" (Value Text -> (Key, Value))
-> Maybe (Value Text) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Text)
recordType,
Key -> TargetResourceProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"TargetResource" (TargetResourceProperty -> (Key, Value))
-> Maybe TargetResourceProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe TargetResourceProperty
targetResource]))
instance Property "DomainName" DNSTargetResourceProperty where
type PropertyType "DomainName" DNSTargetResourceProperty = Value Prelude.Text
set :: PropertyType "DomainName" DNSTargetResourceProperty
-> DNSTargetResourceProperty -> DNSTargetResourceProperty
set PropertyType "DomainName" DNSTargetResourceProperty
newValue DNSTargetResourceProperty {Maybe (Value Text)
Maybe TargetResourceProperty
()
haddock_workaround_ :: DNSTargetResourceProperty -> ()
domainName :: DNSTargetResourceProperty -> Maybe (Value Text)
hostedZoneArn :: DNSTargetResourceProperty -> Maybe (Value Text)
recordSetId :: DNSTargetResourceProperty -> Maybe (Value Text)
recordType :: DNSTargetResourceProperty -> Maybe (Value Text)
targetResource :: DNSTargetResourceProperty -> Maybe TargetResourceProperty
haddock_workaround_ :: ()
domainName :: Maybe (Value Text)
hostedZoneArn :: Maybe (Value Text)
recordSetId :: Maybe (Value Text)
recordType :: Maybe (Value Text)
targetResource :: Maybe TargetResourceProperty
..}
= DNSTargetResourceProperty
{domainName :: Maybe (Value Text)
domainName = Value Text -> Maybe (Value Text)
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "DomainName" DNSTargetResourceProperty
Value Text
newValue, Maybe (Value Text)
Maybe TargetResourceProperty
()
haddock_workaround_ :: ()
hostedZoneArn :: Maybe (Value Text)
recordSetId :: Maybe (Value Text)
recordType :: Maybe (Value Text)
targetResource :: Maybe TargetResourceProperty
haddock_workaround_ :: ()
hostedZoneArn :: Maybe (Value Text)
recordSetId :: Maybe (Value Text)
recordType :: Maybe (Value Text)
targetResource :: Maybe TargetResourceProperty
..}
instance Property "HostedZoneArn" DNSTargetResourceProperty where
type PropertyType "HostedZoneArn" DNSTargetResourceProperty = Value Prelude.Text
set :: PropertyType "HostedZoneArn" DNSTargetResourceProperty
-> DNSTargetResourceProperty -> DNSTargetResourceProperty
set PropertyType "HostedZoneArn" DNSTargetResourceProperty
newValue DNSTargetResourceProperty {Maybe (Value Text)
Maybe TargetResourceProperty
()
haddock_workaround_ :: DNSTargetResourceProperty -> ()
domainName :: DNSTargetResourceProperty -> Maybe (Value Text)
hostedZoneArn :: DNSTargetResourceProperty -> Maybe (Value Text)
recordSetId :: DNSTargetResourceProperty -> Maybe (Value Text)
recordType :: DNSTargetResourceProperty -> Maybe (Value Text)
targetResource :: DNSTargetResourceProperty -> Maybe TargetResourceProperty
haddock_workaround_ :: ()
domainName :: Maybe (Value Text)
hostedZoneArn :: Maybe (Value Text)
recordSetId :: Maybe (Value Text)
recordType :: Maybe (Value Text)
targetResource :: Maybe TargetResourceProperty
..}
= DNSTargetResourceProperty
{hostedZoneArn :: Maybe (Value Text)
hostedZoneArn = Value Text -> Maybe (Value Text)
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "HostedZoneArn" DNSTargetResourceProperty
Value Text
newValue, Maybe (Value Text)
Maybe TargetResourceProperty
()
haddock_workaround_ :: ()
domainName :: Maybe (Value Text)
recordSetId :: Maybe (Value Text)
recordType :: Maybe (Value Text)
targetResource :: Maybe TargetResourceProperty
haddock_workaround_ :: ()
domainName :: Maybe (Value Text)
recordSetId :: Maybe (Value Text)
recordType :: Maybe (Value Text)
targetResource :: Maybe TargetResourceProperty
..}
instance Property "RecordSetId" DNSTargetResourceProperty where
type PropertyType "RecordSetId" DNSTargetResourceProperty = Value Prelude.Text
set :: PropertyType "RecordSetId" DNSTargetResourceProperty
-> DNSTargetResourceProperty -> DNSTargetResourceProperty
set PropertyType "RecordSetId" DNSTargetResourceProperty
newValue DNSTargetResourceProperty {Maybe (Value Text)
Maybe TargetResourceProperty
()
haddock_workaround_ :: DNSTargetResourceProperty -> ()
domainName :: DNSTargetResourceProperty -> Maybe (Value Text)
hostedZoneArn :: DNSTargetResourceProperty -> Maybe (Value Text)
recordSetId :: DNSTargetResourceProperty -> Maybe (Value Text)
recordType :: DNSTargetResourceProperty -> Maybe (Value Text)
targetResource :: DNSTargetResourceProperty -> Maybe TargetResourceProperty
haddock_workaround_ :: ()
domainName :: Maybe (Value Text)
hostedZoneArn :: Maybe (Value Text)
recordSetId :: Maybe (Value Text)
recordType :: Maybe (Value Text)
targetResource :: Maybe TargetResourceProperty
..}
= DNSTargetResourceProperty
{recordSetId :: Maybe (Value Text)
recordSetId = Value Text -> Maybe (Value Text)
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "RecordSetId" DNSTargetResourceProperty
Value Text
newValue, Maybe (Value Text)
Maybe TargetResourceProperty
()
haddock_workaround_ :: ()
domainName :: Maybe (Value Text)
hostedZoneArn :: Maybe (Value Text)
recordType :: Maybe (Value Text)
targetResource :: Maybe TargetResourceProperty
haddock_workaround_ :: ()
domainName :: Maybe (Value Text)
hostedZoneArn :: Maybe (Value Text)
recordType :: Maybe (Value Text)
targetResource :: Maybe TargetResourceProperty
..}
instance Property "RecordType" DNSTargetResourceProperty where
type PropertyType "RecordType" DNSTargetResourceProperty = Value Prelude.Text
set :: PropertyType "RecordType" DNSTargetResourceProperty
-> DNSTargetResourceProperty -> DNSTargetResourceProperty
set PropertyType "RecordType" DNSTargetResourceProperty
newValue DNSTargetResourceProperty {Maybe (Value Text)
Maybe TargetResourceProperty
()
haddock_workaround_ :: DNSTargetResourceProperty -> ()
domainName :: DNSTargetResourceProperty -> Maybe (Value Text)
hostedZoneArn :: DNSTargetResourceProperty -> Maybe (Value Text)
recordSetId :: DNSTargetResourceProperty -> Maybe (Value Text)
recordType :: DNSTargetResourceProperty -> Maybe (Value Text)
targetResource :: DNSTargetResourceProperty -> Maybe TargetResourceProperty
haddock_workaround_ :: ()
domainName :: Maybe (Value Text)
hostedZoneArn :: Maybe (Value Text)
recordSetId :: Maybe (Value Text)
recordType :: Maybe (Value Text)
targetResource :: Maybe TargetResourceProperty
..}
= DNSTargetResourceProperty
{recordType :: Maybe (Value Text)
recordType = Value Text -> Maybe (Value Text)
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "RecordType" DNSTargetResourceProperty
Value Text
newValue, Maybe (Value Text)
Maybe TargetResourceProperty
()
haddock_workaround_ :: ()
domainName :: Maybe (Value Text)
hostedZoneArn :: Maybe (Value Text)
recordSetId :: Maybe (Value Text)
targetResource :: Maybe TargetResourceProperty
haddock_workaround_ :: ()
domainName :: Maybe (Value Text)
hostedZoneArn :: Maybe (Value Text)
recordSetId :: Maybe (Value Text)
targetResource :: Maybe TargetResourceProperty
..}
instance Property "TargetResource" DNSTargetResourceProperty where
type PropertyType "TargetResource" DNSTargetResourceProperty = TargetResourceProperty
set :: PropertyType "TargetResource" DNSTargetResourceProperty
-> DNSTargetResourceProperty -> DNSTargetResourceProperty
set PropertyType "TargetResource" DNSTargetResourceProperty
newValue DNSTargetResourceProperty {Maybe (Value Text)
Maybe TargetResourceProperty
()
haddock_workaround_ :: DNSTargetResourceProperty -> ()
domainName :: DNSTargetResourceProperty -> Maybe (Value Text)
hostedZoneArn :: DNSTargetResourceProperty -> Maybe (Value Text)
recordSetId :: DNSTargetResourceProperty -> Maybe (Value Text)
recordType :: DNSTargetResourceProperty -> Maybe (Value Text)
targetResource :: DNSTargetResourceProperty -> Maybe TargetResourceProperty
haddock_workaround_ :: ()
domainName :: Maybe (Value Text)
hostedZoneArn :: Maybe (Value Text)
recordSetId :: Maybe (Value Text)
recordType :: Maybe (Value Text)
targetResource :: Maybe TargetResourceProperty
..}
= DNSTargetResourceProperty
{targetResource :: Maybe TargetResourceProperty
targetResource = TargetResourceProperty -> Maybe TargetResourceProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "TargetResource" DNSTargetResourceProperty
TargetResourceProperty
newValue, Maybe (Value Text)
()
haddock_workaround_ :: ()
domainName :: Maybe (Value Text)
hostedZoneArn :: Maybe (Value Text)
recordSetId :: Maybe (Value Text)
recordType :: Maybe (Value Text)
haddock_workaround_ :: ()
domainName :: Maybe (Value Text)
hostedZoneArn :: Maybe (Value Text)
recordSetId :: Maybe (Value Text)
recordType :: Maybe (Value Text)
..}