module Stratosphere.Lightsail.Distribution (
        module Exports, Distribution(..), mkDistribution
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import {-# SOURCE #-} Stratosphere.Lightsail.Distribution.CacheBehaviorProperty as Exports
import {-# SOURCE #-} Stratosphere.Lightsail.Distribution.CacheBehaviorPerPathProperty as Exports
import {-# SOURCE #-} Stratosphere.Lightsail.Distribution.CacheSettingsProperty as Exports
import {-# SOURCE #-} Stratosphere.Lightsail.Distribution.InputOriginProperty as Exports
import Stratosphere.ResourceProperties
import Stratosphere.Tag
import Stratosphere.Value
data Distribution
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-distribution.html>
    Distribution {Distribution -> ()
haddock_workaround_ :: (),
                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-distribution.html#cfn-lightsail-distribution-bundleid>
                  Distribution -> Value Text
bundleId :: (Value Prelude.Text),
                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-distribution.html#cfn-lightsail-distribution-cachebehaviorsettings>
                  Distribution -> Maybe CacheSettingsProperty
cacheBehaviorSettings :: (Prelude.Maybe CacheSettingsProperty),
                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-distribution.html#cfn-lightsail-distribution-cachebehaviors>
                  Distribution -> Maybe [CacheBehaviorPerPathProperty]
cacheBehaviors :: (Prelude.Maybe [CacheBehaviorPerPathProperty]),
                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-distribution.html#cfn-lightsail-distribution-certificatename>
                  Distribution -> Maybe (Value Text)
certificateName :: (Prelude.Maybe (Value Prelude.Text)),
                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-distribution.html#cfn-lightsail-distribution-defaultcachebehavior>
                  Distribution -> CacheBehaviorProperty
defaultCacheBehavior :: CacheBehaviorProperty,
                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-distribution.html#cfn-lightsail-distribution-distributionname>
                  Distribution -> Value Text
distributionName :: (Value Prelude.Text),
                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-distribution.html#cfn-lightsail-distribution-ipaddresstype>
                  Distribution -> Maybe (Value Text)
ipAddressType :: (Prelude.Maybe (Value Prelude.Text)),
                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-distribution.html#cfn-lightsail-distribution-isenabled>
                  Distribution -> Maybe (Value Bool)
isEnabled :: (Prelude.Maybe (Value Prelude.Bool)),
                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-distribution.html#cfn-lightsail-distribution-origin>
                  Distribution -> InputOriginProperty
origin :: InputOriginProperty,
                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-distribution.html#cfn-lightsail-distribution-tags>
                  Distribution -> Maybe [Tag]
tags :: (Prelude.Maybe [Tag])}
  deriving stock (Distribution -> Distribution -> Bool
(Distribution -> Distribution -> Bool)
-> (Distribution -> Distribution -> Bool) -> Eq Distribution
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: Distribution -> Distribution -> Bool
== :: Distribution -> Distribution -> Bool
$c/= :: Distribution -> Distribution -> Bool
/= :: Distribution -> Distribution -> Bool
Prelude.Eq, Int -> Distribution -> ShowS
[Distribution] -> ShowS
Distribution -> String
(Int -> Distribution -> ShowS)
-> (Distribution -> String)
-> ([Distribution] -> ShowS)
-> Show Distribution
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> Distribution -> ShowS
showsPrec :: Int -> Distribution -> ShowS
$cshow :: Distribution -> String
show :: Distribution -> String
$cshowList :: [Distribution] -> ShowS
showList :: [Distribution] -> ShowS
Prelude.Show)
mkDistribution ::
  Value Prelude.Text
  -> CacheBehaviorProperty
     -> Value Prelude.Text -> InputOriginProperty -> Distribution
mkDistribution :: Value Text
-> CacheBehaviorProperty
-> Value Text
-> InputOriginProperty
-> Distribution
mkDistribution
  Value Text
bundleId
  CacheBehaviorProperty
defaultCacheBehavior
  Value Text
distributionName
  InputOriginProperty
origin
  = Distribution
      {haddock_workaround_ :: ()
haddock_workaround_ = (), bundleId :: Value Text
bundleId = Value Text
bundleId,
       defaultCacheBehavior :: CacheBehaviorProperty
defaultCacheBehavior = CacheBehaviorProperty
defaultCacheBehavior,
       distributionName :: Value Text
distributionName = Value Text
distributionName, origin :: InputOriginProperty
origin = InputOriginProperty
origin,
       cacheBehaviorSettings :: Maybe CacheSettingsProperty
cacheBehaviorSettings = Maybe CacheSettingsProperty
forall a. Maybe a
Prelude.Nothing,
       cacheBehaviors :: Maybe [CacheBehaviorPerPathProperty]
cacheBehaviors = Maybe [CacheBehaviorPerPathProperty]
forall a. Maybe a
Prelude.Nothing,
       certificateName :: Maybe (Value Text)
certificateName = Maybe (Value Text)
forall a. Maybe a
Prelude.Nothing, ipAddressType :: Maybe (Value Text)
ipAddressType = Maybe (Value Text)
forall a. Maybe a
Prelude.Nothing,
       isEnabled :: Maybe (Value Bool)
isEnabled = Maybe (Value Bool)
forall a. Maybe a
Prelude.Nothing, tags :: Maybe [Tag]
tags = Maybe [Tag]
forall a. Maybe a
Prelude.Nothing}
instance ToResourceProperties Distribution where
  toResourceProperties :: Distribution -> ResourceProperties
toResourceProperties Distribution {Maybe [Tag]
Maybe [CacheBehaviorPerPathProperty]
Maybe (Value Bool)
Maybe (Value Text)
Maybe CacheSettingsProperty
()
Value Text
CacheBehaviorProperty
InputOriginProperty
haddock_workaround_ :: Distribution -> ()
bundleId :: Distribution -> Value Text
cacheBehaviorSettings :: Distribution -> Maybe CacheSettingsProperty
cacheBehaviors :: Distribution -> Maybe [CacheBehaviorPerPathProperty]
certificateName :: Distribution -> Maybe (Value Text)
defaultCacheBehavior :: Distribution -> CacheBehaviorProperty
distributionName :: Distribution -> Value Text
ipAddressType :: Distribution -> Maybe (Value Text)
isEnabled :: Distribution -> Maybe (Value Bool)
origin :: Distribution -> InputOriginProperty
tags :: Distribution -> Maybe [Tag]
haddock_workaround_ :: ()
bundleId :: Value Text
cacheBehaviorSettings :: Maybe CacheSettingsProperty
cacheBehaviors :: Maybe [CacheBehaviorPerPathProperty]
certificateName :: Maybe (Value Text)
defaultCacheBehavior :: CacheBehaviorProperty
distributionName :: Value Text
ipAddressType :: Maybe (Value Text)
isEnabled :: Maybe (Value Bool)
origin :: InputOriginProperty
tags :: Maybe [Tag]
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::Lightsail::Distribution",
         supportsTags :: Bool
supportsTags = Bool
Prelude.True,
         properties :: Object
properties = [Item Object] -> Object
forall l. IsList l => [Item l] -> l
Prelude.fromList
                        ([(Key, Value)] -> [(Key, Value)] -> [(Key, Value)]
forall a. Semigroup a => a -> a -> a
(Prelude.<>)
                           [Key
"BundleId" 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..= Value Text
bundleId,
                            Key
"DefaultCacheBehavior" Key -> CacheBehaviorProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= CacheBehaviorProperty
defaultCacheBehavior,
                            Key
"DistributionName" 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..= Value Text
distributionName,
                            Key
"Origin" Key -> InputOriginProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= InputOriginProperty
origin]
                           ([Maybe (Key, Value)] -> [(Key, Value)]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
                              [Key -> CacheSettingsProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"CacheBehaviorSettings"
                                 (CacheSettingsProperty -> (Key, Value))
-> Maybe CacheSettingsProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe CacheSettingsProperty
cacheBehaviorSettings,
                               Key -> [CacheBehaviorPerPathProperty] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"CacheBehaviors" ([CacheBehaviorPerPathProperty] -> (Key, Value))
-> Maybe [CacheBehaviorPerPathProperty] -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe [CacheBehaviorPerPathProperty]
cacheBehaviors,
                               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
"CertificateName" (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)
certificateName,
                               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
"IpAddressType" (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)
ipAddressType,
                               Key -> Value Bool -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"IsEnabled" (Value Bool -> (Key, Value))
-> Maybe (Value Bool) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Bool)
isEnabled,
                               Key -> [Tag] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Tags" ([Tag] -> (Key, Value)) -> Maybe [Tag] -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe [Tag]
tags]))}
instance JSON.ToJSON Distribution where
  toJSON :: Distribution -> Value
toJSON Distribution {Maybe [Tag]
Maybe [CacheBehaviorPerPathProperty]
Maybe (Value Bool)
Maybe (Value Text)
Maybe CacheSettingsProperty
()
Value Text
CacheBehaviorProperty
InputOriginProperty
haddock_workaround_ :: Distribution -> ()
bundleId :: Distribution -> Value Text
cacheBehaviorSettings :: Distribution -> Maybe CacheSettingsProperty
cacheBehaviors :: Distribution -> Maybe [CacheBehaviorPerPathProperty]
certificateName :: Distribution -> Maybe (Value Text)
defaultCacheBehavior :: Distribution -> CacheBehaviorProperty
distributionName :: Distribution -> Value Text
ipAddressType :: Distribution -> Maybe (Value Text)
isEnabled :: Distribution -> Maybe (Value Bool)
origin :: Distribution -> InputOriginProperty
tags :: Distribution -> Maybe [Tag]
haddock_workaround_ :: ()
bundleId :: Value Text
cacheBehaviorSettings :: Maybe CacheSettingsProperty
cacheBehaviors :: Maybe [CacheBehaviorPerPathProperty]
certificateName :: Maybe (Value Text)
defaultCacheBehavior :: CacheBehaviorProperty
distributionName :: Value Text
ipAddressType :: Maybe (Value Text)
isEnabled :: Maybe (Value Bool)
origin :: InputOriginProperty
tags :: Maybe [Tag]
..}
    = [(Key, Value)] -> Value
JSON.object
        ([Item [(Key, Value)]] -> [(Key, Value)]
forall l. IsList l => [Item l] -> l
Prelude.fromList
           ([(Key, Value)] -> [(Key, Value)] -> [(Key, Value)]
forall a. Semigroup a => a -> a -> a
(Prelude.<>)
              [Key
"BundleId" 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..= Value Text
bundleId,
               Key
"DefaultCacheBehavior" Key -> CacheBehaviorProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= CacheBehaviorProperty
defaultCacheBehavior,
               Key
"DistributionName" 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..= Value Text
distributionName,
               Key
"Origin" Key -> InputOriginProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= InputOriginProperty
origin]
              ([Maybe (Key, Value)] -> [(Key, Value)]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
                 [Key -> CacheSettingsProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"CacheBehaviorSettings"
                    (CacheSettingsProperty -> (Key, Value))
-> Maybe CacheSettingsProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe CacheSettingsProperty
cacheBehaviorSettings,
                  Key -> [CacheBehaviorPerPathProperty] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"CacheBehaviors" ([CacheBehaviorPerPathProperty] -> (Key, Value))
-> Maybe [CacheBehaviorPerPathProperty] -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe [CacheBehaviorPerPathProperty]
cacheBehaviors,
                  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
"CertificateName" (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)
certificateName,
                  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
"IpAddressType" (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)
ipAddressType,
                  Key -> Value Bool -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"IsEnabled" (Value Bool -> (Key, Value))
-> Maybe (Value Bool) -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe (Value Bool)
isEnabled,
                  Key -> [Tag] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"Tags" ([Tag] -> (Key, Value)) -> Maybe [Tag] -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe [Tag]
tags])))
instance Property "BundleId" Distribution where
  type PropertyType "BundleId" Distribution = Value Prelude.Text
  set :: PropertyType "BundleId" Distribution
-> Distribution -> Distribution
set PropertyType "BundleId" Distribution
newValue Distribution {Maybe [Tag]
Maybe [CacheBehaviorPerPathProperty]
Maybe (Value Bool)
Maybe (Value Text)
Maybe CacheSettingsProperty
()
Value Text
CacheBehaviorProperty
InputOriginProperty
haddock_workaround_ :: Distribution -> ()
bundleId :: Distribution -> Value Text
cacheBehaviorSettings :: Distribution -> Maybe CacheSettingsProperty
cacheBehaviors :: Distribution -> Maybe [CacheBehaviorPerPathProperty]
certificateName :: Distribution -> Maybe (Value Text)
defaultCacheBehavior :: Distribution -> CacheBehaviorProperty
distributionName :: Distribution -> Value Text
ipAddressType :: Distribution -> Maybe (Value Text)
isEnabled :: Distribution -> Maybe (Value Bool)
origin :: Distribution -> InputOriginProperty
tags :: Distribution -> Maybe [Tag]
haddock_workaround_ :: ()
bundleId :: Value Text
cacheBehaviorSettings :: Maybe CacheSettingsProperty
cacheBehaviors :: Maybe [CacheBehaviorPerPathProperty]
certificateName :: Maybe (Value Text)
defaultCacheBehavior :: CacheBehaviorProperty
distributionName :: Value Text
ipAddressType :: Maybe (Value Text)
isEnabled :: Maybe (Value Bool)
origin :: InputOriginProperty
tags :: Maybe [Tag]
..}
    = Distribution {bundleId :: Value Text
bundleId = PropertyType "BundleId" Distribution
Value Text
newValue, Maybe [Tag]
Maybe [CacheBehaviorPerPathProperty]
Maybe (Value Bool)
Maybe (Value Text)
Maybe CacheSettingsProperty
()
Value Text
CacheBehaviorProperty
InputOriginProperty
haddock_workaround_ :: ()
cacheBehaviorSettings :: Maybe CacheSettingsProperty
cacheBehaviors :: Maybe [CacheBehaviorPerPathProperty]
certificateName :: Maybe (Value Text)
defaultCacheBehavior :: CacheBehaviorProperty
distributionName :: Value Text
ipAddressType :: Maybe (Value Text)
isEnabled :: Maybe (Value Bool)
origin :: InputOriginProperty
tags :: Maybe [Tag]
haddock_workaround_ :: ()
cacheBehaviorSettings :: Maybe CacheSettingsProperty
cacheBehaviors :: Maybe [CacheBehaviorPerPathProperty]
certificateName :: Maybe (Value Text)
defaultCacheBehavior :: CacheBehaviorProperty
distributionName :: Value Text
ipAddressType :: Maybe (Value Text)
isEnabled :: Maybe (Value Bool)
origin :: InputOriginProperty
tags :: Maybe [Tag]
..}
instance Property "CacheBehaviorSettings" Distribution where
  type PropertyType "CacheBehaviorSettings" Distribution = CacheSettingsProperty
  set :: PropertyType "CacheBehaviorSettings" Distribution
-> Distribution -> Distribution
set PropertyType "CacheBehaviorSettings" Distribution
newValue Distribution {Maybe [Tag]
Maybe [CacheBehaviorPerPathProperty]
Maybe (Value Bool)
Maybe (Value Text)
Maybe CacheSettingsProperty
()
Value Text
CacheBehaviorProperty
InputOriginProperty
haddock_workaround_ :: Distribution -> ()
bundleId :: Distribution -> Value Text
cacheBehaviorSettings :: Distribution -> Maybe CacheSettingsProperty
cacheBehaviors :: Distribution -> Maybe [CacheBehaviorPerPathProperty]
certificateName :: Distribution -> Maybe (Value Text)
defaultCacheBehavior :: Distribution -> CacheBehaviorProperty
distributionName :: Distribution -> Value Text
ipAddressType :: Distribution -> Maybe (Value Text)
isEnabled :: Distribution -> Maybe (Value Bool)
origin :: Distribution -> InputOriginProperty
tags :: Distribution -> Maybe [Tag]
haddock_workaround_ :: ()
bundleId :: Value Text
cacheBehaviorSettings :: Maybe CacheSettingsProperty
cacheBehaviors :: Maybe [CacheBehaviorPerPathProperty]
certificateName :: Maybe (Value Text)
defaultCacheBehavior :: CacheBehaviorProperty
distributionName :: Value Text
ipAddressType :: Maybe (Value Text)
isEnabled :: Maybe (Value Bool)
origin :: InputOriginProperty
tags :: Maybe [Tag]
..}
    = Distribution {cacheBehaviorSettings :: Maybe CacheSettingsProperty
cacheBehaviorSettings = CacheSettingsProperty -> Maybe CacheSettingsProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "CacheBehaviorSettings" Distribution
CacheSettingsProperty
newValue, Maybe [Tag]
Maybe [CacheBehaviorPerPathProperty]
Maybe (Value Bool)
Maybe (Value Text)
()
Value Text
CacheBehaviorProperty
InputOriginProperty
haddock_workaround_ :: ()
bundleId :: Value Text
cacheBehaviors :: Maybe [CacheBehaviorPerPathProperty]
certificateName :: Maybe (Value Text)
defaultCacheBehavior :: CacheBehaviorProperty
distributionName :: Value Text
ipAddressType :: Maybe (Value Text)
isEnabled :: Maybe (Value Bool)
origin :: InputOriginProperty
tags :: Maybe [Tag]
haddock_workaround_ :: ()
bundleId :: Value Text
cacheBehaviors :: Maybe [CacheBehaviorPerPathProperty]
certificateName :: Maybe (Value Text)
defaultCacheBehavior :: CacheBehaviorProperty
distributionName :: Value Text
ipAddressType :: Maybe (Value Text)
isEnabled :: Maybe (Value Bool)
origin :: InputOriginProperty
tags :: Maybe [Tag]
..}
instance Property "CacheBehaviors" Distribution where
  type PropertyType "CacheBehaviors" Distribution = [CacheBehaviorPerPathProperty]
  set :: PropertyType "CacheBehaviors" Distribution
-> Distribution -> Distribution
set PropertyType "CacheBehaviors" Distribution
newValue Distribution {Maybe [Tag]
Maybe [CacheBehaviorPerPathProperty]
Maybe (Value Bool)
Maybe (Value Text)
Maybe CacheSettingsProperty
()
Value Text
CacheBehaviorProperty
InputOriginProperty
haddock_workaround_ :: Distribution -> ()
bundleId :: Distribution -> Value Text
cacheBehaviorSettings :: Distribution -> Maybe CacheSettingsProperty
cacheBehaviors :: Distribution -> Maybe [CacheBehaviorPerPathProperty]
certificateName :: Distribution -> Maybe (Value Text)
defaultCacheBehavior :: Distribution -> CacheBehaviorProperty
distributionName :: Distribution -> Value Text
ipAddressType :: Distribution -> Maybe (Value Text)
isEnabled :: Distribution -> Maybe (Value Bool)
origin :: Distribution -> InputOriginProperty
tags :: Distribution -> Maybe [Tag]
haddock_workaround_ :: ()
bundleId :: Value Text
cacheBehaviorSettings :: Maybe CacheSettingsProperty
cacheBehaviors :: Maybe [CacheBehaviorPerPathProperty]
certificateName :: Maybe (Value Text)
defaultCacheBehavior :: CacheBehaviorProperty
distributionName :: Value Text
ipAddressType :: Maybe (Value Text)
isEnabled :: Maybe (Value Bool)
origin :: InputOriginProperty
tags :: Maybe [Tag]
..}
    = Distribution {cacheBehaviors :: Maybe [CacheBehaviorPerPathProperty]
cacheBehaviors = [CacheBehaviorPerPathProperty]
-> Maybe [CacheBehaviorPerPathProperty]
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure [CacheBehaviorPerPathProperty]
PropertyType "CacheBehaviors" Distribution
newValue, Maybe [Tag]
Maybe (Value Bool)
Maybe (Value Text)
Maybe CacheSettingsProperty
()
Value Text
CacheBehaviorProperty
InputOriginProperty
haddock_workaround_ :: ()
bundleId :: Value Text
cacheBehaviorSettings :: Maybe CacheSettingsProperty
certificateName :: Maybe (Value Text)
defaultCacheBehavior :: CacheBehaviorProperty
distributionName :: Value Text
ipAddressType :: Maybe (Value Text)
isEnabled :: Maybe (Value Bool)
origin :: InputOriginProperty
tags :: Maybe [Tag]
haddock_workaround_ :: ()
bundleId :: Value Text
cacheBehaviorSettings :: Maybe CacheSettingsProperty
certificateName :: Maybe (Value Text)
defaultCacheBehavior :: CacheBehaviorProperty
distributionName :: Value Text
ipAddressType :: Maybe (Value Text)
isEnabled :: Maybe (Value Bool)
origin :: InputOriginProperty
tags :: Maybe [Tag]
..}
instance Property "CertificateName" Distribution where
  type PropertyType "CertificateName" Distribution = Value Prelude.Text
  set :: PropertyType "CertificateName" Distribution
-> Distribution -> Distribution
set PropertyType "CertificateName" Distribution
newValue Distribution {Maybe [Tag]
Maybe [CacheBehaviorPerPathProperty]
Maybe (Value Bool)
Maybe (Value Text)
Maybe CacheSettingsProperty
()
Value Text
CacheBehaviorProperty
InputOriginProperty
haddock_workaround_ :: Distribution -> ()
bundleId :: Distribution -> Value Text
cacheBehaviorSettings :: Distribution -> Maybe CacheSettingsProperty
cacheBehaviors :: Distribution -> Maybe [CacheBehaviorPerPathProperty]
certificateName :: Distribution -> Maybe (Value Text)
defaultCacheBehavior :: Distribution -> CacheBehaviorProperty
distributionName :: Distribution -> Value Text
ipAddressType :: Distribution -> Maybe (Value Text)
isEnabled :: Distribution -> Maybe (Value Bool)
origin :: Distribution -> InputOriginProperty
tags :: Distribution -> Maybe [Tag]
haddock_workaround_ :: ()
bundleId :: Value Text
cacheBehaviorSettings :: Maybe CacheSettingsProperty
cacheBehaviors :: Maybe [CacheBehaviorPerPathProperty]
certificateName :: Maybe (Value Text)
defaultCacheBehavior :: CacheBehaviorProperty
distributionName :: Value Text
ipAddressType :: Maybe (Value Text)
isEnabled :: Maybe (Value Bool)
origin :: InputOriginProperty
tags :: Maybe [Tag]
..}
    = Distribution {certificateName :: Maybe (Value Text)
certificateName = Value Text -> Maybe (Value Text)
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "CertificateName" Distribution
Value Text
newValue, Maybe [Tag]
Maybe [CacheBehaviorPerPathProperty]
Maybe (Value Bool)
Maybe (Value Text)
Maybe CacheSettingsProperty
()
Value Text
CacheBehaviorProperty
InputOriginProperty
haddock_workaround_ :: ()
bundleId :: Value Text
cacheBehaviorSettings :: Maybe CacheSettingsProperty
cacheBehaviors :: Maybe [CacheBehaviorPerPathProperty]
defaultCacheBehavior :: CacheBehaviorProperty
distributionName :: Value Text
ipAddressType :: Maybe (Value Text)
isEnabled :: Maybe (Value Bool)
origin :: InputOriginProperty
tags :: Maybe [Tag]
haddock_workaround_ :: ()
bundleId :: Value Text
cacheBehaviorSettings :: Maybe CacheSettingsProperty
cacheBehaviors :: Maybe [CacheBehaviorPerPathProperty]
defaultCacheBehavior :: CacheBehaviorProperty
distributionName :: Value Text
ipAddressType :: Maybe (Value Text)
isEnabled :: Maybe (Value Bool)
origin :: InputOriginProperty
tags :: Maybe [Tag]
..}
instance Property "DefaultCacheBehavior" Distribution where
  type PropertyType "DefaultCacheBehavior" Distribution = CacheBehaviorProperty
  set :: PropertyType "DefaultCacheBehavior" Distribution
-> Distribution -> Distribution
set PropertyType "DefaultCacheBehavior" Distribution
newValue Distribution {Maybe [Tag]
Maybe [CacheBehaviorPerPathProperty]
Maybe (Value Bool)
Maybe (Value Text)
Maybe CacheSettingsProperty
()
Value Text
CacheBehaviorProperty
InputOriginProperty
haddock_workaround_ :: Distribution -> ()
bundleId :: Distribution -> Value Text
cacheBehaviorSettings :: Distribution -> Maybe CacheSettingsProperty
cacheBehaviors :: Distribution -> Maybe [CacheBehaviorPerPathProperty]
certificateName :: Distribution -> Maybe (Value Text)
defaultCacheBehavior :: Distribution -> CacheBehaviorProperty
distributionName :: Distribution -> Value Text
ipAddressType :: Distribution -> Maybe (Value Text)
isEnabled :: Distribution -> Maybe (Value Bool)
origin :: Distribution -> InputOriginProperty
tags :: Distribution -> Maybe [Tag]
haddock_workaround_ :: ()
bundleId :: Value Text
cacheBehaviorSettings :: Maybe CacheSettingsProperty
cacheBehaviors :: Maybe [CacheBehaviorPerPathProperty]
certificateName :: Maybe (Value Text)
defaultCacheBehavior :: CacheBehaviorProperty
distributionName :: Value Text
ipAddressType :: Maybe (Value Text)
isEnabled :: Maybe (Value Bool)
origin :: InputOriginProperty
tags :: Maybe [Tag]
..}
    = Distribution {defaultCacheBehavior :: CacheBehaviorProperty
defaultCacheBehavior = PropertyType "DefaultCacheBehavior" Distribution
CacheBehaviorProperty
newValue, Maybe [Tag]
Maybe [CacheBehaviorPerPathProperty]
Maybe (Value Bool)
Maybe (Value Text)
Maybe CacheSettingsProperty
()
Value Text
InputOriginProperty
haddock_workaround_ :: ()
bundleId :: Value Text
cacheBehaviorSettings :: Maybe CacheSettingsProperty
cacheBehaviors :: Maybe [CacheBehaviorPerPathProperty]
certificateName :: Maybe (Value Text)
distributionName :: Value Text
ipAddressType :: Maybe (Value Text)
isEnabled :: Maybe (Value Bool)
origin :: InputOriginProperty
tags :: Maybe [Tag]
haddock_workaround_ :: ()
bundleId :: Value Text
cacheBehaviorSettings :: Maybe CacheSettingsProperty
cacheBehaviors :: Maybe [CacheBehaviorPerPathProperty]
certificateName :: Maybe (Value Text)
distributionName :: Value Text
ipAddressType :: Maybe (Value Text)
isEnabled :: Maybe (Value Bool)
origin :: InputOriginProperty
tags :: Maybe [Tag]
..}
instance Property "DistributionName" Distribution where
  type PropertyType "DistributionName" Distribution = Value Prelude.Text
  set :: PropertyType "DistributionName" Distribution
-> Distribution -> Distribution
set PropertyType "DistributionName" Distribution
newValue Distribution {Maybe [Tag]
Maybe [CacheBehaviorPerPathProperty]
Maybe (Value Bool)
Maybe (Value Text)
Maybe CacheSettingsProperty
()
Value Text
CacheBehaviorProperty
InputOriginProperty
haddock_workaround_ :: Distribution -> ()
bundleId :: Distribution -> Value Text
cacheBehaviorSettings :: Distribution -> Maybe CacheSettingsProperty
cacheBehaviors :: Distribution -> Maybe [CacheBehaviorPerPathProperty]
certificateName :: Distribution -> Maybe (Value Text)
defaultCacheBehavior :: Distribution -> CacheBehaviorProperty
distributionName :: Distribution -> Value Text
ipAddressType :: Distribution -> Maybe (Value Text)
isEnabled :: Distribution -> Maybe (Value Bool)
origin :: Distribution -> InputOriginProperty
tags :: Distribution -> Maybe [Tag]
haddock_workaround_ :: ()
bundleId :: Value Text
cacheBehaviorSettings :: Maybe CacheSettingsProperty
cacheBehaviors :: Maybe [CacheBehaviorPerPathProperty]
certificateName :: Maybe (Value Text)
defaultCacheBehavior :: CacheBehaviorProperty
distributionName :: Value Text
ipAddressType :: Maybe (Value Text)
isEnabled :: Maybe (Value Bool)
origin :: InputOriginProperty
tags :: Maybe [Tag]
..}
    = Distribution {distributionName :: Value Text
distributionName = PropertyType "DistributionName" Distribution
Value Text
newValue, Maybe [Tag]
Maybe [CacheBehaviorPerPathProperty]
Maybe (Value Bool)
Maybe (Value Text)
Maybe CacheSettingsProperty
()
Value Text
CacheBehaviorProperty
InputOriginProperty
haddock_workaround_ :: ()
bundleId :: Value Text
cacheBehaviorSettings :: Maybe CacheSettingsProperty
cacheBehaviors :: Maybe [CacheBehaviorPerPathProperty]
certificateName :: Maybe (Value Text)
defaultCacheBehavior :: CacheBehaviorProperty
ipAddressType :: Maybe (Value Text)
isEnabled :: Maybe (Value Bool)
origin :: InputOriginProperty
tags :: Maybe [Tag]
haddock_workaround_ :: ()
bundleId :: Value Text
cacheBehaviorSettings :: Maybe CacheSettingsProperty
cacheBehaviors :: Maybe [CacheBehaviorPerPathProperty]
certificateName :: Maybe (Value Text)
defaultCacheBehavior :: CacheBehaviorProperty
ipAddressType :: Maybe (Value Text)
isEnabled :: Maybe (Value Bool)
origin :: InputOriginProperty
tags :: Maybe [Tag]
..}
instance Property "IpAddressType" Distribution where
  type PropertyType "IpAddressType" Distribution = Value Prelude.Text
  set :: PropertyType "IpAddressType" Distribution
-> Distribution -> Distribution
set PropertyType "IpAddressType" Distribution
newValue Distribution {Maybe [Tag]
Maybe [CacheBehaviorPerPathProperty]
Maybe (Value Bool)
Maybe (Value Text)
Maybe CacheSettingsProperty
()
Value Text
CacheBehaviorProperty
InputOriginProperty
haddock_workaround_ :: Distribution -> ()
bundleId :: Distribution -> Value Text
cacheBehaviorSettings :: Distribution -> Maybe CacheSettingsProperty
cacheBehaviors :: Distribution -> Maybe [CacheBehaviorPerPathProperty]
certificateName :: Distribution -> Maybe (Value Text)
defaultCacheBehavior :: Distribution -> CacheBehaviorProperty
distributionName :: Distribution -> Value Text
ipAddressType :: Distribution -> Maybe (Value Text)
isEnabled :: Distribution -> Maybe (Value Bool)
origin :: Distribution -> InputOriginProperty
tags :: Distribution -> Maybe [Tag]
haddock_workaround_ :: ()
bundleId :: Value Text
cacheBehaviorSettings :: Maybe CacheSettingsProperty
cacheBehaviors :: Maybe [CacheBehaviorPerPathProperty]
certificateName :: Maybe (Value Text)
defaultCacheBehavior :: CacheBehaviorProperty
distributionName :: Value Text
ipAddressType :: Maybe (Value Text)
isEnabled :: Maybe (Value Bool)
origin :: InputOriginProperty
tags :: Maybe [Tag]
..}
    = Distribution {ipAddressType :: Maybe (Value Text)
ipAddressType = Value Text -> Maybe (Value Text)
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "IpAddressType" Distribution
Value Text
newValue, Maybe [Tag]
Maybe [CacheBehaviorPerPathProperty]
Maybe (Value Bool)
Maybe (Value Text)
Maybe CacheSettingsProperty
()
Value Text
CacheBehaviorProperty
InputOriginProperty
haddock_workaround_ :: ()
bundleId :: Value Text
cacheBehaviorSettings :: Maybe CacheSettingsProperty
cacheBehaviors :: Maybe [CacheBehaviorPerPathProperty]
certificateName :: Maybe (Value Text)
defaultCacheBehavior :: CacheBehaviorProperty
distributionName :: Value Text
isEnabled :: Maybe (Value Bool)
origin :: InputOriginProperty
tags :: Maybe [Tag]
haddock_workaround_ :: ()
bundleId :: Value Text
cacheBehaviorSettings :: Maybe CacheSettingsProperty
cacheBehaviors :: Maybe [CacheBehaviorPerPathProperty]
certificateName :: Maybe (Value Text)
defaultCacheBehavior :: CacheBehaviorProperty
distributionName :: Value Text
isEnabled :: Maybe (Value Bool)
origin :: InputOriginProperty
tags :: Maybe [Tag]
..}
instance Property "IsEnabled" Distribution where
  type PropertyType "IsEnabled" Distribution = Value Prelude.Bool
  set :: PropertyType "IsEnabled" Distribution
-> Distribution -> Distribution
set PropertyType "IsEnabled" Distribution
newValue Distribution {Maybe [Tag]
Maybe [CacheBehaviorPerPathProperty]
Maybe (Value Bool)
Maybe (Value Text)
Maybe CacheSettingsProperty
()
Value Text
CacheBehaviorProperty
InputOriginProperty
haddock_workaround_ :: Distribution -> ()
bundleId :: Distribution -> Value Text
cacheBehaviorSettings :: Distribution -> Maybe CacheSettingsProperty
cacheBehaviors :: Distribution -> Maybe [CacheBehaviorPerPathProperty]
certificateName :: Distribution -> Maybe (Value Text)
defaultCacheBehavior :: Distribution -> CacheBehaviorProperty
distributionName :: Distribution -> Value Text
ipAddressType :: Distribution -> Maybe (Value Text)
isEnabled :: Distribution -> Maybe (Value Bool)
origin :: Distribution -> InputOriginProperty
tags :: Distribution -> Maybe [Tag]
haddock_workaround_ :: ()
bundleId :: Value Text
cacheBehaviorSettings :: Maybe CacheSettingsProperty
cacheBehaviors :: Maybe [CacheBehaviorPerPathProperty]
certificateName :: Maybe (Value Text)
defaultCacheBehavior :: CacheBehaviorProperty
distributionName :: Value Text
ipAddressType :: Maybe (Value Text)
isEnabled :: Maybe (Value Bool)
origin :: InputOriginProperty
tags :: Maybe [Tag]
..}
    = Distribution {isEnabled :: Maybe (Value Bool)
isEnabled = Value Bool -> Maybe (Value Bool)
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "IsEnabled" Distribution
Value Bool
newValue, Maybe [Tag]
Maybe [CacheBehaviorPerPathProperty]
Maybe (Value Text)
Maybe CacheSettingsProperty
()
Value Text
CacheBehaviorProperty
InputOriginProperty
haddock_workaround_ :: ()
bundleId :: Value Text
cacheBehaviorSettings :: Maybe CacheSettingsProperty
cacheBehaviors :: Maybe [CacheBehaviorPerPathProperty]
certificateName :: Maybe (Value Text)
defaultCacheBehavior :: CacheBehaviorProperty
distributionName :: Value Text
ipAddressType :: Maybe (Value Text)
origin :: InputOriginProperty
tags :: Maybe [Tag]
haddock_workaround_ :: ()
bundleId :: Value Text
cacheBehaviorSettings :: Maybe CacheSettingsProperty
cacheBehaviors :: Maybe [CacheBehaviorPerPathProperty]
certificateName :: Maybe (Value Text)
defaultCacheBehavior :: CacheBehaviorProperty
distributionName :: Value Text
ipAddressType :: Maybe (Value Text)
origin :: InputOriginProperty
tags :: Maybe [Tag]
..}
instance Property "Origin" Distribution where
  type PropertyType "Origin" Distribution = InputOriginProperty
  set :: PropertyType "Origin" Distribution -> Distribution -> Distribution
set PropertyType "Origin" Distribution
newValue Distribution {Maybe [Tag]
Maybe [CacheBehaviorPerPathProperty]
Maybe (Value Bool)
Maybe (Value Text)
Maybe CacheSettingsProperty
()
Value Text
CacheBehaviorProperty
InputOriginProperty
haddock_workaround_ :: Distribution -> ()
bundleId :: Distribution -> Value Text
cacheBehaviorSettings :: Distribution -> Maybe CacheSettingsProperty
cacheBehaviors :: Distribution -> Maybe [CacheBehaviorPerPathProperty]
certificateName :: Distribution -> Maybe (Value Text)
defaultCacheBehavior :: Distribution -> CacheBehaviorProperty
distributionName :: Distribution -> Value Text
ipAddressType :: Distribution -> Maybe (Value Text)
isEnabled :: Distribution -> Maybe (Value Bool)
origin :: Distribution -> InputOriginProperty
tags :: Distribution -> Maybe [Tag]
haddock_workaround_ :: ()
bundleId :: Value Text
cacheBehaviorSettings :: Maybe CacheSettingsProperty
cacheBehaviors :: Maybe [CacheBehaviorPerPathProperty]
certificateName :: Maybe (Value Text)
defaultCacheBehavior :: CacheBehaviorProperty
distributionName :: Value Text
ipAddressType :: Maybe (Value Text)
isEnabled :: Maybe (Value Bool)
origin :: InputOriginProperty
tags :: Maybe [Tag]
..}
    = Distribution {origin :: InputOriginProperty
origin = PropertyType "Origin" Distribution
InputOriginProperty
newValue, Maybe [Tag]
Maybe [CacheBehaviorPerPathProperty]
Maybe (Value Bool)
Maybe (Value Text)
Maybe CacheSettingsProperty
()
Value Text
CacheBehaviorProperty
haddock_workaround_ :: ()
bundleId :: Value Text
cacheBehaviorSettings :: Maybe CacheSettingsProperty
cacheBehaviors :: Maybe [CacheBehaviorPerPathProperty]
certificateName :: Maybe (Value Text)
defaultCacheBehavior :: CacheBehaviorProperty
distributionName :: Value Text
ipAddressType :: Maybe (Value Text)
isEnabled :: Maybe (Value Bool)
tags :: Maybe [Tag]
haddock_workaround_ :: ()
bundleId :: Value Text
cacheBehaviorSettings :: Maybe CacheSettingsProperty
cacheBehaviors :: Maybe [CacheBehaviorPerPathProperty]
certificateName :: Maybe (Value Text)
defaultCacheBehavior :: CacheBehaviorProperty
distributionName :: Value Text
ipAddressType :: Maybe (Value Text)
isEnabled :: Maybe (Value Bool)
tags :: Maybe [Tag]
..}
instance Property "Tags" Distribution where
  type PropertyType "Tags" Distribution = [Tag]
  set :: PropertyType "Tags" Distribution -> Distribution -> Distribution
set PropertyType "Tags" Distribution
newValue Distribution {Maybe [Tag]
Maybe [CacheBehaviorPerPathProperty]
Maybe (Value Bool)
Maybe (Value Text)
Maybe CacheSettingsProperty
()
Value Text
CacheBehaviorProperty
InputOriginProperty
haddock_workaround_ :: Distribution -> ()
bundleId :: Distribution -> Value Text
cacheBehaviorSettings :: Distribution -> Maybe CacheSettingsProperty
cacheBehaviors :: Distribution -> Maybe [CacheBehaviorPerPathProperty]
certificateName :: Distribution -> Maybe (Value Text)
defaultCacheBehavior :: Distribution -> CacheBehaviorProperty
distributionName :: Distribution -> Value Text
ipAddressType :: Distribution -> Maybe (Value Text)
isEnabled :: Distribution -> Maybe (Value Bool)
origin :: Distribution -> InputOriginProperty
tags :: Distribution -> Maybe [Tag]
haddock_workaround_ :: ()
bundleId :: Value Text
cacheBehaviorSettings :: Maybe CacheSettingsProperty
cacheBehaviors :: Maybe [CacheBehaviorPerPathProperty]
certificateName :: Maybe (Value Text)
defaultCacheBehavior :: CacheBehaviorProperty
distributionName :: Value Text
ipAddressType :: Maybe (Value Text)
isEnabled :: Maybe (Value Bool)
origin :: InputOriginProperty
tags :: Maybe [Tag]
..}
    = Distribution {tags :: Maybe [Tag]
tags = [Tag] -> Maybe [Tag]
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure [Tag]
PropertyType "Tags" Distribution
newValue, Maybe [CacheBehaviorPerPathProperty]
Maybe (Value Bool)
Maybe (Value Text)
Maybe CacheSettingsProperty
()
Value Text
CacheBehaviorProperty
InputOriginProperty
haddock_workaround_ :: ()
bundleId :: Value Text
cacheBehaviorSettings :: Maybe CacheSettingsProperty
cacheBehaviors :: Maybe [CacheBehaviorPerPathProperty]
certificateName :: Maybe (Value Text)
defaultCacheBehavior :: CacheBehaviorProperty
distributionName :: Value Text
ipAddressType :: Maybe (Value Text)
isEnabled :: Maybe (Value Bool)
origin :: InputOriginProperty
haddock_workaround_ :: ()
bundleId :: Value Text
cacheBehaviorSettings :: Maybe CacheSettingsProperty
cacheBehaviors :: Maybe [CacheBehaviorPerPathProperty]
certificateName :: Maybe (Value Text)
defaultCacheBehavior :: CacheBehaviorProperty
distributionName :: Value Text
ipAddressType :: Maybe (Value Text)
isEnabled :: Maybe (Value Bool)
origin :: InputOriginProperty
..}