{-# 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.OpenSearch.Types.InboundConnectionStatusCode
-- 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.OpenSearch.Types.InboundConnectionStatusCode
  ( InboundConnectionStatusCode
      ( ..,
        InboundConnectionStatusCode_ACTIVE,
        InboundConnectionStatusCode_APPROVED,
        InboundConnectionStatusCode_DELETED,
        InboundConnectionStatusCode_DELETING,
        InboundConnectionStatusCode_PENDING_ACCEPTANCE,
        InboundConnectionStatusCode_PROVISIONING,
        InboundConnectionStatusCode_REJECTED,
        InboundConnectionStatusCode_REJECTING
      ),
  )
where

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

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

pattern InboundConnectionStatusCode_ACTIVE :: InboundConnectionStatusCode
pattern $bInboundConnectionStatusCode_ACTIVE :: InboundConnectionStatusCode
$mInboundConnectionStatusCode_ACTIVE :: forall r.
InboundConnectionStatusCode -> (Void# -> r) -> (Void# -> r) -> r
InboundConnectionStatusCode_ACTIVE = InboundConnectionStatusCode' "ACTIVE"

pattern InboundConnectionStatusCode_APPROVED :: InboundConnectionStatusCode
pattern $bInboundConnectionStatusCode_APPROVED :: InboundConnectionStatusCode
$mInboundConnectionStatusCode_APPROVED :: forall r.
InboundConnectionStatusCode -> (Void# -> r) -> (Void# -> r) -> r
InboundConnectionStatusCode_APPROVED = InboundConnectionStatusCode' "APPROVED"

pattern InboundConnectionStatusCode_DELETED :: InboundConnectionStatusCode
pattern $bInboundConnectionStatusCode_DELETED :: InboundConnectionStatusCode
$mInboundConnectionStatusCode_DELETED :: forall r.
InboundConnectionStatusCode -> (Void# -> r) -> (Void# -> r) -> r
InboundConnectionStatusCode_DELETED = InboundConnectionStatusCode' "DELETED"

pattern InboundConnectionStatusCode_DELETING :: InboundConnectionStatusCode
pattern $bInboundConnectionStatusCode_DELETING :: InboundConnectionStatusCode
$mInboundConnectionStatusCode_DELETING :: forall r.
InboundConnectionStatusCode -> (Void# -> r) -> (Void# -> r) -> r
InboundConnectionStatusCode_DELETING = InboundConnectionStatusCode' "DELETING"

pattern InboundConnectionStatusCode_PENDING_ACCEPTANCE :: InboundConnectionStatusCode
pattern $bInboundConnectionStatusCode_PENDING_ACCEPTANCE :: InboundConnectionStatusCode
$mInboundConnectionStatusCode_PENDING_ACCEPTANCE :: forall r.
InboundConnectionStatusCode -> (Void# -> r) -> (Void# -> r) -> r
InboundConnectionStatusCode_PENDING_ACCEPTANCE = InboundConnectionStatusCode' "PENDING_ACCEPTANCE"

pattern InboundConnectionStatusCode_PROVISIONING :: InboundConnectionStatusCode
pattern $bInboundConnectionStatusCode_PROVISIONING :: InboundConnectionStatusCode
$mInboundConnectionStatusCode_PROVISIONING :: forall r.
InboundConnectionStatusCode -> (Void# -> r) -> (Void# -> r) -> r
InboundConnectionStatusCode_PROVISIONING = InboundConnectionStatusCode' "PROVISIONING"

pattern InboundConnectionStatusCode_REJECTED :: InboundConnectionStatusCode
pattern $bInboundConnectionStatusCode_REJECTED :: InboundConnectionStatusCode
$mInboundConnectionStatusCode_REJECTED :: forall r.
InboundConnectionStatusCode -> (Void# -> r) -> (Void# -> r) -> r
InboundConnectionStatusCode_REJECTED = InboundConnectionStatusCode' "REJECTED"

pattern InboundConnectionStatusCode_REJECTING :: InboundConnectionStatusCode
pattern $bInboundConnectionStatusCode_REJECTING :: InboundConnectionStatusCode
$mInboundConnectionStatusCode_REJECTING :: forall r.
InboundConnectionStatusCode -> (Void# -> r) -> (Void# -> r) -> r
InboundConnectionStatusCode_REJECTING = InboundConnectionStatusCode' "REJECTING"

{-# COMPLETE
  InboundConnectionStatusCode_ACTIVE,
  InboundConnectionStatusCode_APPROVED,
  InboundConnectionStatusCode_DELETED,
  InboundConnectionStatusCode_DELETING,
  InboundConnectionStatusCode_PENDING_ACCEPTANCE,
  InboundConnectionStatusCode_PROVISIONING,
  InboundConnectionStatusCode_REJECTED,
  InboundConnectionStatusCode_REJECTING,
  InboundConnectionStatusCode'
  #-}