module Stratosphere.QBusiness.WebExperience.SamlProviderConfigurationProperty (
        SamlProviderConfigurationProperty(..),
        mkSamlProviderConfigurationProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import Stratosphere.ResourceProperties
import Stratosphere.Value
data SamlProviderConfigurationProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-webexperience-samlproviderconfiguration.html>
    SamlProviderConfigurationProperty {SamlProviderConfigurationProperty -> ()
haddock_workaround_ :: (),
                                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-qbusiness-webexperience-samlproviderconfiguration.html#cfn-qbusiness-webexperience-samlproviderconfiguration-authenticationurl>
                                       SamlProviderConfigurationProperty -> Value Text
authenticationUrl :: (Value Prelude.Text)}
  deriving stock (SamlProviderConfigurationProperty
-> SamlProviderConfigurationProperty -> Bool
(SamlProviderConfigurationProperty
 -> SamlProviderConfigurationProperty -> Bool)
-> (SamlProviderConfigurationProperty
    -> SamlProviderConfigurationProperty -> Bool)
-> Eq SamlProviderConfigurationProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: SamlProviderConfigurationProperty
-> SamlProviderConfigurationProperty -> Bool
== :: SamlProviderConfigurationProperty
-> SamlProviderConfigurationProperty -> Bool
$c/= :: SamlProviderConfigurationProperty
-> SamlProviderConfigurationProperty -> Bool
/= :: SamlProviderConfigurationProperty
-> SamlProviderConfigurationProperty -> Bool
Prelude.Eq, Int -> SamlProviderConfigurationProperty -> ShowS
[SamlProviderConfigurationProperty] -> ShowS
SamlProviderConfigurationProperty -> String
(Int -> SamlProviderConfigurationProperty -> ShowS)
-> (SamlProviderConfigurationProperty -> String)
-> ([SamlProviderConfigurationProperty] -> ShowS)
-> Show SamlProviderConfigurationProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> SamlProviderConfigurationProperty -> ShowS
showsPrec :: Int -> SamlProviderConfigurationProperty -> ShowS
$cshow :: SamlProviderConfigurationProperty -> String
show :: SamlProviderConfigurationProperty -> String
$cshowList :: [SamlProviderConfigurationProperty] -> ShowS
showList :: [SamlProviderConfigurationProperty] -> ShowS
Prelude.Show)
mkSamlProviderConfigurationProperty ::
  Value Prelude.Text -> SamlProviderConfigurationProperty
mkSamlProviderConfigurationProperty :: Value Text -> SamlProviderConfigurationProperty
mkSamlProviderConfigurationProperty Value Text
authenticationUrl
  = SamlProviderConfigurationProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (), authenticationUrl :: Value Text
authenticationUrl = Value Text
authenticationUrl}
instance ToResourceProperties SamlProviderConfigurationProperty where
  toResourceProperties :: SamlProviderConfigurationProperty -> ResourceProperties
toResourceProperties SamlProviderConfigurationProperty {()
Value Text
haddock_workaround_ :: SamlProviderConfigurationProperty -> ()
authenticationUrl :: SamlProviderConfigurationProperty -> Value Text
haddock_workaround_ :: ()
authenticationUrl :: Value Text
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::QBusiness::WebExperience.SamlProviderConfiguration",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Key
"AuthenticationUrl" 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
authenticationUrl]}
instance JSON.ToJSON SamlProviderConfigurationProperty where
  toJSON :: SamlProviderConfigurationProperty -> Value
toJSON SamlProviderConfigurationProperty {()
Value Text
haddock_workaround_ :: SamlProviderConfigurationProperty -> ()
authenticationUrl :: SamlProviderConfigurationProperty -> Value Text
haddock_workaround_ :: ()
authenticationUrl :: Value Text
..}
    = [(Key, Value)] -> Value
JSON.object [Key
"AuthenticationUrl" 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
authenticationUrl]
instance Property "AuthenticationUrl" SamlProviderConfigurationProperty where
  type PropertyType "AuthenticationUrl" SamlProviderConfigurationProperty = Value Prelude.Text
  set :: PropertyType "AuthenticationUrl" SamlProviderConfigurationProperty
-> SamlProviderConfigurationProperty
-> SamlProviderConfigurationProperty
set PropertyType "AuthenticationUrl" SamlProviderConfigurationProperty
newValue SamlProviderConfigurationProperty {()
Value Text
haddock_workaround_ :: SamlProviderConfigurationProperty -> ()
authenticationUrl :: SamlProviderConfigurationProperty -> Value Text
haddock_workaround_ :: ()
authenticationUrl :: Value Text
..}
    = SamlProviderConfigurationProperty
        {authenticationUrl :: Value Text
authenticationUrl = PropertyType "AuthenticationUrl" SamlProviderConfigurationProperty
Value Text
newValue, ()
haddock_workaround_ :: ()
haddock_workaround_ :: ()
..}