{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Amazonka.ElasticSearch.StartElasticsearchServiceSoftwareUpdate
(
StartElasticsearchServiceSoftwareUpdate (..),
newStartElasticsearchServiceSoftwareUpdate,
startElasticsearchServiceSoftwareUpdate_domainName,
StartElasticsearchServiceSoftwareUpdateResponse (..),
newStartElasticsearchServiceSoftwareUpdateResponse,
startElasticsearchServiceSoftwareUpdateResponse_serviceSoftwareOptions,
startElasticsearchServiceSoftwareUpdateResponse_httpStatus,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.ElasticSearch.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data StartElasticsearchServiceSoftwareUpdate = StartElasticsearchServiceSoftwareUpdate'
{
StartElasticsearchServiceSoftwareUpdate -> Text
domainName :: Prelude.Text
}
deriving (StartElasticsearchServiceSoftwareUpdate
-> StartElasticsearchServiceSoftwareUpdate -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: StartElasticsearchServiceSoftwareUpdate
-> StartElasticsearchServiceSoftwareUpdate -> Bool
$c/= :: StartElasticsearchServiceSoftwareUpdate
-> StartElasticsearchServiceSoftwareUpdate -> Bool
== :: StartElasticsearchServiceSoftwareUpdate
-> StartElasticsearchServiceSoftwareUpdate -> Bool
$c== :: StartElasticsearchServiceSoftwareUpdate
-> StartElasticsearchServiceSoftwareUpdate -> Bool
Prelude.Eq, ReadPrec [StartElasticsearchServiceSoftwareUpdate]
ReadPrec StartElasticsearchServiceSoftwareUpdate
Int -> ReadS StartElasticsearchServiceSoftwareUpdate
ReadS [StartElasticsearchServiceSoftwareUpdate]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [StartElasticsearchServiceSoftwareUpdate]
$creadListPrec :: ReadPrec [StartElasticsearchServiceSoftwareUpdate]
readPrec :: ReadPrec StartElasticsearchServiceSoftwareUpdate
$creadPrec :: ReadPrec StartElasticsearchServiceSoftwareUpdate
readList :: ReadS [StartElasticsearchServiceSoftwareUpdate]
$creadList :: ReadS [StartElasticsearchServiceSoftwareUpdate]
readsPrec :: Int -> ReadS StartElasticsearchServiceSoftwareUpdate
$creadsPrec :: Int -> ReadS StartElasticsearchServiceSoftwareUpdate
Prelude.Read, Int -> StartElasticsearchServiceSoftwareUpdate -> ShowS
[StartElasticsearchServiceSoftwareUpdate] -> ShowS
StartElasticsearchServiceSoftwareUpdate -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [StartElasticsearchServiceSoftwareUpdate] -> ShowS
$cshowList :: [StartElasticsearchServiceSoftwareUpdate] -> ShowS
show :: StartElasticsearchServiceSoftwareUpdate -> String
$cshow :: StartElasticsearchServiceSoftwareUpdate -> String
showsPrec :: Int -> StartElasticsearchServiceSoftwareUpdate -> ShowS
$cshowsPrec :: Int -> StartElasticsearchServiceSoftwareUpdate -> ShowS
Prelude.Show, forall x.
Rep StartElasticsearchServiceSoftwareUpdate x
-> StartElasticsearchServiceSoftwareUpdate
forall x.
StartElasticsearchServiceSoftwareUpdate
-> Rep StartElasticsearchServiceSoftwareUpdate x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep StartElasticsearchServiceSoftwareUpdate x
-> StartElasticsearchServiceSoftwareUpdate
$cfrom :: forall x.
StartElasticsearchServiceSoftwareUpdate
-> Rep StartElasticsearchServiceSoftwareUpdate x
Prelude.Generic)
newStartElasticsearchServiceSoftwareUpdate ::
Prelude.Text ->
StartElasticsearchServiceSoftwareUpdate
newStartElasticsearchServiceSoftwareUpdate :: Text -> StartElasticsearchServiceSoftwareUpdate
newStartElasticsearchServiceSoftwareUpdate
Text
pDomainName_ =
StartElasticsearchServiceSoftwareUpdate'
{ $sel:domainName:StartElasticsearchServiceSoftwareUpdate' :: Text
domainName =
Text
pDomainName_
}
startElasticsearchServiceSoftwareUpdate_domainName :: Lens.Lens' StartElasticsearchServiceSoftwareUpdate Prelude.Text
startElasticsearchServiceSoftwareUpdate_domainName :: Lens' StartElasticsearchServiceSoftwareUpdate Text
startElasticsearchServiceSoftwareUpdate_domainName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\StartElasticsearchServiceSoftwareUpdate' {Text
domainName :: Text
$sel:domainName:StartElasticsearchServiceSoftwareUpdate' :: StartElasticsearchServiceSoftwareUpdate -> Text
domainName} -> Text
domainName) (\s :: StartElasticsearchServiceSoftwareUpdate
s@StartElasticsearchServiceSoftwareUpdate' {} Text
a -> StartElasticsearchServiceSoftwareUpdate
s {$sel:domainName:StartElasticsearchServiceSoftwareUpdate' :: Text
domainName = Text
a} :: StartElasticsearchServiceSoftwareUpdate)
instance
Core.AWSRequest
StartElasticsearchServiceSoftwareUpdate
where
type
AWSResponse
StartElasticsearchServiceSoftwareUpdate =
StartElasticsearchServiceSoftwareUpdateResponse
request :: (Service -> Service)
-> StartElasticsearchServiceSoftwareUpdate
-> Request StartElasticsearchServiceSoftwareUpdate
request Service -> Service
overrides =
forall a. (ToRequest a, ToJSON a) => Service -> a -> Request a
Request.postJSON (Service -> Service
overrides Service
defaultService)
response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy StartElasticsearchServiceSoftwareUpdate
-> ClientResponse ClientBody
-> m (Either
Error
(ClientResponse
(AWSResponse StartElasticsearchServiceSoftwareUpdate)))
response =
forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> Object -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveJSON
( \Int
s ResponseHeaders
h Object
x ->
Maybe ServiceSoftwareOptions
-> Int -> StartElasticsearchServiceSoftwareUpdateResponse
StartElasticsearchServiceSoftwareUpdateResponse'
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"ServiceSoftwareOptions")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure (forall a. Enum a => a -> Int
Prelude.fromEnum Int
s))
)
instance
Prelude.Hashable
StartElasticsearchServiceSoftwareUpdate
where
hashWithSalt :: Int -> StartElasticsearchServiceSoftwareUpdate -> Int
hashWithSalt
Int
_salt
StartElasticsearchServiceSoftwareUpdate' {Text
domainName :: Text
$sel:domainName:StartElasticsearchServiceSoftwareUpdate' :: StartElasticsearchServiceSoftwareUpdate -> Text
..} =
Int
_salt forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
domainName
instance
Prelude.NFData
StartElasticsearchServiceSoftwareUpdate
where
rnf :: StartElasticsearchServiceSoftwareUpdate -> ()
rnf StartElasticsearchServiceSoftwareUpdate' {Text
domainName :: Text
$sel:domainName:StartElasticsearchServiceSoftwareUpdate' :: StartElasticsearchServiceSoftwareUpdate -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
domainName
instance
Data.ToHeaders
StartElasticsearchServiceSoftwareUpdate
where
toHeaders :: StartElasticsearchServiceSoftwareUpdate -> ResponseHeaders
toHeaders = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
instance
Data.ToJSON
StartElasticsearchServiceSoftwareUpdate
where
toJSON :: StartElasticsearchServiceSoftwareUpdate -> Value
toJSON StartElasticsearchServiceSoftwareUpdate' {Text
domainName :: Text
$sel:domainName:StartElasticsearchServiceSoftwareUpdate' :: StartElasticsearchServiceSoftwareUpdate -> Text
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[forall a. a -> Maybe a
Prelude.Just (Key
"DomainName" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
domainName)]
)
instance
Data.ToPath
StartElasticsearchServiceSoftwareUpdate
where
toPath :: StartElasticsearchServiceSoftwareUpdate -> ByteString
toPath =
forall a b. a -> b -> a
Prelude.const
ByteString
"/2015-01-01/es/serviceSoftwareUpdate/start"
instance
Data.ToQuery
StartElasticsearchServiceSoftwareUpdate
where
toQuery :: StartElasticsearchServiceSoftwareUpdate -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data StartElasticsearchServiceSoftwareUpdateResponse = StartElasticsearchServiceSoftwareUpdateResponse'
{
StartElasticsearchServiceSoftwareUpdateResponse
-> Maybe ServiceSoftwareOptions
serviceSoftwareOptions :: Prelude.Maybe ServiceSoftwareOptions,
StartElasticsearchServiceSoftwareUpdateResponse -> Int
httpStatus :: Prelude.Int
}
deriving (StartElasticsearchServiceSoftwareUpdateResponse
-> StartElasticsearchServiceSoftwareUpdateResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: StartElasticsearchServiceSoftwareUpdateResponse
-> StartElasticsearchServiceSoftwareUpdateResponse -> Bool
$c/= :: StartElasticsearchServiceSoftwareUpdateResponse
-> StartElasticsearchServiceSoftwareUpdateResponse -> Bool
== :: StartElasticsearchServiceSoftwareUpdateResponse
-> StartElasticsearchServiceSoftwareUpdateResponse -> Bool
$c== :: StartElasticsearchServiceSoftwareUpdateResponse
-> StartElasticsearchServiceSoftwareUpdateResponse -> Bool
Prelude.Eq, ReadPrec [StartElasticsearchServiceSoftwareUpdateResponse]
ReadPrec StartElasticsearchServiceSoftwareUpdateResponse
Int -> ReadS StartElasticsearchServiceSoftwareUpdateResponse
ReadS [StartElasticsearchServiceSoftwareUpdateResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [StartElasticsearchServiceSoftwareUpdateResponse]
$creadListPrec :: ReadPrec [StartElasticsearchServiceSoftwareUpdateResponse]
readPrec :: ReadPrec StartElasticsearchServiceSoftwareUpdateResponse
$creadPrec :: ReadPrec StartElasticsearchServiceSoftwareUpdateResponse
readList :: ReadS [StartElasticsearchServiceSoftwareUpdateResponse]
$creadList :: ReadS [StartElasticsearchServiceSoftwareUpdateResponse]
readsPrec :: Int -> ReadS StartElasticsearchServiceSoftwareUpdateResponse
$creadsPrec :: Int -> ReadS StartElasticsearchServiceSoftwareUpdateResponse
Prelude.Read, Int -> StartElasticsearchServiceSoftwareUpdateResponse -> ShowS
[StartElasticsearchServiceSoftwareUpdateResponse] -> ShowS
StartElasticsearchServiceSoftwareUpdateResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [StartElasticsearchServiceSoftwareUpdateResponse] -> ShowS
$cshowList :: [StartElasticsearchServiceSoftwareUpdateResponse] -> ShowS
show :: StartElasticsearchServiceSoftwareUpdateResponse -> String
$cshow :: StartElasticsearchServiceSoftwareUpdateResponse -> String
showsPrec :: Int -> StartElasticsearchServiceSoftwareUpdateResponse -> ShowS
$cshowsPrec :: Int -> StartElasticsearchServiceSoftwareUpdateResponse -> ShowS
Prelude.Show, forall x.
Rep StartElasticsearchServiceSoftwareUpdateResponse x
-> StartElasticsearchServiceSoftwareUpdateResponse
forall x.
StartElasticsearchServiceSoftwareUpdateResponse
-> Rep StartElasticsearchServiceSoftwareUpdateResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep StartElasticsearchServiceSoftwareUpdateResponse x
-> StartElasticsearchServiceSoftwareUpdateResponse
$cfrom :: forall x.
StartElasticsearchServiceSoftwareUpdateResponse
-> Rep StartElasticsearchServiceSoftwareUpdateResponse x
Prelude.Generic)
newStartElasticsearchServiceSoftwareUpdateResponse ::
Prelude.Int ->
StartElasticsearchServiceSoftwareUpdateResponse
newStartElasticsearchServiceSoftwareUpdateResponse :: Int -> StartElasticsearchServiceSoftwareUpdateResponse
newStartElasticsearchServiceSoftwareUpdateResponse
Int
pHttpStatus_ =
StartElasticsearchServiceSoftwareUpdateResponse'
{ $sel:serviceSoftwareOptions:StartElasticsearchServiceSoftwareUpdateResponse' :: Maybe ServiceSoftwareOptions
serviceSoftwareOptions =
forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:StartElasticsearchServiceSoftwareUpdateResponse' :: Int
httpStatus = Int
pHttpStatus_
}
startElasticsearchServiceSoftwareUpdateResponse_serviceSoftwareOptions :: Lens.Lens' StartElasticsearchServiceSoftwareUpdateResponse (Prelude.Maybe ServiceSoftwareOptions)
startElasticsearchServiceSoftwareUpdateResponse_serviceSoftwareOptions :: Lens'
StartElasticsearchServiceSoftwareUpdateResponse
(Maybe ServiceSoftwareOptions)
startElasticsearchServiceSoftwareUpdateResponse_serviceSoftwareOptions = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\StartElasticsearchServiceSoftwareUpdateResponse' {Maybe ServiceSoftwareOptions
serviceSoftwareOptions :: Maybe ServiceSoftwareOptions
$sel:serviceSoftwareOptions:StartElasticsearchServiceSoftwareUpdateResponse' :: StartElasticsearchServiceSoftwareUpdateResponse
-> Maybe ServiceSoftwareOptions
serviceSoftwareOptions} -> Maybe ServiceSoftwareOptions
serviceSoftwareOptions) (\s :: StartElasticsearchServiceSoftwareUpdateResponse
s@StartElasticsearchServiceSoftwareUpdateResponse' {} Maybe ServiceSoftwareOptions
a -> StartElasticsearchServiceSoftwareUpdateResponse
s {$sel:serviceSoftwareOptions:StartElasticsearchServiceSoftwareUpdateResponse' :: Maybe ServiceSoftwareOptions
serviceSoftwareOptions = Maybe ServiceSoftwareOptions
a} :: StartElasticsearchServiceSoftwareUpdateResponse)
startElasticsearchServiceSoftwareUpdateResponse_httpStatus :: Lens.Lens' StartElasticsearchServiceSoftwareUpdateResponse Prelude.Int
startElasticsearchServiceSoftwareUpdateResponse_httpStatus :: Lens' StartElasticsearchServiceSoftwareUpdateResponse Int
startElasticsearchServiceSoftwareUpdateResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\StartElasticsearchServiceSoftwareUpdateResponse' {Int
httpStatus :: Int
$sel:httpStatus:StartElasticsearchServiceSoftwareUpdateResponse' :: StartElasticsearchServiceSoftwareUpdateResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: StartElasticsearchServiceSoftwareUpdateResponse
s@StartElasticsearchServiceSoftwareUpdateResponse' {} Int
a -> StartElasticsearchServiceSoftwareUpdateResponse
s {$sel:httpStatus:StartElasticsearchServiceSoftwareUpdateResponse' :: Int
httpStatus = Int
a} :: StartElasticsearchServiceSoftwareUpdateResponse)
instance
Prelude.NFData
StartElasticsearchServiceSoftwareUpdateResponse
where
rnf :: StartElasticsearchServiceSoftwareUpdateResponse -> ()
rnf
StartElasticsearchServiceSoftwareUpdateResponse' {Int
Maybe ServiceSoftwareOptions
httpStatus :: Int
serviceSoftwareOptions :: Maybe ServiceSoftwareOptions
$sel:httpStatus:StartElasticsearchServiceSoftwareUpdateResponse' :: StartElasticsearchServiceSoftwareUpdateResponse -> Int
$sel:serviceSoftwareOptions:StartElasticsearchServiceSoftwareUpdateResponse' :: StartElasticsearchServiceSoftwareUpdateResponse
-> Maybe ServiceSoftwareOptions
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe ServiceSoftwareOptions
serviceSoftwareOptions
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus