{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Amazonka.ElasticSearch.Types.DomainEndpointOptionsStatus where
import qualified Amazonka.Core as Core
import Amazonka.ElasticSearch.Types.DomainEndpointOptions
import Amazonka.ElasticSearch.Types.OptionStatus
import qualified Amazonka.Lens as Lens
import qualified Amazonka.Prelude as Prelude
data DomainEndpointOptionsStatus = DomainEndpointOptionsStatus'
{
DomainEndpointOptionsStatus -> DomainEndpointOptions
options :: DomainEndpointOptions,
DomainEndpointOptionsStatus -> OptionStatus
status :: OptionStatus
}
deriving (DomainEndpointOptionsStatus -> DomainEndpointOptionsStatus -> Bool
(DomainEndpointOptionsStatus
-> DomainEndpointOptionsStatus -> Bool)
-> (DomainEndpointOptionsStatus
-> DomainEndpointOptionsStatus -> Bool)
-> Eq DomainEndpointOptionsStatus
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DomainEndpointOptionsStatus -> DomainEndpointOptionsStatus -> Bool
$c/= :: DomainEndpointOptionsStatus -> DomainEndpointOptionsStatus -> Bool
== :: DomainEndpointOptionsStatus -> DomainEndpointOptionsStatus -> Bool
$c== :: DomainEndpointOptionsStatus -> DomainEndpointOptionsStatus -> Bool
Prelude.Eq, ReadPrec [DomainEndpointOptionsStatus]
ReadPrec DomainEndpointOptionsStatus
Int -> ReadS DomainEndpointOptionsStatus
ReadS [DomainEndpointOptionsStatus]
(Int -> ReadS DomainEndpointOptionsStatus)
-> ReadS [DomainEndpointOptionsStatus]
-> ReadPrec DomainEndpointOptionsStatus
-> ReadPrec [DomainEndpointOptionsStatus]
-> Read DomainEndpointOptionsStatus
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DomainEndpointOptionsStatus]
$creadListPrec :: ReadPrec [DomainEndpointOptionsStatus]
readPrec :: ReadPrec DomainEndpointOptionsStatus
$creadPrec :: ReadPrec DomainEndpointOptionsStatus
readList :: ReadS [DomainEndpointOptionsStatus]
$creadList :: ReadS [DomainEndpointOptionsStatus]
readsPrec :: Int -> ReadS DomainEndpointOptionsStatus
$creadsPrec :: Int -> ReadS DomainEndpointOptionsStatus
Prelude.Read, Int -> DomainEndpointOptionsStatus -> ShowS
[DomainEndpointOptionsStatus] -> ShowS
DomainEndpointOptionsStatus -> String
(Int -> DomainEndpointOptionsStatus -> ShowS)
-> (DomainEndpointOptionsStatus -> String)
-> ([DomainEndpointOptionsStatus] -> ShowS)
-> Show DomainEndpointOptionsStatus
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DomainEndpointOptionsStatus] -> ShowS
$cshowList :: [DomainEndpointOptionsStatus] -> ShowS
show :: DomainEndpointOptionsStatus -> String
$cshow :: DomainEndpointOptionsStatus -> String
showsPrec :: Int -> DomainEndpointOptionsStatus -> ShowS
$cshowsPrec :: Int -> DomainEndpointOptionsStatus -> ShowS
Prelude.Show, (forall x.
DomainEndpointOptionsStatus -> Rep DomainEndpointOptionsStatus x)
-> (forall x.
Rep DomainEndpointOptionsStatus x -> DomainEndpointOptionsStatus)
-> Generic DomainEndpointOptionsStatus
forall x.
Rep DomainEndpointOptionsStatus x -> DomainEndpointOptionsStatus
forall x.
DomainEndpointOptionsStatus -> Rep DomainEndpointOptionsStatus x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DomainEndpointOptionsStatus x -> DomainEndpointOptionsStatus
$cfrom :: forall x.
DomainEndpointOptionsStatus -> Rep DomainEndpointOptionsStatus x
Prelude.Generic)
newDomainEndpointOptionsStatus ::
DomainEndpointOptions ->
OptionStatus ->
DomainEndpointOptionsStatus
newDomainEndpointOptionsStatus :: DomainEndpointOptions
-> OptionStatus -> DomainEndpointOptionsStatus
newDomainEndpointOptionsStatus DomainEndpointOptions
pOptions_ OptionStatus
pStatus_ =
DomainEndpointOptionsStatus' :: DomainEndpointOptions
-> OptionStatus -> DomainEndpointOptionsStatus
DomainEndpointOptionsStatus'
{ $sel:options:DomainEndpointOptionsStatus' :: DomainEndpointOptions
options = DomainEndpointOptions
pOptions_,
$sel:status:DomainEndpointOptionsStatus' :: OptionStatus
status = OptionStatus
pStatus_
}
domainEndpointOptionsStatus_options :: Lens.Lens' DomainEndpointOptionsStatus DomainEndpointOptions
domainEndpointOptionsStatus_options :: (DomainEndpointOptions -> f DomainEndpointOptions)
-> DomainEndpointOptionsStatus -> f DomainEndpointOptionsStatus
domainEndpointOptionsStatus_options = (DomainEndpointOptionsStatus -> DomainEndpointOptions)
-> (DomainEndpointOptionsStatus
-> DomainEndpointOptions -> DomainEndpointOptionsStatus)
-> Lens
DomainEndpointOptionsStatus
DomainEndpointOptionsStatus
DomainEndpointOptions
DomainEndpointOptions
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DomainEndpointOptionsStatus' {DomainEndpointOptions
options :: DomainEndpointOptions
$sel:options:DomainEndpointOptionsStatus' :: DomainEndpointOptionsStatus -> DomainEndpointOptions
options} -> DomainEndpointOptions
options) (\s :: DomainEndpointOptionsStatus
s@DomainEndpointOptionsStatus' {} DomainEndpointOptions
a -> DomainEndpointOptionsStatus
s {$sel:options:DomainEndpointOptionsStatus' :: DomainEndpointOptions
options = DomainEndpointOptions
a} :: DomainEndpointOptionsStatus)
domainEndpointOptionsStatus_status :: Lens.Lens' DomainEndpointOptionsStatus OptionStatus
domainEndpointOptionsStatus_status :: (OptionStatus -> f OptionStatus)
-> DomainEndpointOptionsStatus -> f DomainEndpointOptionsStatus
domainEndpointOptionsStatus_status = (DomainEndpointOptionsStatus -> OptionStatus)
-> (DomainEndpointOptionsStatus
-> OptionStatus -> DomainEndpointOptionsStatus)
-> Lens
DomainEndpointOptionsStatus
DomainEndpointOptionsStatus
OptionStatus
OptionStatus
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DomainEndpointOptionsStatus' {OptionStatus
status :: OptionStatus
$sel:status:DomainEndpointOptionsStatus' :: DomainEndpointOptionsStatus -> OptionStatus
status} -> OptionStatus
status) (\s :: DomainEndpointOptionsStatus
s@DomainEndpointOptionsStatus' {} OptionStatus
a -> DomainEndpointOptionsStatus
s {$sel:status:DomainEndpointOptionsStatus' :: OptionStatus
status = OptionStatus
a} :: DomainEndpointOptionsStatus)
instance Core.FromJSON DomainEndpointOptionsStatus where
parseJSON :: Value -> Parser DomainEndpointOptionsStatus
parseJSON =
String
-> (Object -> Parser DomainEndpointOptionsStatus)
-> Value
-> Parser DomainEndpointOptionsStatus
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Core.withObject
String
"DomainEndpointOptionsStatus"
( \Object
x ->
DomainEndpointOptions
-> OptionStatus -> DomainEndpointOptionsStatus
DomainEndpointOptionsStatus'
(DomainEndpointOptions
-> OptionStatus -> DomainEndpointOptionsStatus)
-> Parser DomainEndpointOptions
-> Parser (OptionStatus -> DomainEndpointOptionsStatus)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x Object -> Text -> Parser DomainEndpointOptions
forall a. FromJSON a => Object -> Text -> Parser a
Core..: Text
"Options")
Parser (OptionStatus -> DomainEndpointOptionsStatus)
-> Parser OptionStatus -> Parser DomainEndpointOptionsStatus
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser OptionStatus
forall a. FromJSON a => Object -> Text -> Parser a
Core..: Text
"Status")
)
instance Prelude.Hashable DomainEndpointOptionsStatus
instance Prelude.NFData DomainEndpointOptionsStatus