{-# 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.Config.Types.OrganizationResourceStatus
-- 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.Config.Types.OrganizationResourceStatus
  ( OrganizationResourceStatus
      ( ..,
        OrganizationResourceStatus_CREATE_FAILED,
        OrganizationResourceStatus_CREATE_IN_PROGRESS,
        OrganizationResourceStatus_CREATE_SUCCESSFUL,
        OrganizationResourceStatus_DELETE_FAILED,
        OrganizationResourceStatus_DELETE_IN_PROGRESS,
        OrganizationResourceStatus_DELETE_SUCCESSFUL,
        OrganizationResourceStatus_UPDATE_FAILED,
        OrganizationResourceStatus_UPDATE_IN_PROGRESS,
        OrganizationResourceStatus_UPDATE_SUCCESSFUL
      ),
  )
where

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

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

pattern OrganizationResourceStatus_CREATE_FAILED :: OrganizationResourceStatus
pattern $bOrganizationResourceStatus_CREATE_FAILED :: OrganizationResourceStatus
$mOrganizationResourceStatus_CREATE_FAILED :: forall r.
OrganizationResourceStatus -> (Void# -> r) -> (Void# -> r) -> r
OrganizationResourceStatus_CREATE_FAILED = OrganizationResourceStatus' "CREATE_FAILED"

pattern OrganizationResourceStatus_CREATE_IN_PROGRESS :: OrganizationResourceStatus
pattern $bOrganizationResourceStatus_CREATE_IN_PROGRESS :: OrganizationResourceStatus
$mOrganizationResourceStatus_CREATE_IN_PROGRESS :: forall r.
OrganizationResourceStatus -> (Void# -> r) -> (Void# -> r) -> r
OrganizationResourceStatus_CREATE_IN_PROGRESS = OrganizationResourceStatus' "CREATE_IN_PROGRESS"

pattern OrganizationResourceStatus_CREATE_SUCCESSFUL :: OrganizationResourceStatus
pattern $bOrganizationResourceStatus_CREATE_SUCCESSFUL :: OrganizationResourceStatus
$mOrganizationResourceStatus_CREATE_SUCCESSFUL :: forall r.
OrganizationResourceStatus -> (Void# -> r) -> (Void# -> r) -> r
OrganizationResourceStatus_CREATE_SUCCESSFUL = OrganizationResourceStatus' "CREATE_SUCCESSFUL"

pattern OrganizationResourceStatus_DELETE_FAILED :: OrganizationResourceStatus
pattern $bOrganizationResourceStatus_DELETE_FAILED :: OrganizationResourceStatus
$mOrganizationResourceStatus_DELETE_FAILED :: forall r.
OrganizationResourceStatus -> (Void# -> r) -> (Void# -> r) -> r
OrganizationResourceStatus_DELETE_FAILED = OrganizationResourceStatus' "DELETE_FAILED"

pattern OrganizationResourceStatus_DELETE_IN_PROGRESS :: OrganizationResourceStatus
pattern $bOrganizationResourceStatus_DELETE_IN_PROGRESS :: OrganizationResourceStatus
$mOrganizationResourceStatus_DELETE_IN_PROGRESS :: forall r.
OrganizationResourceStatus -> (Void# -> r) -> (Void# -> r) -> r
OrganizationResourceStatus_DELETE_IN_PROGRESS = OrganizationResourceStatus' "DELETE_IN_PROGRESS"

pattern OrganizationResourceStatus_DELETE_SUCCESSFUL :: OrganizationResourceStatus
pattern $bOrganizationResourceStatus_DELETE_SUCCESSFUL :: OrganizationResourceStatus
$mOrganizationResourceStatus_DELETE_SUCCESSFUL :: forall r.
OrganizationResourceStatus -> (Void# -> r) -> (Void# -> r) -> r
OrganizationResourceStatus_DELETE_SUCCESSFUL = OrganizationResourceStatus' "DELETE_SUCCESSFUL"

pattern OrganizationResourceStatus_UPDATE_FAILED :: OrganizationResourceStatus
pattern $bOrganizationResourceStatus_UPDATE_FAILED :: OrganizationResourceStatus
$mOrganizationResourceStatus_UPDATE_FAILED :: forall r.
OrganizationResourceStatus -> (Void# -> r) -> (Void# -> r) -> r
OrganizationResourceStatus_UPDATE_FAILED = OrganizationResourceStatus' "UPDATE_FAILED"

pattern OrganizationResourceStatus_UPDATE_IN_PROGRESS :: OrganizationResourceStatus
pattern $bOrganizationResourceStatus_UPDATE_IN_PROGRESS :: OrganizationResourceStatus
$mOrganizationResourceStatus_UPDATE_IN_PROGRESS :: forall r.
OrganizationResourceStatus -> (Void# -> r) -> (Void# -> r) -> r
OrganizationResourceStatus_UPDATE_IN_PROGRESS = OrganizationResourceStatus' "UPDATE_IN_PROGRESS"

pattern OrganizationResourceStatus_UPDATE_SUCCESSFUL :: OrganizationResourceStatus
pattern $bOrganizationResourceStatus_UPDATE_SUCCESSFUL :: OrganizationResourceStatus
$mOrganizationResourceStatus_UPDATE_SUCCESSFUL :: forall r.
OrganizationResourceStatus -> (Void# -> r) -> (Void# -> r) -> r
OrganizationResourceStatus_UPDATE_SUCCESSFUL = OrganizationResourceStatus' "UPDATE_SUCCESSFUL"

{-# COMPLETE
  OrganizationResourceStatus_CREATE_FAILED,
  OrganizationResourceStatus_CREATE_IN_PROGRESS,
  OrganizationResourceStatus_CREATE_SUCCESSFUL,
  OrganizationResourceStatus_DELETE_FAILED,
  OrganizationResourceStatus_DELETE_IN_PROGRESS,
  OrganizationResourceStatus_DELETE_SUCCESSFUL,
  OrganizationResourceStatus_UPDATE_FAILED,
  OrganizationResourceStatus_UPDATE_IN_PROGRESS,
  OrganizationResourceStatus_UPDATE_SUCCESSFUL,
  OrganizationResourceStatus'
  #-}