module Stratosphere.CustomerProfiles.Domain.JobScheduleProperty (
        JobScheduleProperty(..), mkJobScheduleProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import Stratosphere.ResourceProperties
import Stratosphere.Value
data JobScheduleProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-jobschedule.html>
    JobScheduleProperty {JobScheduleProperty -> ()
haddock_workaround_ :: (),
                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-jobschedule.html#cfn-customerprofiles-domain-jobschedule-dayoftheweek>
                         JobScheduleProperty -> Value Text
dayOfTheWeek :: (Value Prelude.Text),
                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-customerprofiles-domain-jobschedule.html#cfn-customerprofiles-domain-jobschedule-time>
                         JobScheduleProperty -> Value Text
time :: (Value Prelude.Text)}
  deriving stock (JobScheduleProperty -> JobScheduleProperty -> Bool
(JobScheduleProperty -> JobScheduleProperty -> Bool)
-> (JobScheduleProperty -> JobScheduleProperty -> Bool)
-> Eq JobScheduleProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: JobScheduleProperty -> JobScheduleProperty -> Bool
== :: JobScheduleProperty -> JobScheduleProperty -> Bool
$c/= :: JobScheduleProperty -> JobScheduleProperty -> Bool
/= :: JobScheduleProperty -> JobScheduleProperty -> Bool
Prelude.Eq, Int -> JobScheduleProperty -> ShowS
[JobScheduleProperty] -> ShowS
JobScheduleProperty -> String
(Int -> JobScheduleProperty -> ShowS)
-> (JobScheduleProperty -> String)
-> ([JobScheduleProperty] -> ShowS)
-> Show JobScheduleProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> JobScheduleProperty -> ShowS
showsPrec :: Int -> JobScheduleProperty -> ShowS
$cshow :: JobScheduleProperty -> String
show :: JobScheduleProperty -> String
$cshowList :: [JobScheduleProperty] -> ShowS
showList :: [JobScheduleProperty] -> ShowS
Prelude.Show)
mkJobScheduleProperty ::
  Value Prelude.Text -> Value Prelude.Text -> JobScheduleProperty
mkJobScheduleProperty :: Value Text -> Value Text -> JobScheduleProperty
mkJobScheduleProperty Value Text
dayOfTheWeek Value Text
time
  = JobScheduleProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (), dayOfTheWeek :: Value Text
dayOfTheWeek = Value Text
dayOfTheWeek,
       time :: Value Text
time = Value Text
time}
instance ToResourceProperties JobScheduleProperty where
  toResourceProperties :: JobScheduleProperty -> ResourceProperties
toResourceProperties JobScheduleProperty {()
Value Text
haddock_workaround_ :: JobScheduleProperty -> ()
dayOfTheWeek :: JobScheduleProperty -> Value Text
time :: JobScheduleProperty -> Value Text
haddock_workaround_ :: ()
dayOfTheWeek :: Value Text
time :: Value Text
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::CustomerProfiles::Domain.JobSchedule",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Key
"DayOfTheWeek" 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
dayOfTheWeek,
                       Key
"Time" 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
time]}
instance JSON.ToJSON JobScheduleProperty where
  toJSON :: JobScheduleProperty -> Value
toJSON JobScheduleProperty {()
Value Text
haddock_workaround_ :: JobScheduleProperty -> ()
dayOfTheWeek :: JobScheduleProperty -> Value Text
time :: JobScheduleProperty -> Value Text
haddock_workaround_ :: ()
dayOfTheWeek :: Value Text
time :: Value Text
..}
    = [(Key, Value)] -> Value
JSON.object
        [Key
"DayOfTheWeek" 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
dayOfTheWeek, Key
"Time" 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
time]
instance Property "DayOfTheWeek" JobScheduleProperty where
  type PropertyType "DayOfTheWeek" JobScheduleProperty = Value Prelude.Text
  set :: PropertyType "DayOfTheWeek" JobScheduleProperty
-> JobScheduleProperty -> JobScheduleProperty
set PropertyType "DayOfTheWeek" JobScheduleProperty
newValue JobScheduleProperty {()
Value Text
haddock_workaround_ :: JobScheduleProperty -> ()
dayOfTheWeek :: JobScheduleProperty -> Value Text
time :: JobScheduleProperty -> Value Text
haddock_workaround_ :: ()
dayOfTheWeek :: Value Text
time :: Value Text
..}
    = JobScheduleProperty {dayOfTheWeek :: Value Text
dayOfTheWeek = PropertyType "DayOfTheWeek" JobScheduleProperty
Value Text
newValue, ()
Value Text
haddock_workaround_ :: ()
time :: Value Text
haddock_workaround_ :: ()
time :: Value Text
..}
instance Property "Time" JobScheduleProperty where
  type PropertyType "Time" JobScheduleProperty = Value Prelude.Text
  set :: PropertyType "Time" JobScheduleProperty
-> JobScheduleProperty -> JobScheduleProperty
set PropertyType "Time" JobScheduleProperty
newValue JobScheduleProperty {()
Value Text
haddock_workaround_ :: JobScheduleProperty -> ()
dayOfTheWeek :: JobScheduleProperty -> Value Text
time :: JobScheduleProperty -> Value Text
haddock_workaround_ :: ()
dayOfTheWeek :: Value Text
time :: Value Text
..}
    = JobScheduleProperty {time :: Value Text
time = PropertyType "Time" JobScheduleProperty
Value Text
newValue, ()
Value Text
haddock_workaround_ :: ()
dayOfTheWeek :: Value Text
haddock_workaround_ :: ()
dayOfTheWeek :: Value Text
..}