-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Amazon Simple Workflow Service Wrapper. -- @package wolf @version 0.1.0 module Network.AWS.Flow register :: MonadFlow m => Plan -> m [()] execute :: MonadFlow m => Task -> Metadata -> m () act :: MonadFlow m => Queue -> (Uid -> Metadata -> m (Metadata, [Artifact])) -> m () decide :: MonadFlow m => Plan -> m () runFlowT :: MonadIO m => FlowEnv -> FlowT m a -> m (Either FlowError a) throwStringError :: MonadError FlowError m => String -> m a hoistStringEither :: MonadError FlowError m => Either String a -> m a maybeToFlowError :: MonadError FlowError m => String -> Maybe a -> m a type Uid = Text type Name = Text type Version = Text type Queue = Text type Token = Text type Timeout = Text type Metadata = Maybe Text type Artifact = (Text, Digest SHA256, Int64, ByteString) data FlowConfig FlowConfig :: Region -> Credentials -> Int -> Int -> Text -> Text -> FlowConfig fcRegion :: FlowConfig -> Region fcCredentials :: FlowConfig -> Credentials fcTimeout :: FlowConfig -> Int fcPollTimeout :: FlowConfig -> Int fcDomain :: FlowConfig -> Text fcBucket :: FlowConfig -> Text data FlowEnv FlowEnv :: (LogStr -> IO ()) -> Env -> Env -> Text -> Text -> FlowEnv feLogger :: FlowEnv -> LogStr -> IO () feEnv :: FlowEnv -> Env fePollEnv :: FlowEnv -> Env feDomain :: FlowEnv -> Text feBucket :: FlowEnv -> Text data FlowError data FlowT m a type MonadFlow m = (MonadBaseControl IO m, MonadCatch m, MonadIO m, MonadLogger m, MonadReader FlowEnv m, MonadError FlowError m) data Task Task :: Name -> Version -> Queue -> Timeout -> Task tskName :: Task -> Name tskVersion :: Task -> Version tskQueue :: Task -> Queue tskTimeout :: Task -> Timeout data Timer Timer :: Name -> Timeout -> Timer tmrName :: Timer -> Name tmrTimeout :: Timer -> Timeout data Start Start :: Task -> Start strtTask :: Start -> Task data Spec Work :: Task -> Spec wrkTask :: Spec -> Task Sleep :: Timer -> Spec slpTimer :: Spec -> Timer data End Stop :: End Continue :: End data Plan Plan :: Start -> [Spec] -> End -> Plan plnStart :: Plan -> Start plnSpecs :: Plan -> [Spec] plnEnd :: Plan -> End module Network.AWS.Flow.Env flowEnv :: FlowConfig -> IO FlowEnv instance FromJSON FlowConfig instance FromJSON Credentials instance FromJSON Region