module Stratosphere.MediaPackageV2.OriginEndpointPolicy.CdnAuthConfigurationProperty (
        CdnAuthConfigurationProperty(..), mkCdnAuthConfigurationProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import Stratosphere.ResourceProperties
import Stratosphere.Value
data CdnAuthConfigurationProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpointpolicy-cdnauthconfiguration.html>
    CdnAuthConfigurationProperty {CdnAuthConfigurationProperty -> ()
haddock_workaround_ :: (),
                                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpointpolicy-cdnauthconfiguration.html#cfn-mediapackagev2-originendpointpolicy-cdnauthconfiguration-cdnidentifiersecretarns>
                                  CdnAuthConfigurationProperty -> ValueList Text
cdnIdentifierSecretArns :: (ValueList Prelude.Text),
                                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-mediapackagev2-originendpointpolicy-cdnauthconfiguration.html#cfn-mediapackagev2-originendpointpolicy-cdnauthconfiguration-secretsrolearn>
                                  CdnAuthConfigurationProperty -> Value Text
secretsRoleArn :: (Value Prelude.Text)}
  deriving stock (CdnAuthConfigurationProperty
-> CdnAuthConfigurationProperty -> Bool
(CdnAuthConfigurationProperty
 -> CdnAuthConfigurationProperty -> Bool)
-> (CdnAuthConfigurationProperty
    -> CdnAuthConfigurationProperty -> Bool)
-> Eq CdnAuthConfigurationProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: CdnAuthConfigurationProperty
-> CdnAuthConfigurationProperty -> Bool
== :: CdnAuthConfigurationProperty
-> CdnAuthConfigurationProperty -> Bool
$c/= :: CdnAuthConfigurationProperty
-> CdnAuthConfigurationProperty -> Bool
/= :: CdnAuthConfigurationProperty
-> CdnAuthConfigurationProperty -> Bool
Prelude.Eq, Int -> CdnAuthConfigurationProperty -> ShowS
[CdnAuthConfigurationProperty] -> ShowS
CdnAuthConfigurationProperty -> String
(Int -> CdnAuthConfigurationProperty -> ShowS)
-> (CdnAuthConfigurationProperty -> String)
-> ([CdnAuthConfigurationProperty] -> ShowS)
-> Show CdnAuthConfigurationProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> CdnAuthConfigurationProperty -> ShowS
showsPrec :: Int -> CdnAuthConfigurationProperty -> ShowS
$cshow :: CdnAuthConfigurationProperty -> String
show :: CdnAuthConfigurationProperty -> String
$cshowList :: [CdnAuthConfigurationProperty] -> ShowS
showList :: [CdnAuthConfigurationProperty] -> ShowS
Prelude.Show)
mkCdnAuthConfigurationProperty ::
  ValueList Prelude.Text
  -> Value Prelude.Text -> CdnAuthConfigurationProperty
mkCdnAuthConfigurationProperty :: ValueList Text -> Value Text -> CdnAuthConfigurationProperty
mkCdnAuthConfigurationProperty
  ValueList Text
cdnIdentifierSecretArns
  Value Text
secretsRoleArn
  = CdnAuthConfigurationProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (),
       cdnIdentifierSecretArns :: ValueList Text
cdnIdentifierSecretArns = ValueList Text
cdnIdentifierSecretArns,
       secretsRoleArn :: Value Text
secretsRoleArn = Value Text
secretsRoleArn}
instance ToResourceProperties CdnAuthConfigurationProperty where
  toResourceProperties :: CdnAuthConfigurationProperty -> ResourceProperties
