module Stratosphere.SSMContacts.Rotation.ShiftCoverageProperty (
module Exports, ShiftCoverageProperty(..), mkShiftCoverageProperty
) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import {-# SOURCE #-} Stratosphere.SSMContacts.Rotation.CoverageTimeProperty as Exports
import Stratosphere.ResourceProperties
import Stratosphere.Value
data ShiftCoverageProperty
=
ShiftCoverageProperty {ShiftCoverageProperty -> ()
haddock_workaround_ :: (),
ShiftCoverageProperty -> [CoverageTimeProperty]
coverageTimes :: [CoverageTimeProperty],
ShiftCoverageProperty -> Value Text
dayOfWeek :: (Value Prelude.Text)}
deriving stock (ShiftCoverageProperty -> ShiftCoverageProperty -> Bool
(ShiftCoverageProperty -> ShiftCoverageProperty -> Bool)
-> (ShiftCoverageProperty -> ShiftCoverageProperty -> Bool)
-> Eq ShiftCoverageProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: ShiftCoverageProperty -> ShiftCoverageProperty -> Bool
== :: ShiftCoverageProperty -> ShiftCoverageProperty -> Bool
$c/= :: ShiftCoverageProperty -> ShiftCoverageProperty -> Bool
/= :: ShiftCoverageProperty -> ShiftCoverageProperty -> Bool
Prelude.Eq, Int -> ShiftCoverageProperty -> ShowS
[ShiftCoverageProperty] -> ShowS
ShiftCoverageProperty -> String
(Int -> ShiftCoverageProperty -> ShowS)
-> (ShiftCoverageProperty -> String)
-> ([ShiftCoverageProperty] -> ShowS)
-> Show ShiftCoverageProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> ShiftCoverageProperty -> ShowS
showsPrec :: Int -> ShiftCoverageProperty -> ShowS
$cshow :: ShiftCoverageProperty -> String
show :: ShiftCoverageProperty -> String
$cshowList :: [ShiftCoverageProperty] -> ShowS
showList :: [ShiftCoverageProperty] -> ShowS
Prelude.Show)
mkShiftCoverageProperty ::
[CoverageTimeProperty]
-> Value Prelude.Text -> ShiftCoverageProperty
mkShiftCoverageProperty :: [CoverageTimeProperty] -> Value Text -> ShiftCoverageProperty
mkShiftCoverageProperty [CoverageTimeProperty]
coverageTimes Value Text
dayOfWeek
= ShiftCoverageProperty
{haddock_workaround_ :: ()
haddock_workaround_ = (), coverageTimes :: [CoverageTimeProperty]
coverageTimes = [CoverageTimeProperty]
coverageTimes,
dayOfWeek :: Value Text
dayOfWeek = Value Text
dayOfWeek}
instance ToResourceProperties ShiftCoverageProperty where
toResourceProperties :: ShiftCoverageProperty -> ResourceProperties
toResourceProperties ShiftCoverageProperty {[CoverageTimeProperty]
()
Value Text
haddock_workaround_ :: ShiftCoverageProperty -> ()
coverageTimes :: ShiftCoverageProperty -> [CoverageTimeProperty]
dayOfWeek :: ShiftCoverageProperty -> Value Text
haddock_workaround_ :: ()
coverageTimes :: [CoverageTimeProperty]
dayOfWeek :: Value Text
..}
= ResourceProperties
{awsType :: Text
awsType = Text
"AWS::SSMContacts::Rotation.ShiftCoverage",
supportsTags :: Bool
supportsTags = Bool
Prelude.False,
properties :: Object
properties = [Key
"CoverageTimes" Key -> [CoverageTimeProperty] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= [CoverageTimeProperty]
coverageTimes,
Key
"DayOfWeek" 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
dayOfWeek]}
instance JSON.ToJSON ShiftCoverageProperty where
toJSON :: ShiftCoverageProperty -> Value
toJSON ShiftCoverageProperty {[CoverageTimeProperty]
()
Value Text
haddock_workaround_ :: ShiftCoverageProperty -> ()
coverageTimes :: ShiftCoverageProperty -> [CoverageTimeProperty]
dayOfWeek :: ShiftCoverageProperty -> Value Text
haddock_workaround_ :: ()
coverageTimes :: [CoverageTimeProperty]
dayOfWeek :: Value Text
..}
= [(Key, Value)] -> Value
JSON.object
[Key
"CoverageTimes" Key -> [CoverageTimeProperty] -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= [CoverageTimeProperty]
coverageTimes,
Key
"DayOfWeek" 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
dayOfWeek]
instance Property "CoverageTimes" ShiftCoverageProperty where
type PropertyType "CoverageTimes" ShiftCoverageProperty = [CoverageTimeProperty]
set :: PropertyType "CoverageTimes" ShiftCoverageProperty
-> ShiftCoverageProperty -> ShiftCoverageProperty
set PropertyType "CoverageTimes" ShiftCoverageProperty
newValue ShiftCoverageProperty {[CoverageTimeProperty]
()
Value Text
haddock_workaround_ :: ShiftCoverageProperty -> ()
coverageTimes :: ShiftCoverageProperty -> [CoverageTimeProperty]
dayOfWeek :: ShiftCoverageProperty -> Value Text
haddock_workaround_ :: ()
coverageTimes :: [CoverageTimeProperty]
dayOfWeek :: Value Text
..}
= ShiftCoverageProperty {coverageTimes :: [CoverageTimeProperty]
coverageTimes = [CoverageTimeProperty]
PropertyType "CoverageTimes" ShiftCoverageProperty
newValue, ()
Value Text
haddock_workaround_ :: ()
dayOfWeek :: Value Text
haddock_workaround_ :: ()
dayOfWeek :: Value Text
..}
instance Property "DayOfWeek" ShiftCoverageProperty where
type PropertyType "DayOfWeek" ShiftCoverageProperty = Value Prelude.Text
set :: PropertyType "DayOfWeek" ShiftCoverageProperty
-> ShiftCoverageProperty -> ShiftCoverageProperty
set PropertyType "DayOfWeek" ShiftCoverageProperty
newValue ShiftCoverageProperty {[CoverageTimeProperty]
()
Value Text
haddock_workaround_ :: ShiftCoverageProperty -> ()
coverageTimes :: ShiftCoverageProperty -> [CoverageTimeProperty]
dayOfWeek :: ShiftCoverageProperty -> Value Text
haddock_workaround_ :: ()
coverageTimes :: [CoverageTimeProperty]
dayOfWeek :: Value Text
..}
= ShiftCoverageProperty {dayOfWeek :: Value Text
dayOfWeek = PropertyType "DayOfWeek" ShiftCoverageProperty
Value Text
newValue, [CoverageTimeProperty]
()
haddock_workaround_ :: ()
coverageTimes :: [CoverageTimeProperty]
haddock_workaround_ :: ()
coverageTimes :: [CoverageTimeProperty]
..}