{-# 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.FSx.DeleteStorageVirtualMachine
(
DeleteStorageVirtualMachine (..),
newDeleteStorageVirtualMachine,
deleteStorageVirtualMachine_clientRequestToken,
deleteStorageVirtualMachine_storageVirtualMachineId,
DeleteStorageVirtualMachineResponse (..),
newDeleteStorageVirtualMachineResponse,
deleteStorageVirtualMachineResponse_lifecycle,
deleteStorageVirtualMachineResponse_storageVirtualMachineId,
deleteStorageVirtualMachineResponse_httpStatus,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.FSx.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data DeleteStorageVirtualMachine = DeleteStorageVirtualMachine'
{ DeleteStorageVirtualMachine -> Maybe Text
clientRequestToken :: Prelude.Maybe Prelude.Text,
DeleteStorageVirtualMachine -> Text
storageVirtualMachineId :: Prelude.Text
}
deriving (DeleteStorageVirtualMachine -> DeleteStorageVirtualMachine -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteStorageVirtualMachine -> DeleteStorageVirtualMachine -> Bool
$c/= :: DeleteStorageVirtualMachine -> DeleteStorageVirtualMachine -> Bool
== :: DeleteStorageVirtualMachine -> DeleteStorageVirtualMachine -> Bool
$c== :: DeleteStorageVirtualMachine -> DeleteStorageVirtualMachine -> Bool
Prelude.Eq, ReadPrec [DeleteStorageVirtualMachine]
ReadPrec DeleteStorageVirtualMachine
Int -> ReadS DeleteStorageVirtualMachine
ReadS [DeleteStorageVirtualMachine]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeleteStorageVirtualMachine]
$creadListPrec :: ReadPrec [DeleteStorageVirtualMachine]
readPrec :: ReadPrec DeleteStorageVirtualMachine
$creadPrec :: ReadPrec DeleteStorageVirtualMachine
readList :: ReadS [DeleteStorageVirtualMachine]
$creadList :: ReadS [DeleteStorageVirtualMachine]
readsPrec :: Int -> ReadS DeleteStorageVirtualMachine
$creadsPrec :: Int -> ReadS DeleteStorageVirtualMachine
Prelude.Read, Int -> DeleteStorageVirtualMachine -> ShowS
[DeleteStorageVirtualMachine] -> ShowS
DeleteStorageVirtualMachine -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteStorageVirtualMachine] -> ShowS
$cshowList :: [DeleteStorageVirtualMachine] -> ShowS
show :: DeleteStorageVirtualMachine -> String
$cshow :: DeleteStorageVirtualMachine -> String
showsPrec :: Int -> DeleteStorageVirtualMachine -> ShowS
$cshowsPrec :: Int -> DeleteStorageVirtualMachine -> ShowS
Prelude.Show, forall x.
Rep DeleteStorageVirtualMachine x -> DeleteStorageVirtualMachine
forall x.
DeleteStorageVirtualMachine -> Rep DeleteStorageVirtualMachine x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DeleteStorageVirtualMachine x -> DeleteStorageVirtualMachine
$cfrom :: forall x.
DeleteStorageVirtualMachine -> Rep DeleteStorageVirtualMachine x
Prelude.Generic)
newDeleteStorageVirtualMachine ::
Prelude.Text ->
DeleteStorageVirtualMachine
newDeleteStorageVirtualMachine :: Text -> DeleteStorageVirtualMachine
newDeleteStorageVirtualMachine
Text
pStorageVirtualMachineId_ =
DeleteStorageVirtualMachine'
{ $sel:clientRequestToken:DeleteStorageVirtualMachine' :: Maybe Text
clientRequestToken =
forall a. Maybe a
Prelude.Nothing,
$sel:storageVirtualMachineId:DeleteStorageVirtualMachine' :: Text
storageVirtualMachineId =
Text
pStorageVirtualMachineId_
}
deleteStorageVirtualMachine_clientRequestToken :: Lens.Lens' DeleteStorageVirtualMachine (Prelude.Maybe Prelude.Text)
deleteStorageVirtualMachine_clientRequestToken :: Lens' DeleteStorageVirtualMachine (Maybe Text)
deleteStorageVirtualMachine_clientRequestToken = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteStorageVirtualMachine' {Maybe Text
clientRequestToken :: Maybe Text
$sel:clientRequestToken:DeleteStorageVirtualMachine' :: DeleteStorageVirtualMachine -> Maybe Text
clientRequestToken} -> Maybe Text
clientRequestToken) (\s :: DeleteStorageVirtualMachine
s@DeleteStorageVirtualMachine' {} Maybe Text
a -> DeleteStorageVirtualMachine
s {$sel:clientRequestToken:DeleteStorageVirtualMachine' :: Maybe Text
clientRequestToken = Maybe Text
a} :: DeleteStorageVirtualMachine)
deleteStorageVirtualMachine_storageVirtualMachineId :: Lens.Lens' DeleteStorageVirtualMachine Prelude.Text
deleteStorageVirtualMachine_storageVirtualMachineId :: Lens' DeleteStorageVirtualMachine Text
deleteStorageVirtualMachine_storageVirtualMachineId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteStorageVirtualMachine' {Text
storageVirtualMachineId :: Text
$sel:storageVirtualMachineId:DeleteStorageVirtualMachine' :: DeleteStorageVirtualMachine -> Text
storageVirtualMachineId} -> Text
storageVirtualMachineId) (\s :: DeleteStorageVirtualMachine
s@DeleteStorageVirtualMachine' {} Text
a -> DeleteStorageVirtualMachine
s {$sel:storageVirtualMachineId:DeleteStorageVirtualMachine' :: Text
storageVirtualMachineId = Text
a} :: DeleteStorageVirtualMachine)
instance Core.AWSRequest DeleteStorageVirtualMachine where
type
AWSResponse DeleteStorageVirtualMachine =
DeleteStorageVirtualMachineResponse
request :: (Service -> Service)
-> DeleteStorageVirtualMachine
-> Request DeleteStorageVirtualMachine
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 DeleteStorageVirtualMachine
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse DeleteStorageVirtualMachine)))
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 StorageVirtualMachineLifecycle
-> Maybe Text -> Int -> DeleteStorageVirtualMachineResponse
DeleteStorageVirtualMachineResponse'
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
"Lifecycle")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"StorageVirtualMachineId")
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 DeleteStorageVirtualMachine where
hashWithSalt :: Int -> DeleteStorageVirtualMachine -> Int
hashWithSalt Int
_salt DeleteStorageVirtualMachine' {Maybe Text
Text
storageVirtualMachineId :: Text
clientRequestToken :: Maybe Text
$sel:storageVirtualMachineId:DeleteStorageVirtualMachine' :: DeleteStorageVirtualMachine -> Text
$sel:clientRequestToken:DeleteStorageVirtualMachine' :: DeleteStorageVirtualMachine -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
clientRequestToken
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
storageVirtualMachineId
instance Prelude.NFData DeleteStorageVirtualMachine where
rnf :: DeleteStorageVirtualMachine -> ()
rnf DeleteStorageVirtualMachine' {Maybe Text
Text
storageVirtualMachineId :: Text
clientRequestToken :: Maybe Text
$sel:storageVirtualMachineId:DeleteStorageVirtualMachine' :: DeleteStorageVirtualMachine -> Text
$sel:clientRequestToken:DeleteStorageVirtualMachine' :: DeleteStorageVirtualMachine -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
clientRequestToken
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
storageVirtualMachineId
instance Data.ToHeaders DeleteStorageVirtualMachine where
toHeaders :: DeleteStorageVirtualMachine -> ResponseHeaders
toHeaders =
forall a b. a -> b -> a
Prelude.const
( forall a. Monoid a => [a] -> a
Prelude.mconcat
[ HeaderName
"X-Amz-Target"
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# ( ByteString
"AWSSimbaAPIService_v20180301.DeleteStorageVirtualMachine" ::
Prelude.ByteString
),
HeaderName
"Content-Type"
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# ( ByteString
"application/x-amz-json-1.1" ::
Prelude.ByteString
)
]
)
instance Data.ToJSON DeleteStorageVirtualMachine where
toJSON :: DeleteStorageVirtualMachine -> Value
toJSON DeleteStorageVirtualMachine' {Maybe Text
Text
storageVirtualMachineId :: Text
clientRequestToken :: Maybe Text
$sel:storageVirtualMachineId:DeleteStorageVirtualMachine' :: DeleteStorageVirtualMachine -> Text
$sel:clientRequestToken:DeleteStorageVirtualMachine' :: DeleteStorageVirtualMachine -> Maybe Text
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ (Key
"ClientRequestToken" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
clientRequestToken,
forall a. a -> Maybe a
Prelude.Just
( Key
"StorageVirtualMachineId"
forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
storageVirtualMachineId
)
]
)
instance Data.ToPath DeleteStorageVirtualMachine where
toPath :: DeleteStorageVirtualMachine -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery DeleteStorageVirtualMachine where
toQuery :: DeleteStorageVirtualMachine -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data DeleteStorageVirtualMachineResponse = DeleteStorageVirtualMachineResponse'
{
DeleteStorageVirtualMachineResponse
-> Maybe StorageVirtualMachineLifecycle
lifecycle :: Prelude.Maybe StorageVirtualMachineLifecycle,
DeleteStorageVirtualMachineResponse -> Maybe Text
storageVirtualMachineId :: Prelude.Maybe Prelude.Text,
DeleteStorageVirtualMachineResponse -> Int
httpStatus :: Prelude.Int
}
deriving (DeleteStorageVirtualMachineResponse
-> DeleteStorageVirtualMachineResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteStorageVirtualMachineResponse
-> DeleteStorageVirtualMachineResponse -> Bool
$c/= :: DeleteStorageVirtualMachineResponse
-> DeleteStorageVirtualMachineResponse -> Bool
== :: DeleteStorageVirtualMachineResponse
-> DeleteStorageVirtualMachineResponse -> Bool
$c== :: DeleteStorageVirtualMachineResponse
-> DeleteStorageVirtualMachineResponse -> Bool
Prelude.Eq, ReadPrec [DeleteStorageVirtualMachineResponse]
ReadPrec DeleteStorageVirtualMachineResponse
Int -> ReadS DeleteStorageVirtualMachineResponse
ReadS [DeleteStorageVirtualMachineResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeleteStorageVirtualMachineResponse]
$creadListPrec :: ReadPrec [DeleteStorageVirtualMachineResponse]
readPrec :: ReadPrec DeleteStorageVirtualMachineResponse
$creadPrec :: ReadPrec DeleteStorageVirtualMachineResponse
readList :: ReadS [DeleteStorageVirtualMachineResponse]
$creadList :: ReadS [DeleteStorageVirtualMachineResponse]
readsPrec :: Int -> ReadS DeleteStorageVirtualMachineResponse
$creadsPrec :: Int -> ReadS DeleteStorageVirtualMachineResponse
Prelude.Read, Int -> DeleteStorageVirtualMachineResponse -> ShowS
[DeleteStorageVirtualMachineResponse] -> ShowS
DeleteStorageVirtualMachineResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteStorageVirtualMachineResponse] -> ShowS
$cshowList :: [DeleteStorageVirtualMachineResponse] -> ShowS
show :: DeleteStorageVirtualMachineResponse -> String
$cshow :: DeleteStorageVirtualMachineResponse -> String
showsPrec :: Int -> DeleteStorageVirtualMachineResponse -> ShowS
$cshowsPrec :: Int -> DeleteStorageVirtualMachineResponse -> ShowS
Prelude.Show, forall x.
Rep DeleteStorageVirtualMachineResponse x
-> DeleteStorageVirtualMachineResponse
forall x.
DeleteStorageVirtualMachineResponse
-> Rep DeleteStorageVirtualMachineResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DeleteStorageVirtualMachineResponse x
-> DeleteStorageVirtualMachineResponse
$cfrom :: forall x.
DeleteStorageVirtualMachineResponse
-> Rep DeleteStorageVirtualMachineResponse x
Prelude.Generic)
newDeleteStorageVirtualMachineResponse ::
Prelude.Int ->
DeleteStorageVirtualMachineResponse
newDeleteStorageVirtualMachineResponse :: Int -> DeleteStorageVirtualMachineResponse
newDeleteStorageVirtualMachineResponse Int
pHttpStatus_ =
DeleteStorageVirtualMachineResponse'
{ $sel:lifecycle:DeleteStorageVirtualMachineResponse' :: Maybe StorageVirtualMachineLifecycle
lifecycle =
forall a. Maybe a
Prelude.Nothing,
$sel:storageVirtualMachineId:DeleteStorageVirtualMachineResponse' :: Maybe Text
storageVirtualMachineId =
forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:DeleteStorageVirtualMachineResponse' :: Int
httpStatus = Int
pHttpStatus_
}
deleteStorageVirtualMachineResponse_lifecycle :: Lens.Lens' DeleteStorageVirtualMachineResponse (Prelude.Maybe StorageVirtualMachineLifecycle)
deleteStorageVirtualMachineResponse_lifecycle :: Lens'
DeleteStorageVirtualMachineResponse
(Maybe StorageVirtualMachineLifecycle)
deleteStorageVirtualMachineResponse_lifecycle = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteStorageVirtualMachineResponse' {Maybe StorageVirtualMachineLifecycle
lifecycle :: Maybe StorageVirtualMachineLifecycle
$sel:lifecycle:DeleteStorageVirtualMachineResponse' :: DeleteStorageVirtualMachineResponse
-> Maybe StorageVirtualMachineLifecycle
lifecycle} -> Maybe StorageVirtualMachineLifecycle
lifecycle) (\s :: DeleteStorageVirtualMachineResponse
s@DeleteStorageVirtualMachineResponse' {} Maybe StorageVirtualMachineLifecycle
a -> DeleteStorageVirtualMachineResponse
s {$sel:lifecycle:DeleteStorageVirtualMachineResponse' :: Maybe StorageVirtualMachineLifecycle
lifecycle = Maybe StorageVirtualMachineLifecycle
a} :: DeleteStorageVirtualMachineResponse)
deleteStorageVirtualMachineResponse_storageVirtualMachineId :: Lens.Lens' DeleteStorageVirtualMachineResponse (Prelude.Maybe Prelude.Text)
deleteStorageVirtualMachineResponse_storageVirtualMachineId :: Lens' DeleteStorageVirtualMachineResponse (Maybe Text)
deleteStorageVirtualMachineResponse_storageVirtualMachineId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteStorageVirtualMachineResponse' {Maybe Text
storageVirtualMachineId :: Maybe Text
$sel:storageVirtualMachineId:DeleteStorageVirtualMachineResponse' :: DeleteStorageVirtualMachineResponse -> Maybe Text
storageVirtualMachineId} -> Maybe Text
storageVirtualMachineId) (\s :: DeleteStorageVirtualMachineResponse
s@DeleteStorageVirtualMachineResponse' {} Maybe Text
a -> DeleteStorageVirtualMachineResponse
s {$sel:storageVirtualMachineId:DeleteStorageVirtualMachineResponse' :: Maybe Text
storageVirtualMachineId = Maybe Text
a} :: DeleteStorageVirtualMachineResponse)
deleteStorageVirtualMachineResponse_httpStatus :: Lens.Lens' DeleteStorageVirtualMachineResponse Prelude.Int
deleteStorageVirtualMachineResponse_httpStatus :: Lens' DeleteStorageVirtualMachineResponse Int
deleteStorageVirtualMachineResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteStorageVirtualMachineResponse' {Int
httpStatus :: Int
$sel:httpStatus:DeleteStorageVirtualMachineResponse' :: DeleteStorageVirtualMachineResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: DeleteStorageVirtualMachineResponse
s@DeleteStorageVirtualMachineResponse' {} Int
a -> DeleteStorageVirtualMachineResponse
s {$sel:httpStatus:DeleteStorageVirtualMachineResponse' :: Int
httpStatus = Int
a} :: DeleteStorageVirtualMachineResponse)
instance
Prelude.NFData
DeleteStorageVirtualMachineResponse
where
rnf :: DeleteStorageVirtualMachineResponse -> ()
rnf DeleteStorageVirtualMachineResponse' {Int
Maybe Text
Maybe StorageVirtualMachineLifecycle
httpStatus :: Int
storageVirtualMachineId :: Maybe Text
lifecycle :: Maybe StorageVirtualMachineLifecycle
$sel:httpStatus:DeleteStorageVirtualMachineResponse' :: DeleteStorageVirtualMachineResponse -> Int
$sel:storageVirtualMachineId:DeleteStorageVirtualMachineResponse' :: DeleteStorageVirtualMachineResponse -> Maybe Text
$sel:lifecycle:DeleteStorageVirtualMachineResponse' :: DeleteStorageVirtualMachineResponse
-> Maybe StorageVirtualMachineLifecycle
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe StorageVirtualMachineLifecycle
lifecycle
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
storageVirtualMachineId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus