{-# LANGUAGE DataKinds #-}
{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DisambiguateRecordFields #-}
{-# LANGUAGE DuplicateRecordFields #-}

module Hercules.API.Effects.EffectEvent where

import Data.Aeson.Types (FromJSON (..), ToJSON (..), genericParseJSON, genericToEncoding, genericToJSON)
import Hercules.API.Prelude

data EffectEvent
  = Queued EffectEventQueued
  | DependencyFailed EffectEventDependencyFailed
  | Started EffectEventStarted
  | Failed EffectEventFailed
  | Succeeded EffectEventSucceeded
  | Cancelled EffectEventCancelled
  deriving ((forall x. EffectEvent -> Rep EffectEvent x)
-> (forall x. Rep EffectEvent x -> EffectEvent)
-> Generic EffectEvent
forall x. Rep EffectEvent x -> EffectEvent
forall x. EffectEvent -> Rep EffectEvent x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep EffectEvent x -> EffectEvent
$cfrom :: forall x. EffectEvent -> Rep EffectEvent x
Generic, Int -> EffectEvent -> ShowS
[EffectEvent] -> ShowS
EffectEvent -> String
(Int -> EffectEvent -> ShowS)
-> (EffectEvent -> String)
-> ([EffectEvent] -> ShowS)
-> Show EffectEvent
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [EffectEvent] -> ShowS
$cshowList :: [EffectEvent] -> ShowS
show :: EffectEvent -> String
$cshow :: EffectEvent -> String
showsPrec :: Int -> EffectEvent -> ShowS
$cshowsPrec :: Int -> EffectEvent -> ShowS
Show, EffectEvent -> EffectEvent -> Bool
(EffectEvent -> EffectEvent -> Bool)
-> (EffectEvent -> EffectEvent -> Bool) -> Eq EffectEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: EffectEvent -> EffectEvent -> Bool
$c/= :: EffectEvent -> EffectEvent -> Bool
== :: EffectEvent -> EffectEvent -> Bool
$c== :: EffectEvent -> EffectEvent -> Bool
Eq, EffectEvent -> ()
(EffectEvent -> ()) -> NFData EffectEvent
forall a. (a -> ()) -> NFData a
rnf :: EffectEvent -> ()
$crnf :: EffectEvent -> ()
NFData, Proxy EffectEvent -> Declare (Definitions Schema) NamedSchema
(Proxy EffectEvent -> Declare (Definitions Schema) NamedSchema)
-> ToSchema EffectEvent
forall a.
(Proxy a -> Declare (Definitions Schema) NamedSchema) -> ToSchema a
declareNamedSchema :: Proxy EffectEvent -> Declare (Definitions Schema) NamedSchema
$cdeclareNamedSchema :: Proxy EffectEvent -> Declare (Definitions Schema) NamedSchema
ToSchema)

instance FromJSON EffectEvent where
  parseJSON :: Value -> Parser EffectEvent
parseJSON = Options -> Value -> Parser EffectEvent
forall a.
(Generic a, GFromJSON Zero (Rep a)) =>
Options -> Value -> Parser a
genericParseJSON Options
schemaCompatibleOptions

instance ToJSON EffectEvent where
  toJSON :: EffectEvent -> Value
toJSON = Options -> EffectEvent -> Value
forall a.
(Generic a, GToJSON' Value Zero (Rep a)) =>
Options -> a -> Value
genericToJSON Options
schemaCompatibleOptions

  toEncoding :: EffectEvent -> Encoding
toEncoding = Options -> EffectEvent -> Encoding
forall a.
(Generic a, GToJSON' Encoding Zero (Rep a)) =>
Options -> a -> Encoding
genericToEncoding Options
schemaCompatibleOptions

eventTime :: EffectEvent -> UTCTime
eventTime :: EffectEvent -> UTCTime
eventTime (Queued (EffectEventQueued {$sel:time:EffectEventQueued :: EffectEventQueued -> UTCTime
time = UTCTime
t})) = UTCTime
t
eventTime (DependencyFailed (EffectEventDependencyFailed {$sel:time:EffectEventDependencyFailed :: EffectEventDependencyFailed -> UTCTime
time = UTCTime
t})) = UTCTime
t
eventTime (Started (EffectEventStarted {$sel:time:EffectEventStarted :: EffectEventStarted -> UTCTime
time = UTCTime
t})) = UTCTime
t
eventTime (Failed (EffectEventFailed {$sel:time:EffectEventFailed :: EffectEventFailed -> UTCTime
time = UTCTime
t})) = UTCTime
t
eventTime (Succeeded (EffectEventSucceeded {$sel:time:EffectEventSucceeded :: EffectEventSucceeded -> UTCTime
time = UTCTime
t})) = UTCTime
t
eventTime (Cancelled (EffectEventCancelled {$sel:time:EffectEventCancelled :: EffectEventCancelled -> UTCTime
time = UTCTime
t})) = UTCTime
t

data EffectEventQueued = EffectEventQueued
  { EffectEventQueued -> UTCTime
time :: UTCTime
  }
  deriving ((forall x. EffectEventQueued -> Rep EffectEventQueued x)
-> (forall x. Rep EffectEventQueued x -> EffectEventQueued)
-> Generic EffectEventQueued
forall x. Rep EffectEventQueued x -> EffectEventQueued
forall x. EffectEventQueued -> Rep EffectEventQueued x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep EffectEventQueued x -> EffectEventQueued
$cfrom :: forall x. EffectEventQueued -> Rep EffectEventQueued x
Generic, Int -> EffectEventQueued -> ShowS
[EffectEventQueued] -> ShowS
EffectEventQueued -> String
(Int -> EffectEventQueued -> ShowS)
-> (EffectEventQueued -> String)
-> ([EffectEventQueued] -> ShowS)
-> Show EffectEventQueued
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [EffectEventQueued] -> ShowS
$cshowList :: [EffectEventQueued] -> ShowS
show :: EffectEventQueued -> String
$cshow :: EffectEventQueued -> String
showsPrec :: Int -> EffectEventQueued -> ShowS
$cshowsPrec :: Int -> EffectEventQueued -> ShowS
Show, EffectEventQueued -> EffectEventQueued -> Bool
(EffectEventQueued -> EffectEventQueued -> Bool)
-> (EffectEventQueued -> EffectEventQueued -> Bool)
-> Eq EffectEventQueued
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: EffectEventQueued -> EffectEventQueued -> Bool
$c/= :: EffectEventQueued -> EffectEventQueued -> Bool
== :: EffectEventQueued -> EffectEventQueued -> Bool
$c== :: EffectEventQueued -> EffectEventQueued -> Bool
Eq, EffectEventQueued -> ()
(EffectEventQueued -> ()) -> NFData EffectEventQueued
forall a. (a -> ()) -> NFData a
rnf :: EffectEventQueued -> ()
$crnf :: EffectEventQueued -> ()
NFData, [EffectEventQueued] -> Encoding
[EffectEventQueued] -> Value
EffectEventQueued -> Encoding
EffectEventQueued -> Value
(EffectEventQueued -> Value)
-> (EffectEventQueued -> Encoding)
-> ([EffectEventQueued] -> Value)
-> ([EffectEventQueued] -> Encoding)
-> ToJSON EffectEventQueued
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> ToJSON a
toEncodingList :: [EffectEventQueued] -> Encoding
$ctoEncodingList :: [EffectEventQueued] -> Encoding
toJSONList :: [EffectEventQueued] -> Value
$ctoJSONList :: [EffectEventQueued] -> Value
toEncoding :: EffectEventQueued -> Encoding
$ctoEncoding :: EffectEventQueued -> Encoding
toJSON :: EffectEventQueued -> Value
$ctoJSON :: EffectEventQueued -> Value
ToJSON, Value -> Parser [EffectEventQueued]
Value -> Parser EffectEventQueued
(Value -> Parser EffectEventQueued)
-> (Value -> Parser [EffectEventQueued])
-> FromJSON EffectEventQueued
forall a.
(Value -> Parser a) -> (Value -> Parser [a]) -> FromJSON a
parseJSONList :: Value -> Parser [EffectEventQueued]
$cparseJSONList :: Value -> Parser [EffectEventQueued]
parseJSON :: Value -> Parser EffectEventQueued
$cparseJSON :: Value -> Parser EffectEventQueued
FromJSON, Proxy EffectEventQueued -> Declare (Definitions Schema) NamedSchema
(Proxy EffectEventQueued
 -> Declare (Definitions Schema) NamedSchema)
-> ToSchema EffectEventQueued
forall a.
(Proxy a -> Declare (Definitions Schema) NamedSchema) -> ToSchema a
declareNamedSchema :: Proxy EffectEventQueued -> Declare (Definitions Schema) NamedSchema
$cdeclareNamedSchema :: Proxy EffectEventQueued -> Declare (Definitions Schema) NamedSchema
ToSchema)

data EffectEventDependencyFailed = EffectEventDependencyFailed
  { EffectEventDependencyFailed -> UTCTime
time :: UTCTime
  }
  deriving ((forall x.
 EffectEventDependencyFailed -> Rep EffectEventDependencyFailed x)
-> (forall x.
    Rep EffectEventDependencyFailed x -> EffectEventDependencyFailed)
-> Generic EffectEventDependencyFailed
forall x.
Rep EffectEventDependencyFailed x -> EffectEventDependencyFailed
forall x.
EffectEventDependencyFailed -> Rep EffectEventDependencyFailed x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep EffectEventDependencyFailed x -> EffectEventDependencyFailed
$cfrom :: forall x.
EffectEventDependencyFailed -> Rep EffectEventDependencyFailed x
Generic, Int -> EffectEventDependencyFailed -> ShowS
[EffectEventDependencyFailed] -> ShowS
EffectEventDependencyFailed -> String
(Int -> EffectEventDependencyFailed -> ShowS)
-> (EffectEventDependencyFailed -> String)
-> ([EffectEventDependencyFailed] -> ShowS)
-> Show EffectEventDependencyFailed
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [EffectEventDependencyFailed] -> ShowS
$cshowList :: [EffectEventDependencyFailed] -> ShowS
show :: EffectEventDependencyFailed -> String
$cshow :: EffectEventDependencyFailed -> String
showsPrec :: Int -> EffectEventDependencyFailed -> ShowS
$cshowsPrec :: Int -> EffectEventDependencyFailed -> ShowS
Show, EffectEventDependencyFailed -> EffectEventDependencyFailed -> Bool
(EffectEventDependencyFailed
 -> EffectEventDependencyFailed -> Bool)
-> (EffectEventDependencyFailed
    -> EffectEventDependencyFailed -> Bool)
-> Eq EffectEventDependencyFailed
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: EffectEventDependencyFailed -> EffectEventDependencyFailed -> Bool
$c/= :: EffectEventDependencyFailed -> EffectEventDependencyFailed -> Bool
== :: EffectEventDependencyFailed -> EffectEventDependencyFailed -> Bool
$c== :: EffectEventDependencyFailed -> EffectEventDependencyFailed -> Bool
Eq, EffectEventDependencyFailed -> ()
(EffectEventDependencyFailed -> ())
-> NFData EffectEventDependencyFailed
forall a. (a -> ()) -> NFData a
rnf :: EffectEventDependencyFailed -> ()
$crnf :: EffectEventDependencyFailed -> ()
NFData, [EffectEventDependencyFailed] -> Encoding
[EffectEventDependencyFailed] -> Value
EffectEventDependencyFailed -> Encoding
EffectEventDependencyFailed -> Value
(EffectEventDependencyFailed -> Value)
-> (EffectEventDependencyFailed -> Encoding)
-> ([EffectEventDependencyFailed] -> Value)
-> ([EffectEventDependencyFailed] -> Encoding)
-> ToJSON EffectEventDependencyFailed
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> ToJSON a
toEncodingList :: [EffectEventDependencyFailed] -> Encoding
$ctoEncodingList :: [EffectEventDependencyFailed] -> Encoding
toJSONList :: [EffectEventDependencyFailed] -> Value
$ctoJSONList :: [EffectEventDependencyFailed] -> Value
toEncoding :: EffectEventDependencyFailed -> Encoding
$ctoEncoding :: EffectEventDependencyFailed -> Encoding
toJSON :: EffectEventDependencyFailed -> Value
$ctoJSON :: EffectEventDependencyFailed -> Value
ToJSON, Value -> Parser [EffectEventDependencyFailed]
Value -> Parser EffectEventDependencyFailed
(Value -> Parser EffectEventDependencyFailed)
-> (Value -> Parser [EffectEventDependencyFailed])
-> FromJSON EffectEventDependencyFailed
forall a.
(Value -> Parser a) -> (Value -> Parser [a]) -> FromJSON a
parseJSONList :: Value -> Parser [EffectEventDependencyFailed]
$cparseJSONList :: Value -> Parser [EffectEventDependencyFailed]
parseJSON :: Value -> Parser EffectEventDependencyFailed
$cparseJSON :: Value -> Parser EffectEventDependencyFailed
FromJSON, Proxy EffectEventDependencyFailed
-> Declare (Definitions Schema) NamedSchema
(Proxy EffectEventDependencyFailed
 -> Declare (Definitions Schema) NamedSchema)
-> ToSchema EffectEventDependencyFailed
forall a.
(Proxy a -> Declare (Definitions Schema) NamedSchema) -> ToSchema a
declareNamedSchema :: Proxy EffectEventDependencyFailed
-> Declare (Definitions Schema) NamedSchema
$cdeclareNamedSchema :: Proxy EffectEventDependencyFailed
-> Declare (Definitions Schema) NamedSchema
ToSchema)

data EffectEventStarted = EffectEventStarted
  { EffectEventStarted -> UTCTime
time :: UTCTime,
    EffectEventStarted -> Id "log"
logId :: Id "log",
    EffectEventStarted -> Text
agentHostname :: Text,
    EffectEventStarted -> Text
agentVersion :: Text
  }
  deriving ((forall x. EffectEventStarted -> Rep EffectEventStarted x)
-> (forall x. Rep EffectEventStarted x -> EffectEventStarted)
-> Generic EffectEventStarted
forall x. Rep EffectEventStarted x -> EffectEventStarted
forall x. EffectEventStarted -> Rep EffectEventStarted x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep EffectEventStarted x -> EffectEventStarted
$cfrom :: forall x. EffectEventStarted -> Rep EffectEventStarted x
Generic, Int -> EffectEventStarted -> ShowS
[EffectEventStarted] -> ShowS
EffectEventStarted -> String
(Int -> EffectEventStarted -> ShowS)
-> (EffectEventStarted -> String)
-> ([EffectEventStarted] -> ShowS)
-> Show EffectEventStarted
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [EffectEventStarted] -> ShowS
$cshowList :: [EffectEventStarted] -> ShowS
show :: EffectEventStarted -> String
$cshow :: EffectEventStarted -> String
showsPrec :: Int -> EffectEventStarted -> ShowS
$cshowsPrec :: Int -> EffectEventStarted -> ShowS
Show, EffectEventStarted -> EffectEventStarted -> Bool
(EffectEventStarted -> EffectEventStarted -> Bool)
-> (EffectEventStarted -> EffectEventStarted -> Bool)
-> Eq EffectEventStarted
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: EffectEventStarted -> EffectEventStarted -> Bool
$c/= :: EffectEventStarted -> EffectEventStarted -> Bool
== :: EffectEventStarted -> EffectEventStarted -> Bool
$c== :: EffectEventStarted -> EffectEventStarted -> Bool
Eq, EffectEventStarted -> ()
(EffectEventStarted -> ()) -> NFData EffectEventStarted
forall a. (a -> ()) -> NFData a
rnf :: EffectEventStarted -> ()
$crnf :: EffectEventStarted -> ()
NFData, [EffectEventStarted] -> Encoding
[EffectEventStarted] -> Value
EffectEventStarted -> Encoding
EffectEventStarted -> Value
(EffectEventStarted -> Value)
-> (EffectEventStarted -> Encoding)
-> ([EffectEventStarted] -> Value)
-> ([EffectEventStarted] -> Encoding)
-> ToJSON EffectEventStarted
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> ToJSON a
toEncodingList :: [EffectEventStarted] -> Encoding
$ctoEncodingList :: [EffectEventStarted] -> Encoding
toJSONList :: [EffectEventStarted] -> Value
$ctoJSONList :: [EffectEventStarted] -> Value
toEncoding :: EffectEventStarted -> Encoding
$ctoEncoding :: EffectEventStarted -> Encoding
toJSON :: EffectEventStarted -> Value
$ctoJSON :: EffectEventStarted -> Value
ToJSON, Value -> Parser [EffectEventStarted]
Value -> Parser EffectEventStarted
(Value -> Parser EffectEventStarted)
-> (Value -> Parser [EffectEventStarted])
-> FromJSON EffectEventStarted
forall a.
(Value -> Parser a) -> (Value -> Parser [a]) -> FromJSON a
parseJSONList :: Value -> Parser [EffectEventStarted]
$cparseJSONList :: Value -> Parser [EffectEventStarted]
parseJSON :: Value -> Parser EffectEventStarted
$cparseJSON :: Value -> Parser EffectEventStarted
FromJSON, Proxy EffectEventStarted
-> Declare (Definitions Schema) NamedSchema
(Proxy EffectEventStarted
 -> Declare (Definitions Schema) NamedSchema)
-> ToSchema EffectEventStarted
forall a.
(Proxy a -> Declare (Definitions Schema) NamedSchema) -> ToSchema a
declareNamedSchema :: Proxy EffectEventStarted
-> Declare (Definitions Schema) NamedSchema
$cdeclareNamedSchema :: Proxy EffectEventStarted
-> Declare (Definitions Schema) NamedSchema
ToSchema)

data EffectEventReset = EffectEventReset
  { EffectEventReset -> UTCTime
time :: UTCTime
  }
  deriving ((forall x. EffectEventReset -> Rep EffectEventReset x)
-> (forall x. Rep EffectEventReset x -> EffectEventReset)
-> Generic EffectEventReset
forall x. Rep EffectEventReset x -> EffectEventReset
forall x. EffectEventReset -> Rep EffectEventReset x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep EffectEventReset x -> EffectEventReset
$cfrom :: forall x. EffectEventReset -> Rep EffectEventReset x
Generic, Int -> EffectEventReset -> ShowS
[EffectEventReset] -> ShowS
EffectEventReset -> String
(Int -> EffectEventReset -> ShowS)
-> (EffectEventReset -> String)
-> ([EffectEventReset] -> ShowS)
-> Show EffectEventReset
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [EffectEventReset] -> ShowS
$cshowList :: [EffectEventReset] -> ShowS
show :: EffectEventReset -> String
$cshow :: EffectEventReset -> String
showsPrec :: Int -> EffectEventReset -> ShowS
$cshowsPrec :: Int -> EffectEventReset -> ShowS
Show, EffectEventReset -> EffectEventReset -> Bool
(EffectEventReset -> EffectEventReset -> Bool)
-> (EffectEventReset -> EffectEventReset -> Bool)
-> Eq EffectEventReset
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: EffectEventReset -> EffectEventReset -> Bool
$c/= :: EffectEventReset -> EffectEventReset -> Bool
== :: EffectEventReset -> EffectEventReset -> Bool
$c== :: EffectEventReset -> EffectEventReset -> Bool
Eq, EffectEventReset -> ()
(EffectEventReset -> ()) -> NFData EffectEventReset
forall a. (a -> ()) -> NFData a
rnf :: EffectEventReset -> ()
$crnf :: EffectEventReset -> ()
NFData, [EffectEventReset] -> Encoding
[EffectEventReset] -> Value
EffectEventReset -> Encoding
EffectEventReset -> Value
(EffectEventReset -> Value)
-> (EffectEventReset -> Encoding)
-> ([EffectEventReset] -> Value)
-> ([EffectEventReset] -> Encoding)
-> ToJSON EffectEventReset
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> ToJSON a
toEncodingList :: [EffectEventReset] -> Encoding
$ctoEncodingList :: [EffectEventReset] -> Encoding
toJSONList :: [EffectEventReset] -> Value
$ctoJSONList :: [EffectEventReset] -> Value
toEncoding :: EffectEventReset -> Encoding
$ctoEncoding :: EffectEventReset -> Encoding
toJSON :: EffectEventReset -> Value
$ctoJSON :: EffectEventReset -> Value
ToJSON, Value -> Parser [EffectEventReset]
Value -> Parser EffectEventReset
(Value -> Parser EffectEventReset)
-> (Value -> Parser [EffectEventReset])
-> FromJSON EffectEventReset
forall a.
(Value -> Parser a) -> (Value -> Parser [a]) -> FromJSON a
parseJSONList :: Value -> Parser [EffectEventReset]
$cparseJSONList :: Value -> Parser [EffectEventReset]
parseJSON :: Value -> Parser EffectEventReset
$cparseJSON :: Value -> Parser EffectEventReset
FromJSON, Proxy EffectEventReset -> Declare (Definitions Schema) NamedSchema
(Proxy EffectEventReset
 -> Declare (Definitions Schema) NamedSchema)
-> ToSchema EffectEventReset
forall a.
(Proxy a -> Declare (Definitions Schema) NamedSchema) -> ToSchema a
declareNamedSchema :: Proxy EffectEventReset -> Declare (Definitions Schema) NamedSchema
$cdeclareNamedSchema :: Proxy EffectEventReset -> Declare (Definitions Schema) NamedSchema
ToSchema)

data EffectEventFailed = EffectEventFailed
  { EffectEventFailed -> UTCTime
time :: UTCTime,
    EffectEventFailed -> Maybe Text
technicalError :: Maybe Text
  }
  deriving ((forall x. EffectEventFailed -> Rep EffectEventFailed x)
-> (forall x. Rep EffectEventFailed x -> EffectEventFailed)
-> Generic EffectEventFailed
forall x. Rep EffectEventFailed x -> EffectEventFailed
forall x. EffectEventFailed -> Rep EffectEventFailed x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep EffectEventFailed x -> EffectEventFailed
$cfrom :: forall x. EffectEventFailed -> Rep EffectEventFailed x
Generic, Int -> EffectEventFailed -> ShowS
[EffectEventFailed] -> ShowS
EffectEventFailed -> String
(Int -> EffectEventFailed -> ShowS)
-> (EffectEventFailed -> String)
-> ([EffectEventFailed] -> ShowS)
-> Show EffectEventFailed
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [EffectEventFailed] -> ShowS
$cshowList :: [EffectEventFailed] -> ShowS
show :: EffectEventFailed -> String
$cshow :: EffectEventFailed -> String
showsPrec :: Int -> EffectEventFailed -> ShowS
$cshowsPrec :: Int -> EffectEventFailed -> ShowS
Show, EffectEventFailed -> EffectEventFailed -> Bool
(EffectEventFailed -> EffectEventFailed -> Bool)
-> (EffectEventFailed -> EffectEventFailed -> Bool)
-> Eq EffectEventFailed
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: EffectEventFailed -> EffectEventFailed -> Bool
$c/= :: EffectEventFailed -> EffectEventFailed -> Bool
== :: EffectEventFailed -> EffectEventFailed -> Bool
$c== :: EffectEventFailed -> EffectEventFailed -> Bool
Eq, EffectEventFailed -> ()
(EffectEventFailed -> ()) -> NFData EffectEventFailed
forall a. (a -> ()) -> NFData a
rnf :: EffectEventFailed -> ()
$crnf :: EffectEventFailed -> ()
NFData, [EffectEventFailed] -> Encoding
[EffectEventFailed] -> Value
EffectEventFailed -> Encoding
EffectEventFailed -> Value
(EffectEventFailed -> Value)
-> (EffectEventFailed -> Encoding)
-> ([EffectEventFailed] -> Value)
-> ([EffectEventFailed] -> Encoding)
-> ToJSON EffectEventFailed
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> ToJSON a
toEncodingList :: [EffectEventFailed] -> Encoding
$ctoEncodingList :: [EffectEventFailed] -> Encoding
toJSONList :: [EffectEventFailed] -> Value
$ctoJSONList :: [EffectEventFailed] -> Value
toEncoding :: EffectEventFailed -> Encoding
$ctoEncoding :: EffectEventFailed -> Encoding
toJSON :: EffectEventFailed -> Value
$ctoJSON :: EffectEventFailed -> Value
ToJSON, Value -> Parser [EffectEventFailed]
Value -> Parser EffectEventFailed
(Value -> Parser EffectEventFailed)
-> (Value -> Parser [EffectEventFailed])
-> FromJSON EffectEventFailed
forall a.
(Value -> Parser a) -> (Value -> Parser [a]) -> FromJSON a
parseJSONList :: Value -> Parser [EffectEventFailed]
$cparseJSONList :: Value -> Parser [EffectEventFailed]
parseJSON :: Value -> Parser EffectEventFailed
$cparseJSON :: Value -> Parser EffectEventFailed
FromJSON, Proxy EffectEventFailed -> Declare (Definitions Schema) NamedSchema
(Proxy EffectEventFailed
 -> Declare (Definitions Schema) NamedSchema)
-> ToSchema EffectEventFailed
forall a.
(Proxy a -> Declare (Definitions Schema) NamedSchema) -> ToSchema a
declareNamedSchema :: Proxy EffectEventFailed -> Declare (Definitions Schema) NamedSchema
$cdeclareNamedSchema :: Proxy EffectEventFailed -> Declare (Definitions Schema) NamedSchema
ToSchema)

data EffectEventSucceeded = EffectEventSucceeded
  { EffectEventSucceeded -> UTCTime
time :: UTCTime
  }
  deriving ((forall x. EffectEventSucceeded -> Rep EffectEventSucceeded x)
-> (forall x. Rep EffectEventSucceeded x -> EffectEventSucceeded)
-> Generic EffectEventSucceeded
forall x. Rep EffectEventSucceeded x -> EffectEventSucceeded
forall x. EffectEventSucceeded -> Rep EffectEventSucceeded x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep EffectEventSucceeded x -> EffectEventSucceeded
$cfrom :: forall x. EffectEventSucceeded -> Rep EffectEventSucceeded x
Generic, Int -> EffectEventSucceeded -> ShowS
[EffectEventSucceeded] -> ShowS
EffectEventSucceeded -> String
(Int -> EffectEventSucceeded -> ShowS)
-> (EffectEventSucceeded -> String)
-> ([EffectEventSucceeded] -> ShowS)
-> Show EffectEventSucceeded
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [EffectEventSucceeded] -> ShowS
$cshowList :: [EffectEventSucceeded] -> ShowS
show :: EffectEventSucceeded -> String
$cshow :: EffectEventSucceeded -> String
showsPrec :: Int -> EffectEventSucceeded -> ShowS
$cshowsPrec :: Int -> EffectEventSucceeded -> ShowS
Show, EffectEventSucceeded -> EffectEventSucceeded -> Bool
(EffectEventSucceeded -> EffectEventSucceeded -> Bool)
-> (EffectEventSucceeded -> EffectEventSucceeded -> Bool)
-> Eq EffectEventSucceeded
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: EffectEventSucceeded -> EffectEventSucceeded -> Bool
$c/= :: EffectEventSucceeded -> EffectEventSucceeded -> Bool
== :: EffectEventSucceeded -> EffectEventSucceeded -> Bool
$c== :: EffectEventSucceeded -> EffectEventSucceeded -> Bool
Eq, EffectEventSucceeded -> ()
(EffectEventSucceeded -> ()) -> NFData EffectEventSucceeded
forall a. (a -> ()) -> NFData a
rnf :: EffectEventSucceeded -> ()
$crnf :: EffectEventSucceeded -> ()
NFData, [EffectEventSucceeded] -> Encoding
[EffectEventSucceeded] -> Value
EffectEventSucceeded -> Encoding
EffectEventSucceeded -> Value
(EffectEventSucceeded -> Value)
-> (EffectEventSucceeded -> Encoding)
-> ([EffectEventSucceeded] -> Value)
-> ([EffectEventSucceeded] -> Encoding)
-> ToJSON EffectEventSucceeded
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> ToJSON a
toEncodingList :: [EffectEventSucceeded] -> Encoding
$ctoEncodingList :: [EffectEventSucceeded] -> Encoding
toJSONList :: [EffectEventSucceeded] -> Value
$ctoJSONList :: [EffectEventSucceeded] -> Value
toEncoding :: EffectEventSucceeded -> Encoding
$ctoEncoding :: EffectEventSucceeded -> Encoding
toJSON :: EffectEventSucceeded -> Value
$ctoJSON :: EffectEventSucceeded -> Value
ToJSON, Value -> Parser [EffectEventSucceeded]
Value -> Parser EffectEventSucceeded
(Value -> Parser EffectEventSucceeded)
-> (Value -> Parser [EffectEventSucceeded])
-> FromJSON EffectEventSucceeded
forall a.
(Value -> Parser a) -> (Value -> Parser [a]) -> FromJSON a
parseJSONList :: Value -> Parser [EffectEventSucceeded]
$cparseJSONList :: Value -> Parser [EffectEventSucceeded]
parseJSON :: Value -> Parser EffectEventSucceeded
$cparseJSON :: Value -> Parser EffectEventSucceeded
FromJSON, Proxy EffectEventSucceeded
-> Declare (Definitions Schema) NamedSchema
(Proxy EffectEventSucceeded
 -> Declare (Definitions Schema) NamedSchema)
-> ToSchema EffectEventSucceeded
forall a.
(Proxy a -> Declare (Definitions Schema) NamedSchema) -> ToSchema a
declareNamedSchema :: Proxy EffectEventSucceeded
-> Declare (Definitions Schema) NamedSchema
$cdeclareNamedSchema :: Proxy EffectEventSucceeded
-> Declare (Definitions Schema) NamedSchema
ToSchema)

data EffectEventCancelled = EffectEventCancelled
  { EffectEventCancelled -> UTCTime
time :: UTCTime
  }
  deriving ((forall x. EffectEventCancelled -> Rep EffectEventCancelled x)
-> (forall x. Rep EffectEventCancelled x -> EffectEventCancelled)
-> Generic EffectEventCancelled
forall x. Rep EffectEventCancelled x -> EffectEventCancelled
forall x. EffectEventCancelled -> Rep EffectEventCancelled x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep EffectEventCancelled x -> EffectEventCancelled
$cfrom :: forall x. EffectEventCancelled -> Rep EffectEventCancelled x
Generic, Int -> EffectEventCancelled -> ShowS
[EffectEventCancelled] -> ShowS
EffectEventCancelled -> String
(Int -> EffectEventCancelled -> ShowS)
-> (EffectEventCancelled -> String)
-> ([EffectEventCancelled] -> ShowS)
-> Show EffectEventCancelled
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [EffectEventCancelled] -> ShowS
$cshowList :: [EffectEventCancelled] -> ShowS
show :: EffectEventCancelled -> String
$cshow :: EffectEventCancelled -> String
showsPrec :: Int -> EffectEventCancelled -> ShowS
$cshowsPrec :: Int -> EffectEventCancelled -> ShowS
Show, EffectEventCancelled -> EffectEventCancelled -> Bool
(EffectEventCancelled -> EffectEventCancelled -> Bool)
-> (EffectEventCancelled -> EffectEventCancelled -> Bool)
-> Eq EffectEventCancelled
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: EffectEventCancelled -> EffectEventCancelled -> Bool
$c/= :: EffectEventCancelled -> EffectEventCancelled -> Bool
== :: EffectEventCancelled -> EffectEventCancelled -> Bool
$c== :: EffectEventCancelled -> EffectEventCancelled -> Bool
Eq, EffectEventCancelled -> ()
(EffectEventCancelled -> ()) -> NFData EffectEventCancelled
forall a. (a -> ()) -> NFData a
rnf :: EffectEventCancelled -> ()
$crnf :: EffectEventCancelled -> ()
NFData, [EffectEventCancelled] -> Encoding
[EffectEventCancelled] -> Value
EffectEventCancelled -> Encoding
EffectEventCancelled -> Value
(EffectEventCancelled -> Value)
-> (EffectEventCancelled -> Encoding)
-> ([EffectEventCancelled] -> Value)
-> ([EffectEventCancelled] -> Encoding)
-> ToJSON EffectEventCancelled
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> ToJSON a
toEncodingList :: [EffectEventCancelled] -> Encoding
$ctoEncodingList :: [EffectEventCancelled] -> Encoding
toJSONList :: [EffectEventCancelled] -> Value
$ctoJSONList :: [EffectEventCancelled] -> Value
toEncoding :: EffectEventCancelled -> Encoding
$ctoEncoding :: EffectEventCancelled -> Encoding
toJSON :: EffectEventCancelled -> Value
$ctoJSON :: EffectEventCancelled -> Value
ToJSON, Value -> Parser [EffectEventCancelled]
Value -> Parser EffectEventCancelled
(Value -> Parser EffectEventCancelled)
-> (Value -> Parser [EffectEventCancelled])
-> FromJSON EffectEventCancelled
forall a.
(Value -> Parser a) -> (Value -> Parser [a]) -> FromJSON a
parseJSONList :: Value -> Parser [EffectEventCancelled]
$cparseJSONList :: Value -> Parser [EffectEventCancelled]
parseJSON :: Value -> Parser EffectEventCancelled
$cparseJSON :: Value -> Parser EffectEventCancelled
FromJSON, Proxy EffectEventCancelled
-> Declare (Definitions Schema) NamedSchema
(Proxy EffectEventCancelled
 -> Declare (Definitions Schema) NamedSchema)
-> ToSchema EffectEventCancelled
forall a.
(Proxy a -> Declare (Definitions Schema) NamedSchema) -> ToSchema a
declareNamedSchema :: Proxy EffectEventCancelled
-> Declare (Definitions Schema) NamedSchema
$cdeclareNamedSchema :: Proxy EffectEventCancelled
-> Declare (Definitions Schema) NamedSchema
ToSchema)