{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DerivingStrategies #-}
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
{-# LANGUAGE LambdaCase #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}

-- Derived from AWS service descriptions, licensed under Apache 2.0.

-- |
-- Module      : Amazonka.FinSpaceData.Types.IngestionStatus
-- Copyright   : (c) 2013-2023 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
module Amazonka.FinSpaceData.Types.IngestionStatus
  ( IngestionStatus
      ( ..,
        IngestionStatus_FAILED,
        IngestionStatus_PENDING,
        IngestionStatus_RUNNING,
        IngestionStatus_STOP_REQUESTED,
        IngestionStatus_SUCCESS
      ),
  )
where

import qualified Amazonka.Core as Core
import qualified Amazonka.Data as Data
import qualified Amazonka.Prelude as Prelude

-- | Status of the ingestion process returned from scheduler service.
newtype IngestionStatus = IngestionStatus'
  { IngestionStatus -> Text
fromIngestionStatus ::
      Data.Text
  }
  deriving stock
    ( Int -> IngestionStatus -> ShowS
[IngestionStatus] -> ShowS
IngestionStatus -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [IngestionStatus] -> ShowS
$cshowList :: [IngestionStatus] -> ShowS
show :: IngestionStatus -> String
$cshow :: IngestionStatus -> String
showsPrec :: Int -> IngestionStatus -> ShowS
$cshowsPrec :: Int -> IngestionStatus -> ShowS
Prelude.Show,
      ReadPrec [IngestionStatus]
ReadPrec IngestionStatus
Int -> ReadS IngestionStatus
ReadS [IngestionStatus]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [IngestionStatus]
$creadListPrec :: ReadPrec [IngestionStatus]
readPrec :: ReadPrec IngestionStatus
$creadPrec :: ReadPrec IngestionStatus
readList :: ReadS [IngestionStatus]
$creadList :: ReadS [IngestionStatus]
readsPrec :: Int -> ReadS IngestionStatus
$creadsPrec :: Int -> ReadS IngestionStatus
Prelude.Read,
      IngestionStatus -> IngestionStatus -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: IngestionStatus -> IngestionStatus -> Bool
$c/= :: IngestionStatus -> IngestionStatus -> Bool
== :: IngestionStatus -> IngestionStatus -> Bool
$c== :: IngestionStatus -> IngestionStatus -> Bool
Prelude.Eq,
      Eq IngestionStatus
IngestionStatus -> IngestionStatus -> Bool
IngestionStatus -> IngestionStatus -> Ordering
IngestionStatus -> IngestionStatus -> IngestionStatus
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: IngestionStatus -> IngestionStatus -> IngestionStatus
$cmin :: IngestionStatus -> IngestionStatus -> IngestionStatus
max :: IngestionStatus -> IngestionStatus -> IngestionStatus
$cmax :: IngestionStatus -> IngestionStatus -> IngestionStatus
>= :: IngestionStatus -> IngestionStatus -> Bool
$c>= :: IngestionStatus -> IngestionStatus -> Bool
> :: IngestionStatus -> IngestionStatus -> Bool
$c> :: IngestionStatus -> IngestionStatus -> Bool
<= :: IngestionStatus -> IngestionStatus -> Bool
$c<= :: IngestionStatus -> IngestionStatus -> Bool
< :: IngestionStatus -> IngestionStatus -> Bool
$c< :: IngestionStatus -> IngestionStatus -> Bool
compare :: IngestionStatus -> IngestionStatus -> Ordering
$ccompare :: IngestionStatus -> IngestionStatus -> Ordering
Prelude.Ord,
      forall x. Rep IngestionStatus x -> IngestionStatus
forall x. IngestionStatus -> Rep IngestionStatus x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep IngestionStatus x -> IngestionStatus
$cfrom :: forall x. IngestionStatus -> Rep IngestionStatus x
Prelude.Generic
    )
  deriving newtype
    ( Eq IngestionStatus
Int -> IngestionStatus -> Int
IngestionStatus -> Int
forall a. Eq a -> (Int -> a -> Int) -> (a -> Int) -> Hashable a
hash :: IngestionStatus -> Int
$chash :: IngestionStatus -> Int
hashWithSalt :: Int -> IngestionStatus -> Int
$chashWithSalt :: Int -> IngestionStatus -> Int
Prelude.Hashable,
      IngestionStatus -> ()
forall a. (a -> ()) -> NFData a
rnf :: IngestionStatus -> ()
$crnf :: IngestionStatus -> ()
Prelude.NFData,
      Text -> Either String IngestionStatus
forall a. (Text -> Either String a) -> FromText a
fromText :: Text -> Either String IngestionStatus
$cfromText :: Text -> Either String IngestionStatus
Data.FromText,
      IngestionStatus -> Text
forall a. (a -> Text) -> ToText a
toText :: IngestionStatus -> Text
$ctoText :: IngestionStatus -> Text
Data.ToText,
      IngestionStatus -> ByteString
forall a. (a -> ByteString) -> ToByteString a
toBS :: IngestionStatus -> ByteString
$ctoBS :: IngestionStatus -> ByteString
Data.ToByteString,
      IngestionStatus -> ByteStringBuilder
forall a. (a -> ByteStringBuilder) -> ToLog a
build :: IngestionStatus -> ByteStringBuilder
$cbuild :: IngestionStatus -> ByteStringBuilder
Data.ToLog,
      HeaderName -> IngestionStatus -> [Header]
forall a. (HeaderName -> a -> [Header]) -> ToHeader a
toHeader :: HeaderName -> IngestionStatus -> [Header]
$ctoHeader :: HeaderName -> IngestionStatus -> [Header]
Data.ToHeader,
      IngestionStatus -> QueryString
forall a. (a -> QueryString) -> ToQuery a
toQuery :: IngestionStatus -> QueryString
$ctoQuery :: IngestionStatus -> QueryString
Data.ToQuery,
      Value -> Parser [IngestionStatus]
Value -> Parser IngestionStatus
forall a.
(Value -> Parser a) -> (Value -> Parser [a]) -> FromJSON a
parseJSONList :: Value -> Parser [IngestionStatus]
$cparseJSONList :: Value -> Parser [IngestionStatus]
parseJSON :: Value -> Parser IngestionStatus
$cparseJSON :: Value -> Parser IngestionStatus
Data.FromJSON,
      FromJSONKeyFunction [IngestionStatus]
FromJSONKeyFunction IngestionStatus
forall a.
FromJSONKeyFunction a -> FromJSONKeyFunction [a] -> FromJSONKey a
fromJSONKeyList :: FromJSONKeyFunction [IngestionStatus]
$cfromJSONKeyList :: FromJSONKeyFunction [IngestionStatus]
fromJSONKey :: FromJSONKeyFunction IngestionStatus
$cfromJSONKey :: FromJSONKeyFunction IngestionStatus
Data.FromJSONKey,
      [IngestionStatus] -> Encoding
[IngestionStatus] -> Value
IngestionStatus -> Encoding
IngestionStatus -> Value
forall a.
(a -> Value)
-> (a -> Encoding)
-> ([a] -> Value)
-> ([a] -> Encoding)
-> ToJSON a
toEncodingList :: [IngestionStatus] -> Encoding
$ctoEncodingList :: [IngestionStatus] -> Encoding
toJSONList :: [IngestionStatus] -> Value
$ctoJSONList :: [IngestionStatus] -> Value
toEncoding :: IngestionStatus -> Encoding
$ctoEncoding :: IngestionStatus -> Encoding
toJSON :: IngestionStatus -> Value
$ctoJSON :: IngestionStatus -> Value
Data.ToJSON,
      ToJSONKeyFunction [IngestionStatus]
ToJSONKeyFunction IngestionStatus
forall a.
ToJSONKeyFunction a -> ToJSONKeyFunction [a] -> ToJSONKey a
toJSONKeyList :: ToJSONKeyFunction [IngestionStatus]
$ctoJSONKeyList :: ToJSONKeyFunction [IngestionStatus]
toJSONKey :: ToJSONKeyFunction IngestionStatus
$ctoJSONKey :: ToJSONKeyFunction IngestionStatus
Data.ToJSONKey,
      [Node] -> Either String IngestionStatus
forall a. ([Node] -> Either String a) -> FromXML a
parseXML :: [Node] -> Either String IngestionStatus
$cparseXML :: [Node] -> Either String IngestionStatus
Data.FromXML,
      IngestionStatus -> XML
forall a. (a -> XML) -> ToXML a
toXML :: IngestionStatus -> XML
$ctoXML :: IngestionStatus -> XML
Data.ToXML
    )

pattern IngestionStatus_FAILED :: IngestionStatus
pattern $bIngestionStatus_FAILED :: IngestionStatus
$mIngestionStatus_FAILED :: forall {r}. IngestionStatus -> ((# #) -> r) -> ((# #) -> r) -> r
IngestionStatus_FAILED = IngestionStatus' "FAILED"

pattern IngestionStatus_PENDING :: IngestionStatus
pattern $bIngestionStatus_PENDING :: IngestionStatus
$mIngestionStatus_PENDING :: forall {r}. IngestionStatus -> ((# #) -> r) -> ((# #) -> r) -> r
IngestionStatus_PENDING = IngestionStatus' "PENDING"

pattern IngestionStatus_RUNNING :: IngestionStatus
pattern $bIngestionStatus_RUNNING :: IngestionStatus
$mIngestionStatus_RUNNING :: forall {r}. IngestionStatus -> ((# #) -> r) -> ((# #) -> r) -> r
IngestionStatus_RUNNING = IngestionStatus' "RUNNING"

pattern IngestionStatus_STOP_REQUESTED :: IngestionStatus
pattern $bIngestionStatus_STOP_REQUESTED :: IngestionStatus
$mIngestionStatus_STOP_REQUESTED :: forall {r}. IngestionStatus -> ((# #) -> r) -> ((# #) -> r) -> r
IngestionStatus_STOP_REQUESTED = IngestionStatus' "STOP_REQUESTED"

pattern IngestionStatus_SUCCESS :: IngestionStatus
pattern $bIngestionStatus_SUCCESS :: IngestionStatus
$mIngestionStatus_SUCCESS :: forall {r}. IngestionStatus -> ((# #) -> r) -> ((# #) -> r) -> r
IngestionStatus_SUCCESS = IngestionStatus' "SUCCESS"

{-# COMPLETE
  IngestionStatus_FAILED,
  IngestionStatus_PENDING,
  IngestionStatus_RUNNING,
  IngestionStatus_STOP_REQUESTED,
  IngestionStatus_SUCCESS,
  IngestionStatus'
  #-}