{-# 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.LookoutMetrics.Types.AnomalyDetectorStatus
-- 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.LookoutMetrics.Types.AnomalyDetectorStatus
  ( AnomalyDetectorStatus
      ( ..,
        AnomalyDetectorStatus_ACTIVATING,
        AnomalyDetectorStatus_ACTIVE,
        AnomalyDetectorStatus_BACK_TEST_ACTIVATING,
        AnomalyDetectorStatus_BACK_TEST_ACTIVE,
        AnomalyDetectorStatus_BACK_TEST_COMPLETE,
        AnomalyDetectorStatus_DELETING,
        AnomalyDetectorStatus_FAILED,
        AnomalyDetectorStatus_INACTIVE,
        AnomalyDetectorStatus_LEARNING
      ),
  )
where

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

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

pattern AnomalyDetectorStatus_ACTIVATING :: AnomalyDetectorStatus
pattern $bAnomalyDetectorStatus_ACTIVATING :: AnomalyDetectorStatus
$mAnomalyDetectorStatus_ACTIVATING :: forall r.
AnomalyDetectorStatus -> (Void# -> r) -> (Void# -> r) -> r
AnomalyDetectorStatus_ACTIVATING = AnomalyDetectorStatus' "ACTIVATING"

pattern AnomalyDetectorStatus_ACTIVE :: AnomalyDetectorStatus
pattern $bAnomalyDetectorStatus_ACTIVE :: AnomalyDetectorStatus
$mAnomalyDetectorStatus_ACTIVE :: forall r.
AnomalyDetectorStatus -> (Void# -> r) -> (Void# -> r) -> r
AnomalyDetectorStatus_ACTIVE = AnomalyDetectorStatus' "ACTIVE"

pattern AnomalyDetectorStatus_BACK_TEST_ACTIVATING :: AnomalyDetectorStatus
pattern $bAnomalyDetectorStatus_BACK_TEST_ACTIVATING :: AnomalyDetectorStatus
$mAnomalyDetectorStatus_BACK_TEST_ACTIVATING :: forall r.
AnomalyDetectorStatus -> (Void# -> r) -> (Void# -> r) -> r
AnomalyDetectorStatus_BACK_TEST_ACTIVATING = AnomalyDetectorStatus' "BACK_TEST_ACTIVATING"

pattern AnomalyDetectorStatus_BACK_TEST_ACTIVE :: AnomalyDetectorStatus
pattern $bAnomalyDetectorStatus_BACK_TEST_ACTIVE :: AnomalyDetectorStatus
$mAnomalyDetectorStatus_BACK_TEST_ACTIVE :: forall r.
AnomalyDetectorStatus -> (Void# -> r) -> (Void# -> r) -> r
AnomalyDetectorStatus_BACK_TEST_ACTIVE = AnomalyDetectorStatus' "BACK_TEST_ACTIVE"

pattern AnomalyDetectorStatus_BACK_TEST_COMPLETE :: AnomalyDetectorStatus
pattern $bAnomalyDetectorStatus_BACK_TEST_COMPLETE :: AnomalyDetectorStatus
$mAnomalyDetectorStatus_BACK_TEST_COMPLETE :: forall r.
AnomalyDetectorStatus -> (Void# -> r) -> (Void# -> r) -> r
AnomalyDetectorStatus_BACK_TEST_COMPLETE = AnomalyDetectorStatus' "BACK_TEST_COMPLETE"

pattern AnomalyDetectorStatus_DELETING :: AnomalyDetectorStatus
pattern $bAnomalyDetectorStatus_DELETING :: AnomalyDetectorStatus
$mAnomalyDetectorStatus_DELETING :: forall r.
AnomalyDetectorStatus -> (Void# -> r) -> (Void# -> r) -> r
AnomalyDetectorStatus_DELETING = AnomalyDetectorStatus' "DELETING"

pattern AnomalyDetectorStatus_FAILED :: AnomalyDetectorStatus
pattern $bAnomalyDetectorStatus_FAILED :: AnomalyDetectorStatus
$mAnomalyDetectorStatus_FAILED :: forall r.
AnomalyDetectorStatus -> (Void# -> r) -> (Void# -> r) -> r
AnomalyDetectorStatus_FAILED = AnomalyDetectorStatus' "FAILED"

pattern AnomalyDetectorStatus_INACTIVE :: AnomalyDetectorStatus
pattern $bAnomalyDetectorStatus_INACTIVE :: AnomalyDetectorStatus
$mAnomalyDetectorStatus_INACTIVE :: forall r.
AnomalyDetectorStatus -> (Void# -> r) -> (Void# -> r) -> r
AnomalyDetectorStatus_INACTIVE = AnomalyDetectorStatus' "INACTIVE"

pattern AnomalyDetectorStatus_LEARNING :: AnomalyDetectorStatus
pattern $bAnomalyDetectorStatus_LEARNING :: AnomalyDetectorStatus
$mAnomalyDetectorStatus_LEARNING :: forall r.
AnomalyDetectorStatus -> (Void# -> r) -> (Void# -> r) -> r
AnomalyDetectorStatus_LEARNING = AnomalyDetectorStatus' "LEARNING"

{-# COMPLETE
  AnomalyDetectorStatus_ACTIVATING,
  AnomalyDetectorStatus_ACTIVE,
  AnomalyDetectorStatus_BACK_TEST_ACTIVATING,
  AnomalyDetectorStatus_BACK_TEST_ACTIVE,
  AnomalyDetectorStatus_BACK_TEST_COMPLETE,
  AnomalyDetectorStatus_DELETING,
  AnomalyDetectorStatus_FAILED,
  AnomalyDetectorStatus_INACTIVE,
  AnomalyDetectorStatus_LEARNING,
  AnomalyDetectorStatus'
  #-}