{-# 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.SMS.Types.AppReplicationConfigurationStatus
-- 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.SMS.Types.AppReplicationConfigurationStatus
  ( AppReplicationConfigurationStatus
      ( ..,
        AppReplicationConfigurationStatus_CONFIGURED,
        AppReplicationConfigurationStatus_NOT_CONFIGURED
      ),
  )
where

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

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

pattern AppReplicationConfigurationStatus_CONFIGURED :: AppReplicationConfigurationStatus
pattern $bAppReplicationConfigurationStatus_CONFIGURED :: AppReplicationConfigurationStatus
$mAppReplicationConfigurationStatus_CONFIGURED :: forall r.
AppReplicationConfigurationStatus
-> (Void# -> r) -> (Void# -> r) -> r
AppReplicationConfigurationStatus_CONFIGURED = AppReplicationConfigurationStatus' "CONFIGURED"

pattern AppReplicationConfigurationStatus_NOT_CONFIGURED :: AppReplicationConfigurationStatus
pattern $bAppReplicationConfigurationStatus_NOT_CONFIGURED :: AppReplicationConfigurationStatus
$mAppReplicationConfigurationStatus_NOT_CONFIGURED :: forall r.
AppReplicationConfigurationStatus
-> (Void# -> r) -> (Void# -> r) -> r
AppReplicationConfigurationStatus_NOT_CONFIGURED = AppReplicationConfigurationStatus' "NOT_CONFIGURED"

{-# COMPLETE
  AppReplicationConfigurationStatus_CONFIGURED,
  AppReplicationConfigurationStatus_NOT_CONFIGURED,
  AppReplicationConfigurationStatus'
  #-}