module Stratosphere.DataSync.LocationAzureBlob.AzureBlobSasConfigurationProperty (
        AzureBlobSasConfigurationProperty(..),
        mkAzureBlobSasConfigurationProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import Stratosphere.ResourceProperties
import Stratosphere.Value
data AzureBlobSasConfigurationProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationazureblob-azureblobsasconfiguration.html>
    AzureBlobSasConfigurationProperty {AzureBlobSasConfigurationProperty -> ()
haddock_workaround_ :: (),
                                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationazureblob-azureblobsasconfiguration.html#cfn-datasync-locationazureblob-azureblobsasconfiguration-azureblobsastoken>
                                       AzureBlobSasConfigurationProperty -> Value Text
azureBlobSasToken :: (Value Prelude.Text)}
  deriving stock (AzureBlobSasConfigurationProperty
-> AzureBlobSasConfigurationProperty -> Bool
(AzureBlobSasConfigurationProperty
 -> AzureBlobSasConfigurationProperty -> Bool)
-> (AzureBlobSasConfigurationProperty
    -> AzureBlobSasConfigurationProperty -> Bool)
-> Eq AzureBlobSasConfigurationProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: AzureBlobSasConfigurationProperty
-> AzureBlobSasConfigurationProperty -> Bool
== :: AzureBlobSasConfigurationProperty
-> AzureBlobSasConfigurationProperty -> Bool
$c/= :: AzureBlobSasConfigurationProperty
-> AzureBlobSasConfigurationProperty -> Bool
/= :: AzureBlobSasConfigurationProperty
-> AzureBlobSasConfigurationProperty -> Bool
Prelude.Eq, Int -> AzureBlobSasConfigurationProperty -> ShowS
[AzureBlobSasConfigurationProperty] -> ShowS
AzureBlobSasConfigurationProperty -> String
(Int -> AzureBlobSasConfigurationProperty -> ShowS)
-> (AzureBlobSasConfigurationProperty -> String)
-> ([AzureBlobSasConfigurationProperty] -> ShowS)
-> Show AzureBlobSasConfigurationProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> AzureBlobSasConfigurationProperty -> ShowS
showsPrec :: Int -> AzureBlobSasConfigurationProperty -> ShowS
$cshow :: AzureBlobSasConfigurationProperty -> String
show :: AzureBlobSasConfigurationProperty -> String
$cshowList :: [AzureBlobSasConfigurationProperty] -> ShowS
showList :: [AzureBlobSasConfigurationProperty] -> ShowS
Prelude.Show)
mkAzureBlobSasConfigurationProperty ::
  Value Prelude.Text -> AzureBlobSasConfigurationProperty
mkAzureBlobSasConfigurationProperty :: Value Text -> AzureBlobSasConfigurationProperty
mkAzureBlobSasConfigurationProperty Value Text
azureBlobSasToken
  = AzureBlobSasConfigurationProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (), azureBlobSasToken :: Value Text
azureBlobSasToken = Value Text
azureBlobSasToken}
instance ToResourceProperties AzureBlobSasConfigurationProperty where
  toResourceProperties :: AzureBlobSasConfigurationProperty -> ResourceProperties
toResourceProperties AzureBlobSasConfigurationProperty {()
Value Text
haddock_workaround_ :: AzureBlobSasConfigurationProperty -> ()
azureBlobSasToken :: AzureBlobSasConfigurationProperty -> Value Text
haddock_workaround_ :: ()
azureBlobSasToken :: Value Text
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::DataSync::LocationAzureBlob.AzureBlobSasConfiguration",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Key
"AzureBlobSasToken" 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
azureBlobSasToken]}
instance JSON.ToJSON AzureBlobSasConfigurationProperty where
  toJSON :: AzureBlobSasConfigurationProperty -> Value
toJSON AzureBlobSasConfigurationProperty {()
Value Text
haddock_workaround_ :: AzureBlobSasConfigurationProperty -> ()
azureBlobSasToken :: AzureBlobSasConfigurationProperty -> Value Text
haddock_workaround_ :: ()
azureBlobSasToken :: Value Text
..}
    = [(Key, Value)] -> Value
JSON.object [Key
"AzureBlobSasToken" 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
azureBlobSasToken]
instance Property "AzureBlobSasToken" AzureBlobSasConfigurationProperty where
  type PropertyType "AzureBlobSasToken" AzureBlobSasConfigurationProperty = Value Prelude.Text
  set :: PropertyType "AzureBlobSasToken" AzureBlobSasConfigurationProperty
-> AzureBlobSasConfigurationProperty
-> AzureBlobSasConfigurationProperty
set PropertyType "AzureBlobSasToken" AzureBlobSasConfigurationProperty
newValue AzureBlobSasConfigurationProperty {()
Value Text
haddock_workaround_ :: AzureBlobSasConfigurationProperty -> ()
azureBlobSasToken :: AzureBlobSasConfigurationProperty -> Value Text
haddock_workaround_ :: ()
azureBlobSasToken :: Value Text
..}
    = AzureBlobSasConfigurationProperty
        {azureBlobSasToken :: Value Text
azureBlobSasToken = PropertyType "AzureBlobSasToken" AzureBlobSasConfigurationProperty
Value Text
newValue, ()
haddock_workaround_ :: ()
haddock_workaround_ :: ()
..}