{-# 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.IoTEvents.Types.DetectorModelVersionStatus
-- 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.IoTEvents.Types.DetectorModelVersionStatus
  ( DetectorModelVersionStatus
      ( ..,
        DetectorModelVersionStatus_ACTIVATING,
        DetectorModelVersionStatus_ACTIVE,
        DetectorModelVersionStatus_DEPRECATED,
        DetectorModelVersionStatus_DRAFT,
        DetectorModelVersionStatus_FAILED,
        DetectorModelVersionStatus_INACTIVE,
        DetectorModelVersionStatus_PAUSED
      ),
  )
where

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

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

pattern DetectorModelVersionStatus_ACTIVATING :: DetectorModelVersionStatus
pattern $bDetectorModelVersionStatus_ACTIVATING :: DetectorModelVersionStatus
$mDetectorModelVersionStatus_ACTIVATING :: forall {r}.
DetectorModelVersionStatus -> ((# #) -> r) -> ((# #) -> r) -> r
DetectorModelVersionStatus_ACTIVATING = DetectorModelVersionStatus' "ACTIVATING"

pattern DetectorModelVersionStatus_ACTIVE :: DetectorModelVersionStatus
pattern $bDetectorModelVersionStatus_ACTIVE :: DetectorModelVersionStatus
$mDetectorModelVersionStatus_ACTIVE :: forall {r}.
DetectorModelVersionStatus -> ((# #) -> r) -> ((# #) -> r) -> r
DetectorModelVersionStatus_ACTIVE = DetectorModelVersionStatus' "ACTIVE"

pattern DetectorModelVersionStatus_DEPRECATED :: DetectorModelVersionStatus
pattern $bDetectorModelVersionStatus_DEPRECATED :: DetectorModelVersionStatus
$mDetectorModelVersionStatus_DEPRECATED :: forall {r}.
DetectorModelVersionStatus -> ((# #) -> r) -> ((# #) -> r) -> r
DetectorModelVersionStatus_DEPRECATED = DetectorModelVersionStatus' "DEPRECATED"

pattern DetectorModelVersionStatus_DRAFT :: DetectorModelVersionStatus
pattern $bDetectorModelVersionStatus_DRAFT :: DetectorModelVersionStatus
$mDetectorModelVersionStatus_DRAFT :: forall {r}.
DetectorModelVersionStatus -> ((# #) -> r) -> ((# #) -> r) -> r
DetectorModelVersionStatus_DRAFT = DetectorModelVersionStatus' "DRAFT"

pattern DetectorModelVersionStatus_FAILED :: DetectorModelVersionStatus
pattern $bDetectorModelVersionStatus_FAILED :: DetectorModelVersionStatus
$mDetectorModelVersionStatus_FAILED :: forall {r}.
DetectorModelVersionStatus -> ((# #) -> r) -> ((# #) -> r) -> r
DetectorModelVersionStatus_FAILED = DetectorModelVersionStatus' "FAILED"

pattern DetectorModelVersionStatus_INACTIVE :: DetectorModelVersionStatus
pattern $bDetectorModelVersionStatus_INACTIVE :: DetectorModelVersionStatus
$mDetectorModelVersionStatus_INACTIVE :: forall {r}.
DetectorModelVersionStatus -> ((# #) -> r) -> ((# #) -> r) -> r
DetectorModelVersionStatus_INACTIVE = DetectorModelVersionStatus' "INACTIVE"

pattern DetectorModelVersionStatus_PAUSED :: DetectorModelVersionStatus
pattern $bDetectorModelVersionStatus_PAUSED :: DetectorModelVersionStatus
$mDetectorModelVersionStatus_PAUSED :: forall {r}.
DetectorModelVersionStatus -> ((# #) -> r) -> ((# #) -> r) -> r
DetectorModelVersionStatus_PAUSED = DetectorModelVersionStatus' "PAUSED"

{-# COMPLETE
  DetectorModelVersionStatus_ACTIVATING,
  DetectorModelVersionStatus_ACTIVE,
  DetectorModelVersionStatus_DEPRECATED,
  DetectorModelVersionStatus_DRAFT,
  DetectorModelVersionStatus_FAILED,
  DetectorModelVersionStatus_INACTIVE,
  DetectorModelVersionStatus_PAUSED,
  DetectorModelVersionStatus'
  #-}