{-# LANGUAGE DeriveAnyClass #-} module Hercules.API.Agent.Evaluate.EvaluateEvent.OnScheduleHandlerEvent where import Hercules.API.Agent.Evaluate.EvaluateEvent.InputDeclaration (InputDeclaration) import Hercules.API.DayOfWeek (DayOfWeek) import Hercules.API.Prelude data OnScheduleHandlerEvent = OnScheduleHandlerEvent { OnScheduleHandlerEvent -> Text handlerName :: Text, OnScheduleHandlerEvent -> Map Text InputDeclaration handlerExtraInputs :: Map Text InputDeclaration, OnScheduleHandlerEvent -> Bool isFlake :: Bool, OnScheduleHandlerEvent -> TimeConstraints when :: TimeConstraints } deriving (forall x. Rep OnScheduleHandlerEvent x -> OnScheduleHandlerEvent forall x. OnScheduleHandlerEvent -> Rep OnScheduleHandlerEvent x forall a. (forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a $cto :: forall x. Rep OnScheduleHandlerEvent x -> OnScheduleHandlerEvent $cfrom :: forall x. OnScheduleHandlerEvent -> Rep OnScheduleHandlerEvent x Generic, Int -> OnScheduleHandlerEvent -> ShowS [OnScheduleHandlerEvent] -> ShowS OnScheduleHandlerEvent -> String forall a. (Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a showList :: [OnScheduleHandlerEvent] -> ShowS $cshowList :: [OnScheduleHandlerEvent] -> ShowS show :: OnScheduleHandlerEvent -> String $cshow :: OnScheduleHandlerEvent -> String showsPrec :: Int -> OnScheduleHandlerEvent -> ShowS $cshowsPrec :: Int -> OnScheduleHandlerEvent -> ShowS Show, OnScheduleHandlerEvent -> OnScheduleHandlerEvent -> Bool forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a /= :: OnScheduleHandlerEvent -> OnScheduleHandlerEvent -> Bool $c/= :: OnScheduleHandlerEvent -> OnScheduleHandlerEvent -> Bool == :: OnScheduleHandlerEvent -> OnScheduleHandlerEvent -> Bool $c== :: OnScheduleHandlerEvent -> OnScheduleHandlerEvent -> Bool Eq, OnScheduleHandlerEvent -> () forall a. (a -> ()) -> NFData a rnf :: OnScheduleHandlerEvent -> () $crnf :: OnScheduleHandlerEvent -> () NFData, [OnScheduleHandlerEvent] -> Encoding [OnScheduleHandlerEvent] -> Value OnScheduleHandlerEvent -> Encoding OnScheduleHandlerEvent -> Value forall a. (a -> Value) -> (a -> Encoding) -> ([a] -> Value) -> ([a] -> Encoding) -> ToJSON a toEncodingList :: [OnScheduleHandlerEvent] -> Encoding $ctoEncodingList :: [OnScheduleHandlerEvent] -> Encoding toJSONList :: [OnScheduleHandlerEvent] -> Value $ctoJSONList :: [OnScheduleHandlerEvent] -> Value toEncoding :: OnScheduleHandlerEvent -> Encoding $ctoEncoding :: OnScheduleHandlerEvent -> Encoding toJSON :: OnScheduleHandlerEvent -> Value $ctoJSON :: OnScheduleHandlerEvent -> Value ToJSON, Value -> Parser [OnScheduleHandlerEvent] Value -> Parser OnScheduleHandlerEvent forall a. (Value -> Parser a) -> (Value -> Parser [a]) -> FromJSON a parseJSONList :: Value -> Parser [OnScheduleHandlerEvent] $cparseJSONList :: Value -> Parser [OnScheduleHandlerEvent] parseJSON :: Value -> Parser OnScheduleHandlerEvent $cparseJSON :: Value -> Parser OnScheduleHandlerEvent FromJSON) data TimeConstraints = TimeConstraints { TimeConstraints -> Maybe Int minute :: Maybe Int, TimeConstraints -> Maybe [Int] hour :: Maybe [Int], TimeConstraints -> Maybe [DayOfWeek] dayOfWeek :: Maybe [DayOfWeek], TimeConstraints -> Maybe [Int] dayOfMonth :: Maybe [Int] } deriving (forall x. Rep TimeConstraints x -> TimeConstraints forall x. TimeConstraints -> Rep TimeConstraints x forall a. (forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a $cto :: forall x. Rep TimeConstraints x -> TimeConstraints $cfrom :: forall x. TimeConstraints -> Rep TimeConstraints x Generic, Int -> TimeConstraints -> ShowS [TimeConstraints] -> ShowS TimeConstraints -> String forall a. (Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a showList :: [TimeConstraints] -> ShowS $cshowList :: [TimeConstraints] -> ShowS show :: TimeConstraints -> String $cshow :: TimeConstraints -> String showsPrec :: Int -> TimeConstraints -> ShowS $cshowsPrec :: Int -> TimeConstraints -> ShowS Show, TimeConstraints -> TimeConstraints -> Bool forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a /= :: TimeConstraints -> TimeConstraints -> Bool $c/= :: TimeConstraints -> TimeConstraints -> Bool == :: TimeConstraints -> TimeConstraints -> Bool $c== :: TimeConstraints -> TimeConstraints -> Bool Eq, TimeConstraints -> () forall a. (a -> ()) -> NFData a rnf :: TimeConstraints -> () $crnf :: TimeConstraints -> () NFData, [TimeConstraints] -> Encoding [TimeConstraints] -> Value TimeConstraints -> Encoding TimeConstraints -> Value forall a. (a -> Value) -> (a -> Encoding) -> ([a] -> Value) -> ([a] -> Encoding) -> ToJSON a toEncodingList :: [TimeConstraints] -> Encoding $ctoEncodingList :: [TimeConstraints] -> Encoding toJSONList :: [TimeConstraints] -> Value $ctoJSONList :: [TimeConstraints] -> Value toEncoding :: TimeConstraints -> Encoding $ctoEncoding :: TimeConstraints -> Encoding toJSON :: TimeConstraints -> Value $ctoJSON :: TimeConstraints -> Value ToJSON, Value -> Parser [TimeConstraints] Value -> Parser TimeConstraints forall a. (Value -> Parser a) -> (Value -> Parser [a]) -> FromJSON a parseJSONList :: Value -> Parser [TimeConstraints] $cparseJSONList :: Value -> Parser [TimeConstraints] parseJSON :: Value -> Parser TimeConstraints $cparseJSON :: Value -> Parser TimeConstraints FromJSON)