{-# 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.AppRunner.Types.AutoScalingConfigurationStatus
-- 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.AppRunner.Types.AutoScalingConfigurationStatus
  ( AutoScalingConfigurationStatus
      ( ..,
        AutoScalingConfigurationStatus_ACTIVE,
        AutoScalingConfigurationStatus_INACTIVE
      ),
  )
where

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

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

pattern AutoScalingConfigurationStatus_ACTIVE :: AutoScalingConfigurationStatus
pattern $bAutoScalingConfigurationStatus_ACTIVE :: AutoScalingConfigurationStatus
$mAutoScalingConfigurationStatus_ACTIVE :: forall r.
AutoScalingConfigurationStatus -> (Void# -> r) -> (Void# -> r) -> r
AutoScalingConfigurationStatus_ACTIVE = AutoScalingConfigurationStatus' "ACTIVE"

pattern AutoScalingConfigurationStatus_INACTIVE :: AutoScalingConfigurationStatus
pattern $bAutoScalingConfigurationStatus_INACTIVE :: AutoScalingConfigurationStatus
$mAutoScalingConfigurationStatus_INACTIVE :: forall r.
AutoScalingConfigurationStatus -> (Void# -> r) -> (Void# -> r) -> r
AutoScalingConfigurationStatus_INACTIVE = AutoScalingConfigurationStatus' "INACTIVE"

{-# COMPLETE
  AutoScalingConfigurationStatus_ACTIVE,
  AutoScalingConfigurationStatus_INACTIVE,
  AutoScalingConfigurationStatus'
  #-}