{-# 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.MigrationHubStrategy.Types.AppUnitErrorCategory
-- 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.MigrationHubStrategy.Types.AppUnitErrorCategory
  ( AppUnitErrorCategory
      ( ..,
        AppUnitErrorCategory_CONNECTIVITY_ERROR,
        AppUnitErrorCategory_CREDENTIAL_ERROR,
        AppUnitErrorCategory_OTHER_ERROR,
        AppUnitErrorCategory_PERMISSION_ERROR,
        AppUnitErrorCategory_UNSUPPORTED_ERROR
      ),
  )
where

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

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

pattern AppUnitErrorCategory_CONNECTIVITY_ERROR :: AppUnitErrorCategory
pattern $bAppUnitErrorCategory_CONNECTIVITY_ERROR :: AppUnitErrorCategory
$mAppUnitErrorCategory_CONNECTIVITY_ERROR :: forall {r}.
AppUnitErrorCategory -> ((# #) -> r) -> ((# #) -> r) -> r
AppUnitErrorCategory_CONNECTIVITY_ERROR = AppUnitErrorCategory' "CONNECTIVITY_ERROR"

pattern AppUnitErrorCategory_CREDENTIAL_ERROR :: AppUnitErrorCategory
pattern $bAppUnitErrorCategory_CREDENTIAL_ERROR :: AppUnitErrorCategory
$mAppUnitErrorCategory_CREDENTIAL_ERROR :: forall {r}.
AppUnitErrorCategory -> ((# #) -> r) -> ((# #) -> r) -> r
AppUnitErrorCategory_CREDENTIAL_ERROR = AppUnitErrorCategory' "CREDENTIAL_ERROR"

pattern AppUnitErrorCategory_OTHER_ERROR :: AppUnitErrorCategory
pattern $bAppUnitErrorCategory_OTHER_ERROR :: AppUnitErrorCategory
$mAppUnitErrorCategory_OTHER_ERROR :: forall {r}.
AppUnitErrorCategory -> ((# #) -> r) -> ((# #) -> r) -> r
AppUnitErrorCategory_OTHER_ERROR = AppUnitErrorCategory' "OTHER_ERROR"

pattern AppUnitErrorCategory_PERMISSION_ERROR :: AppUnitErrorCategory
pattern $bAppUnitErrorCategory_PERMISSION_ERROR :: AppUnitErrorCategory
$mAppUnitErrorCategory_PERMISSION_ERROR :: forall {r}.
AppUnitErrorCategory -> ((# #) -> r) -> ((# #) -> r) -> r
AppUnitErrorCategory_PERMISSION_ERROR = AppUnitErrorCategory' "PERMISSION_ERROR"

pattern AppUnitErrorCategory_UNSUPPORTED_ERROR :: AppUnitErrorCategory
pattern $bAppUnitErrorCategory_UNSUPPORTED_ERROR :: AppUnitErrorCategory
$mAppUnitErrorCategory_UNSUPPORTED_ERROR :: forall {r}.
AppUnitErrorCategory -> ((# #) -> r) -> ((# #) -> r) -> r
AppUnitErrorCategory_UNSUPPORTED_ERROR = AppUnitErrorCategory' "UNSUPPORTED_ERROR"

{-# COMPLETE
  AppUnitErrorCategory_CONNECTIVITY_ERROR,
  AppUnitErrorCategory_CREDENTIAL_ERROR,
  AppUnitErrorCategory_OTHER_ERROR,
  AppUnitErrorCategory_PERMISSION_ERROR,
  AppUnitErrorCategory_UNSUPPORTED_ERROR,
  AppUnitErrorCategory'
  #-}