toResourceProperties CdnAuthConfigurationProperty {()
ValueList Text
Value Text
haddock_workaround_ :: CdnAuthConfigurationProperty -> ()
cdnIdentifierSecretArns :: CdnAuthConfigurationProperty -> ValueList Text
secretsRoleArn :: CdnAuthConfigurationProperty -> Value Text
haddock_workaround_ :: ()
cdnIdentifierSecretArns :: ValueList Text
secretsRoleArn :: Value Text
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::MediaPackageV2::OriginEndpointPolicy.CdnAuthConfiguration",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Key
"CdnIdentifierSecretArns"
                         Key -> ValueList Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= ValueList Text
cdnIdentifierSecretArns,
                       Key
"SecretsRoleArn" 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
secretsRoleArn]}
instance JSON.ToJSON CdnAuthConfigurationProperty where
  toJSON :: CdnAuthConfigurationProperty -> Value
toJSON CdnAuthConfigurationProperty {()
ValueList Text
Value Text
haddock_workaround_ :: CdnAuthConfigurationProperty -> ()
cdnIdentifierSecretArns :: CdnAuthConfigurationProperty -> ValueList Text
secretsRoleArn :: CdnAuthConfigurationProperty -> Value Text
haddock_workaround_ :: ()
cdnIdentifierSecretArns :: ValueList Text
secretsRoleArn :: Value Text
..}
    = [(Key, Value)] -> Value
JSON.object
        [Key
"CdnIdentifierSecretArns" Key -> ValueList Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= ValueList Text
cdnIdentifierSecretArns,
         Key
"SecretsRoleArn" 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
secretsRoleArn]
instance Property "CdnIdentifierSecretArns" CdnAuthConfigurationProperty where
  type PropertyType "CdnIdentifierSecretArns" CdnAuthConfigurationProperty = ValueList Prelude.Text
  set :: PropertyType "CdnIdentifierSecretArns" CdnAuthConfigurationProperty
-> CdnAuthConfigurationProperty -> CdnAuthConfigurationProperty
set PropertyType "CdnIdentifierSecretArns" CdnAuthConfigurationProperty
newValue CdnAuthConfigurationProperty {()
ValueList Text
Value Text
haddock_workaround_ :: CdnAuthConfigurationProperty -> ()
cdnIdentifierSecretArns :: CdnAuthConfigurationProperty -> ValueList Text
secretsRoleArn :: CdnAuthConfigurationProperty -> Value Text
haddock_workaround_ :: ()
cdnIdentifierSecretArns :: ValueList Text
secretsRoleArn :: Value Text
..}
    = CdnAuthConfigurationProperty
        {cdnIdentifierSecretArns :: ValueList Text
cdnIdentifierSecretArns = PropertyType "CdnIdentifierSecretArns" CdnAuthConfigurationProperty
ValueList Text
newValue, ()
Value Text
haddock_workaround_ :: ()
secretsRoleArn :: Value Text
haddock_workaround_ :: ()
secretsRoleArn :: Value Text
..}
instance Property "SecretsRoleArn" CdnAuthConfigurationProperty where
  type PropertyType "SecretsRoleArn" CdnAuthConfigurationProperty = Value Prelude.Text
  set :: PropertyType "SecretsRoleArn" CdnAuthConfigurationProperty
-> CdnAuthConfigurationProperty -> CdnAuthConfigurationProperty
set PropertyType "SecretsRoleArn" CdnAuthConfigurationProperty
newValue CdnAuthConfigurationProperty {()
ValueList Text
Value Text
haddock_workaround_ :: CdnAuthConfigurationProperty -> ()
cdnIdentifierSecretArns :: CdnAuthConfigurationProperty -> ValueList Text
secretsRoleArn :: CdnAuthConfigurationProperty -> Value Text
haddock_workaround_ :: ()
cdnIdentifierSecretArns :: ValueList Text
secretsRoleArn :: Value Text
..}
    = CdnAuthConfigurationProperty {secretsRoleArn :: Value Text
secretsRoleArn = PropertyType "SecretsRoleArn" CdnAuthConfigurationProperty
Value Text
newValue, ()
ValueList Text
haddock_workaround_ :: ()
cdnIdentifierSecretArns :: ValueList Text
haddock_workaround_ :: ()
cdnIdentifierSecretArns :: ValueList Text
..}