{-# 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.EKS.Types.ConnectorConfigProvider
-- 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.EKS.Types.ConnectorConfigProvider
  ( ConnectorConfigProvider
      ( ..,
        ConnectorConfigProvider_AKS,
        ConnectorConfigProvider_ANTHOS,
        ConnectorConfigProvider_EC2,
        ConnectorConfigProvider_EKS_ANYWHERE,
        ConnectorConfigProvider_GKE,
        ConnectorConfigProvider_OPENSHIFT,
        ConnectorConfigProvider_OTHER,
        ConnectorConfigProvider_RANCHER,
        ConnectorConfigProvider_TANZU
      ),
  )
where

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

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

pattern ConnectorConfigProvider_AKS :: ConnectorConfigProvider
pattern $bConnectorConfigProvider_AKS :: ConnectorConfigProvider
$mConnectorConfigProvider_AKS :: forall {r}.
ConnectorConfigProvider -> ((# #) -> r) -> ((# #) -> r) -> r
ConnectorConfigProvider_AKS = ConnectorConfigProvider' "AKS"

pattern ConnectorConfigProvider_ANTHOS :: ConnectorConfigProvider
pattern $bConnectorConfigProvider_ANTHOS :: ConnectorConfigProvider
$mConnectorConfigProvider_ANTHOS :: forall {r}.
ConnectorConfigProvider -> ((# #) -> r) -> ((# #) -> r) -> r
ConnectorConfigProvider_ANTHOS = ConnectorConfigProvider' "ANTHOS"

pattern ConnectorConfigProvider_EC2 :: ConnectorConfigProvider
pattern $bConnectorConfigProvider_EC2 :: ConnectorConfigProvider
$mConnectorConfigProvider_EC2 :: forall {r}.
ConnectorConfigProvider -> ((# #) -> r) -> ((# #) -> r) -> r
ConnectorConfigProvider_EC2 = ConnectorConfigProvider' "EC2"

pattern ConnectorConfigProvider_EKS_ANYWHERE :: ConnectorConfigProvider
pattern $bConnectorConfigProvider_EKS_ANYWHERE :: ConnectorConfigProvider
$mConnectorConfigProvider_EKS_ANYWHERE :: forall {r}.
ConnectorConfigProvider -> ((# #) -> r) -> ((# #) -> r) -> r
ConnectorConfigProvider_EKS_ANYWHERE = ConnectorConfigProvider' "EKS_ANYWHERE"

pattern ConnectorConfigProvider_GKE :: ConnectorConfigProvider
pattern $bConnectorConfigProvider_GKE :: ConnectorConfigProvider
$mConnectorConfigProvider_GKE :: forall {r}.
ConnectorConfigProvider -> ((# #) -> r) -> ((# #) -> r) -> r
ConnectorConfigProvider_GKE = ConnectorConfigProvider' "GKE"

pattern ConnectorConfigProvider_OPENSHIFT :: ConnectorConfigProvider
pattern $bConnectorConfigProvider_OPENSHIFT :: ConnectorConfigProvider
$mConnectorConfigProvider_OPENSHIFT :: forall {r}.
ConnectorConfigProvider -> ((# #) -> r) -> ((# #) -> r) -> r
ConnectorConfigProvider_OPENSHIFT = ConnectorConfigProvider' "OPENSHIFT"

pattern ConnectorConfigProvider_OTHER :: ConnectorConfigProvider
pattern $bConnectorConfigProvider_OTHER :: ConnectorConfigProvider
$mConnectorConfigProvider_OTHER :: forall {r}.
ConnectorConfigProvider -> ((# #) -> r) -> ((# #) -> r) -> r
ConnectorConfigProvider_OTHER = ConnectorConfigProvider' "OTHER"

pattern ConnectorConfigProvider_RANCHER :: ConnectorConfigProvider
pattern $bConnectorConfigProvider_RANCHER :: ConnectorConfigProvider
$mConnectorConfigProvider_RANCHER :: forall {r}.
ConnectorConfigProvider -> ((# #) -> r) -> ((# #) -> r) -> r
ConnectorConfigProvider_RANCHER = ConnectorConfigProvider' "RANCHER"

pattern ConnectorConfigProvider_TANZU :: ConnectorConfigProvider
pattern $bConnectorConfigProvider_TANZU :: ConnectorConfigProvider
$mConnectorConfigProvider_TANZU :: forall {r}.
ConnectorConfigProvider -> ((# #) -> r) -> ((# #) -> r) -> r
ConnectorConfigProvider_TANZU = ConnectorConfigProvider' "TANZU"

{-# COMPLETE
  ConnectorConfigProvider_AKS,
  ConnectorConfigProvider_ANTHOS,
  ConnectorConfigProvider_EC2,
  ConnectorConfigProvider_EKS_ANYWHERE,
  ConnectorConfigProvider_GKE,
  ConnectorConfigProvider_OPENSHIFT,
  ConnectorConfigProvider_OTHER,
  ConnectorConfigProvider_RANCHER,
  ConnectorConfigProvider_TANZU,
  ConnectorConfigProvider'
  #-}