{-# 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.HealthLake.DeleteFHIRDatastore
(
DeleteFHIRDatastore (..),
newDeleteFHIRDatastore,
deleteFHIRDatastore_datastoreId,
DeleteFHIRDatastoreResponse (..),
newDeleteFHIRDatastoreResponse,
deleteFHIRDatastoreResponse_httpStatus,
deleteFHIRDatastoreResponse_datastoreId,
deleteFHIRDatastoreResponse_datastoreArn,
deleteFHIRDatastoreResponse_datastoreStatus,
deleteFHIRDatastoreResponse_datastoreEndpoint,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.HealthLake.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data DeleteFHIRDatastore = DeleteFHIRDatastore'
{
DeleteFHIRDatastore -> Maybe Text
datastoreId :: Prelude.Maybe Prelude.Text
}
deriving (DeleteFHIRDatastore -> DeleteFHIRDatastore -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteFHIRDatastore -> DeleteFHIRDatastore -> Bool
$c/= :: DeleteFHIRDatastore -> DeleteFHIRDatastore -> Bool
== :: DeleteFHIRDatastore -> DeleteFHIRDatastore -> Bool
$c== :: DeleteFHIRDatastore -> DeleteFHIRDatastore -> Bool
Prelude.Eq, ReadPrec [DeleteFHIRDatastore]
ReadPrec DeleteFHIRDatastore
Int -> ReadS DeleteFHIRDatastore
ReadS [DeleteFHIRDatastore]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeleteFHIRDatastore]
$creadListPrec :: ReadPrec [DeleteFHIRDatastore]
readPrec :: ReadPrec DeleteFHIRDatastore
$creadPrec :: ReadPrec DeleteFHIRDatastore
readList :: ReadS [DeleteFHIRDatastore]
$creadList :: ReadS [DeleteFHIRDatastore]
readsPrec :: Int -> ReadS DeleteFHIRDatastore
$creadsPrec :: Int -> ReadS DeleteFHIRDatastore
Prelude.Read, Int -> DeleteFHIRDatastore -> ShowS
[DeleteFHIRDatastore] -> ShowS
DeleteFHIRDatastore -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteFHIRDatastore] -> ShowS
$cshowList :: [DeleteFHIRDatastore] -> ShowS
show :: DeleteFHIRDatastore -> String
$cshow :: DeleteFHIRDatastore -> String
showsPrec :: Int -> DeleteFHIRDatastore -> ShowS
$cshowsPrec :: Int -> DeleteFHIRDatastore -> ShowS
Prelude.Show, forall x. Rep DeleteFHIRDatastore x -> DeleteFHIRDatastore
forall x. DeleteFHIRDatastore -> Rep DeleteFHIRDatastore x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DeleteFHIRDatastore x -> DeleteFHIRDatastore
$cfrom :: forall x. DeleteFHIRDatastore -> Rep DeleteFHIRDatastore x
Prelude.Generic)
newDeleteFHIRDatastore ::
DeleteFHIRDatastore
newDeleteFHIRDatastore :: DeleteFHIRDatastore
newDeleteFHIRDatastore =
DeleteFHIRDatastore' {$sel:datastoreId:DeleteFHIRDatastore' :: Maybe Text
datastoreId = forall a. Maybe a
Prelude.Nothing}
deleteFHIRDatastore_datastoreId :: Lens.Lens' DeleteFHIRDatastore (Prelude.Maybe Prelude.Text)
deleteFHIRDatastore_datastoreId :: Lens' DeleteFHIRDatastore (Maybe Text)
deleteFHIRDatastore_datastoreId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteFHIRDatastore' {Maybe Text
datastoreId :: Maybe Text
$sel:datastoreId:DeleteFHIRDatastore' :: DeleteFHIRDatastore -> Maybe Text
datastoreId} -> Maybe Text
datastoreId) (\s :: DeleteFHIRDatastore
s@DeleteFHIRDatastore' {} Maybe Text
a -> DeleteFHIRDatastore
s {$sel:datastoreId:DeleteFHIRDatastore' :: Maybe Text
datastoreId = Maybe Text
a} :: DeleteFHIRDatastore)
instance Core.AWSRequest DeleteFHIRDatastore where
type
AWSResponse DeleteFHIRDatastore =
DeleteFHIRDatastoreResponse
request :: (Service -> Service)
-> DeleteFHIRDatastore -> Request DeleteFHIRDatastore
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 DeleteFHIRDatastore
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse DeleteFHIRDatastore)))
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 ->
Int
-> Text
-> Text
-> DatastoreStatus
-> Text
-> DeleteFHIRDatastoreResponse
DeleteFHIRDatastoreResponse'
forall (f :: * -> *) a b. Functor 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))
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String a
Data..:> Key
"DatastoreId")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String a
Data..:> Key
"DatastoreArn")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String a
Data..:> Key
"DatastoreStatus")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String a
Data..:> Key
"DatastoreEndpoint")
)
instance Prelude.Hashable DeleteFHIRDatastore where
hashWithSalt :: Int -> DeleteFHIRDatastore -> Int
hashWithSalt Int
_salt DeleteFHIRDatastore' {Maybe Text
datastoreId :: Maybe Text
$sel:datastoreId:DeleteFHIRDatastore' :: DeleteFHIRDatastore -> Maybe Text
..} =
Int
_salt forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
datastoreId
instance Prelude.NFData DeleteFHIRDatastore where
rnf :: DeleteFHIRDatastore -> ()
rnf DeleteFHIRDatastore' {Maybe Text
datastoreId :: Maybe Text
$sel:datastoreId:DeleteFHIRDatastore' :: DeleteFHIRDatastore -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
datastoreId
instance Data.ToHeaders DeleteFHIRDatastore where
toHeaders :: DeleteFHIRDatastore -> 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
"HealthLake.DeleteFHIRDatastore" ::
Prelude.ByteString
),
HeaderName
"Content-Type"
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# ( ByteString
"application/x-amz-json-1.0" ::
Prelude.ByteString
)
]
)
instance Data.ToJSON DeleteFHIRDatastore where
toJSON :: DeleteFHIRDatastore -> Value
toJSON DeleteFHIRDatastore' {Maybe Text
datastoreId :: Maybe Text
$sel:datastoreId:DeleteFHIRDatastore' :: DeleteFHIRDatastore -> Maybe Text
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[(Key
"DatastoreId" 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
datastoreId]
)
instance Data.ToPath DeleteFHIRDatastore where
toPath :: DeleteFHIRDatastore -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery DeleteFHIRDatastore where
toQuery :: DeleteFHIRDatastore -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data DeleteFHIRDatastoreResponse = DeleteFHIRDatastoreResponse'
{
DeleteFHIRDatastoreResponse -> Int
httpStatus :: Prelude.Int,
DeleteFHIRDatastoreResponse -> Text
datastoreId :: Prelude.Text,
DeleteFHIRDatastoreResponse -> Text
datastoreArn :: Prelude.Text,
DeleteFHIRDatastoreResponse -> DatastoreStatus
datastoreStatus :: DatastoreStatus,
DeleteFHIRDatastoreResponse -> Text
datastoreEndpoint :: Prelude.Text
}
deriving (DeleteFHIRDatastoreResponse -> DeleteFHIRDatastoreResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteFHIRDatastoreResponse -> DeleteFHIRDatastoreResponse -> Bool
$c/= :: DeleteFHIRDatastoreResponse -> DeleteFHIRDatastoreResponse -> Bool
== :: DeleteFHIRDatastoreResponse -> DeleteFHIRDatastoreResponse -> Bool
$c== :: DeleteFHIRDatastoreResponse -> DeleteFHIRDatastoreResponse -> Bool
Prelude.Eq, ReadPrec [DeleteFHIRDatastoreResponse]
ReadPrec DeleteFHIRDatastoreResponse
Int -> ReadS DeleteFHIRDatastoreResponse
ReadS [DeleteFHIRDatastoreResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeleteFHIRDatastoreResponse]
$creadListPrec :: ReadPrec [DeleteFHIRDatastoreResponse]
readPrec :: ReadPrec DeleteFHIRDatastoreResponse
$creadPrec :: ReadPrec DeleteFHIRDatastoreResponse
readList :: ReadS [DeleteFHIRDatastoreResponse]
$creadList :: ReadS [DeleteFHIRDatastoreResponse]
readsPrec :: Int -> ReadS DeleteFHIRDatastoreResponse
$creadsPrec :: Int -> ReadS DeleteFHIRDatastoreResponse
Prelude.Read, Int -> DeleteFHIRDatastoreResponse -> ShowS
[DeleteFHIRDatastoreResponse] -> ShowS
DeleteFHIRDatastoreResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteFHIRDatastoreResponse] -> ShowS
$cshowList :: [DeleteFHIRDatastoreResponse] -> ShowS
show :: DeleteFHIRDatastoreResponse -> String
$cshow :: DeleteFHIRDatastoreResponse -> String
showsPrec :: Int -> DeleteFHIRDatastoreResponse -> ShowS
$cshowsPrec :: Int -> DeleteFHIRDatastoreResponse -> ShowS
Prelude.Show, forall x.
Rep DeleteFHIRDatastoreResponse x -> DeleteFHIRDatastoreResponse
forall x.
DeleteFHIRDatastoreResponse -> Rep DeleteFHIRDatastoreResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DeleteFHIRDatastoreResponse x -> DeleteFHIRDatastoreResponse
$cfrom :: forall x.
DeleteFHIRDatastoreResponse -> Rep DeleteFHIRDatastoreResponse x
Prelude.Generic)
newDeleteFHIRDatastoreResponse ::
Prelude.Int ->
Prelude.Text ->
Prelude.Text ->
DatastoreStatus ->
Prelude.Text ->
DeleteFHIRDatastoreResponse
newDeleteFHIRDatastoreResponse :: Int
-> Text
-> Text
-> DatastoreStatus
-> Text
-> DeleteFHIRDatastoreResponse
newDeleteFHIRDatastoreResponse
Int
pHttpStatus_
Text
pDatastoreId_
Text
pDatastoreArn_
DatastoreStatus
pDatastoreStatus_
Text
pDatastoreEndpoint_ =
DeleteFHIRDatastoreResponse'
{ $sel:httpStatus:DeleteFHIRDatastoreResponse' :: Int
httpStatus =
Int
pHttpStatus_,
$sel:datastoreId:DeleteFHIRDatastoreResponse' :: Text
datastoreId = Text
pDatastoreId_,
$sel:datastoreArn:DeleteFHIRDatastoreResponse' :: Text
datastoreArn = Text
pDatastoreArn_,
$sel:datastoreStatus:DeleteFHIRDatastoreResponse' :: DatastoreStatus
datastoreStatus = DatastoreStatus
pDatastoreStatus_,
$sel:datastoreEndpoint:DeleteFHIRDatastoreResponse' :: Text
datastoreEndpoint = Text
pDatastoreEndpoint_
}
deleteFHIRDatastoreResponse_httpStatus :: Lens.Lens' DeleteFHIRDatastoreResponse Prelude.Int
deleteFHIRDatastoreResponse_httpStatus :: Lens' DeleteFHIRDatastoreResponse Int
deleteFHIRDatastoreResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteFHIRDatastoreResponse' {Int
httpStatus :: Int
$sel:httpStatus:DeleteFHIRDatastoreResponse' :: DeleteFHIRDatastoreResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: DeleteFHIRDatastoreResponse
s@DeleteFHIRDatastoreResponse' {} Int
a -> DeleteFHIRDatastoreResponse
s {$sel:httpStatus:DeleteFHIRDatastoreResponse' :: Int
httpStatus = Int
a} :: DeleteFHIRDatastoreResponse)
deleteFHIRDatastoreResponse_datastoreId :: Lens.Lens' DeleteFHIRDatastoreResponse Prelude.Text
deleteFHIRDatastoreResponse_datastoreId :: Lens' DeleteFHIRDatastoreResponse Text
deleteFHIRDatastoreResponse_datastoreId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteFHIRDatastoreResponse' {Text
datastoreId :: Text
$sel:datastoreId:DeleteFHIRDatastoreResponse' :: DeleteFHIRDatastoreResponse -> Text
datastoreId} -> Text
datastoreId) (\s :: DeleteFHIRDatastoreResponse
s@DeleteFHIRDatastoreResponse' {} Text
a -> DeleteFHIRDatastoreResponse
s {$sel:datastoreId:DeleteFHIRDatastoreResponse' :: Text
datastoreId = Text
a} :: DeleteFHIRDatastoreResponse)
deleteFHIRDatastoreResponse_datastoreArn :: Lens.Lens' DeleteFHIRDatastoreResponse Prelude.Text
deleteFHIRDatastoreResponse_datastoreArn :: Lens' DeleteFHIRDatastoreResponse Text
deleteFHIRDatastoreResponse_datastoreArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteFHIRDatastoreResponse' {Text
datastoreArn :: Text
$sel:datastoreArn:DeleteFHIRDatastoreResponse' :: DeleteFHIRDatastoreResponse -> Text
datastoreArn} -> Text
datastoreArn) (\s :: DeleteFHIRDatastoreResponse
s@DeleteFHIRDatastoreResponse' {} Text
a -> DeleteFHIRDatastoreResponse
s {$sel:datastoreArn:DeleteFHIRDatastoreResponse' :: Text
datastoreArn = Text
a} :: DeleteFHIRDatastoreResponse)
deleteFHIRDatastoreResponse_datastoreStatus :: Lens.Lens' DeleteFHIRDatastoreResponse DatastoreStatus
deleteFHIRDatastoreResponse_datastoreStatus :: Lens' DeleteFHIRDatastoreResponse DatastoreStatus
deleteFHIRDatastoreResponse_datastoreStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteFHIRDatastoreResponse' {DatastoreStatus
datastoreStatus :: DatastoreStatus
$sel:datastoreStatus:DeleteFHIRDatastoreResponse' :: DeleteFHIRDatastoreResponse -> DatastoreStatus
datastoreStatus} -> DatastoreStatus
datastoreStatus) (\s :: DeleteFHIRDatastoreResponse
s@DeleteFHIRDatastoreResponse' {} DatastoreStatus
a -> DeleteFHIRDatastoreResponse
s {$sel:datastoreStatus:DeleteFHIRDatastoreResponse' :: DatastoreStatus
datastoreStatus = DatastoreStatus
a} :: DeleteFHIRDatastoreResponse)
deleteFHIRDatastoreResponse_datastoreEndpoint :: Lens.Lens' DeleteFHIRDatastoreResponse Prelude.Text
deleteFHIRDatastoreResponse_datastoreEndpoint :: Lens' DeleteFHIRDatastoreResponse Text
deleteFHIRDatastoreResponse_datastoreEndpoint = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteFHIRDatastoreResponse' {Text
datastoreEndpoint :: Text
$sel:datastoreEndpoint:DeleteFHIRDatastoreResponse' :: DeleteFHIRDatastoreResponse -> Text
datastoreEndpoint} -> Text
datastoreEndpoint) (\s :: DeleteFHIRDatastoreResponse
s@DeleteFHIRDatastoreResponse' {} Text
a -> DeleteFHIRDatastoreResponse
s {$sel:datastoreEndpoint:DeleteFHIRDatastoreResponse' :: Text
datastoreEndpoint = Text
a} :: DeleteFHIRDatastoreResponse)
instance Prelude.NFData DeleteFHIRDatastoreResponse where
rnf :: DeleteFHIRDatastoreResponse -> ()
rnf DeleteFHIRDatastoreResponse' {Int
Text
DatastoreStatus
datastoreEndpoint :: Text
datastoreStatus :: DatastoreStatus
datastoreArn :: Text
datastoreId :: Text
httpStatus :: Int
$sel:datastoreEndpoint:DeleteFHIRDatastoreResponse' :: DeleteFHIRDatastoreResponse -> Text
$sel:datastoreStatus:DeleteFHIRDatastoreResponse' :: DeleteFHIRDatastoreResponse -> DatastoreStatus
$sel:datastoreArn:DeleteFHIRDatastoreResponse' :: DeleteFHIRDatastoreResponse -> Text
$sel:datastoreId:DeleteFHIRDatastoreResponse' :: DeleteFHIRDatastoreResponse -> Text
$sel:httpStatus:DeleteFHIRDatastoreResponse' :: DeleteFHIRDatastoreResponse -> Int
..} =
forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
datastoreId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
datastoreArn
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf DatastoreStatus
datastoreStatus
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
datastoreEndpoint