{-# 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.Glue.Types.BlueprintStatus
-- Copyright   : (c) 2013-2021 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
module Amazonka.Glue.Types.BlueprintStatus
  ( BlueprintStatus
      ( ..,
        BlueprintStatus_ACTIVE,
        BlueprintStatus_CREATING,
        BlueprintStatus_FAILED,
        BlueprintStatus_UPDATING
      ),
  )
where

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

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

pattern BlueprintStatus_ACTIVE :: BlueprintStatus
pattern $bBlueprintStatus_ACTIVE :: BlueprintStatus
$mBlueprintStatus_ACTIVE :: forall r. BlueprintStatus -> (Void# -> r) -> (Void# -> r) -> r
BlueprintStatus_ACTIVE = BlueprintStatus' "ACTIVE"

pattern BlueprintStatus_CREATING :: BlueprintStatus
pattern $bBlueprintStatus_CREATING :: BlueprintStatus
$mBlueprintStatus_CREATING :: forall r. BlueprintStatus -> (Void# -> r) -> (Void# -> r) -> r
BlueprintStatus_CREATING = BlueprintStatus' "CREATING"

pattern BlueprintStatus_FAILED :: BlueprintStatus
pattern $bBlueprintStatus_FAILED :: BlueprintStatus
$mBlueprintStatus_FAILED :: forall r. BlueprintStatus -> (Void# -> r) -> (Void# -> r) -> r
BlueprintStatus_FAILED = BlueprintStatus' "FAILED"

pattern BlueprintStatus_UPDATING :: BlueprintStatus
pattern $bBlueprintStatus_UPDATING :: BlueprintStatus
$mBlueprintStatus_UPDATING :: forall r. BlueprintStatus -> (Void# -> r) -> (Void# -> r) -> r
BlueprintStatus_UPDATING = BlueprintStatus' "UPDATING"

{-# COMPLETE
  BlueprintStatus_ACTIVE,
  BlueprintStatus_CREATING,
  BlueprintStatus_FAILED,
  BlueprintStatus_UPDATING,
  BlueprintStatus'
  #-}