{-# 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.FinSpaceData.DisassociateUserFromPermissionGroup
(
DisassociateUserFromPermissionGroup (..),
newDisassociateUserFromPermissionGroup,
disassociateUserFromPermissionGroup_clientToken,
disassociateUserFromPermissionGroup_permissionGroupId,
disassociateUserFromPermissionGroup_userId,
DisassociateUserFromPermissionGroupResponse (..),
newDisassociateUserFromPermissionGroupResponse,
disassociateUserFromPermissionGroupResponse_statusCode,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.FinSpaceData.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data DisassociateUserFromPermissionGroup = DisassociateUserFromPermissionGroup'
{
DisassociateUserFromPermissionGroup -> Maybe Text
clientToken :: Prelude.Maybe Prelude.Text,
DisassociateUserFromPermissionGroup -> Text
permissionGroupId :: Prelude.Text,
DisassociateUserFromPermissionGroup -> Text
userId :: Prelude.Text
}
deriving (DisassociateUserFromPermissionGroup
-> DisassociateUserFromPermissionGroup -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DisassociateUserFromPermissionGroup
-> DisassociateUserFromPermissionGroup -> Bool
$c/= :: DisassociateUserFromPermissionGroup
-> DisassociateUserFromPermissionGroup -> Bool
== :: DisassociateUserFromPermissionGroup
-> DisassociateUserFromPermissionGroup -> Bool
$c== :: DisassociateUserFromPermissionGroup
-> DisassociateUserFromPermissionGroup -> Bool
Prelude.Eq, ReadPrec [DisassociateUserFromPermissionGroup]
ReadPrec DisassociateUserFromPermissionGroup
Int -> ReadS DisassociateUserFromPermissionGroup
ReadS [DisassociateUserFromPermissionGroup]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DisassociateUserFromPermissionGroup]
$creadListPrec :: ReadPrec [DisassociateUserFromPermissionGroup]
readPrec :: ReadPrec DisassociateUserFromPermissionGroup
$creadPrec :: ReadPrec DisassociateUserFromPermissionGroup
readList :: ReadS [DisassociateUserFromPermissionGroup]
$creadList :: ReadS [DisassociateUserFromPermissionGroup]
readsPrec :: Int -> ReadS DisassociateUserFromPermissionGroup
$creadsPrec :: Int -> ReadS DisassociateUserFromPermissionGroup
Prelude.Read, Int -> DisassociateUserFromPermissionGroup -> ShowS
[DisassociateUserFromPermissionGroup] -> ShowS
DisassociateUserFromPermissionGroup -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DisassociateUserFromPermissionGroup] -> ShowS
$cshowList :: [DisassociateUserFromPermissionGroup] -> ShowS
show :: DisassociateUserFromPermissionGroup -> String
$cshow :: DisassociateUserFromPermissionGroup -> String
showsPrec :: Int -> DisassociateUserFromPermissionGroup -> ShowS
$cshowsPrec :: Int -> DisassociateUserFromPermissionGroup -> ShowS
Prelude.Show, forall x.
Rep DisassociateUserFromPermissionGroup x
-> DisassociateUserFromPermissionGroup
forall x.
DisassociateUserFromPermissionGroup
-> Rep DisassociateUserFromPermissionGroup x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DisassociateUserFromPermissionGroup x
-> DisassociateUserFromPermissionGroup
$cfrom :: forall x.
DisassociateUserFromPermissionGroup
-> Rep DisassociateUserFromPermissionGroup x
Prelude.Generic)
newDisassociateUserFromPermissionGroup ::
Prelude.Text ->
Prelude.Text ->
DisassociateUserFromPermissionGroup
newDisassociateUserFromPermissionGroup :: Text -> Text -> DisassociateUserFromPermissionGroup
newDisassociateUserFromPermissionGroup
Text
pPermissionGroupId_
Text
pUserId_ =
DisassociateUserFromPermissionGroup'
{ $sel:clientToken:DisassociateUserFromPermissionGroup' :: Maybe Text
clientToken =
forall a. Maybe a
Prelude.Nothing,
$sel:permissionGroupId:DisassociateUserFromPermissionGroup' :: Text
permissionGroupId =
Text
pPermissionGroupId_,
$sel:userId:DisassociateUserFromPermissionGroup' :: Text
userId = Text
pUserId_
}
disassociateUserFromPermissionGroup_clientToken :: Lens.Lens' DisassociateUserFromPermissionGroup (Prelude.Maybe Prelude.Text)
disassociateUserFromPermissionGroup_clientToken :: Lens' DisassociateUserFromPermissionGroup (Maybe Text)
disassociateUserFromPermissionGroup_clientToken = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DisassociateUserFromPermissionGroup' {Maybe Text
clientToken :: Maybe Text
$sel:clientToken:DisassociateUserFromPermissionGroup' :: DisassociateUserFromPermissionGroup -> Maybe Text
clientToken} -> Maybe Text
clientToken) (\s :: DisassociateUserFromPermissionGroup
s@DisassociateUserFromPermissionGroup' {} Maybe Text
a -> DisassociateUserFromPermissionGroup
s {$sel:clientToken:DisassociateUserFromPermissionGroup' :: Maybe Text
clientToken = Maybe Text
a} :: DisassociateUserFromPermissionGroup)
disassociateUserFromPermissionGroup_permissionGroupId :: Lens.Lens' DisassociateUserFromPermissionGroup Prelude.Text
disassociateUserFromPermissionGroup_permissionGroupId :: Lens' DisassociateUserFromPermissionGroup Text
disassociateUserFromPermissionGroup_permissionGroupId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DisassociateUserFromPermissionGroup' {Text
permissionGroupId :: Text
$sel:permissionGroupId:DisassociateUserFromPermissionGroup' :: DisassociateUserFromPermissionGroup -> Text
permissionGroupId} -> Text
permissionGroupId) (\s :: DisassociateUserFromPermissionGroup
s@DisassociateUserFromPermissionGroup' {} Text
a -> DisassociateUserFromPermissionGroup
s {$sel:permissionGroupId:DisassociateUserFromPermissionGroup' :: Text
permissionGroupId = Text
a} :: DisassociateUserFromPermissionGroup)
disassociateUserFromPermissionGroup_userId :: Lens.Lens' DisassociateUserFromPermissionGroup Prelude.Text
disassociateUserFromPermissionGroup_userId :: Lens' DisassociateUserFromPermissionGroup Text
disassociateUserFromPermissionGroup_userId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DisassociateUserFromPermissionGroup' {Text
userId :: Text
$sel:userId:DisassociateUserFromPermissionGroup' :: DisassociateUserFromPermissionGroup -> Text
userId} -> Text
userId) (\s :: DisassociateUserFromPermissionGroup
s@DisassociateUserFromPermissionGroup' {} Text
a -> DisassociateUserFromPermissionGroup
s {$sel:userId:DisassociateUserFromPermissionGroup' :: Text
userId = Text
a} :: DisassociateUserFromPermissionGroup)
instance
Core.AWSRequest
DisassociateUserFromPermissionGroup
where
type
AWSResponse DisassociateUserFromPermissionGroup =
DisassociateUserFromPermissionGroupResponse
request :: (Service -> Service)
-> DisassociateUserFromPermissionGroup
-> Request DisassociateUserFromPermissionGroup
request Service -> Service
overrides =
forall a. ToRequest a => Service -> a -> Request a
Request.delete (Service -> Service
overrides Service
defaultService)
response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy DisassociateUserFromPermissionGroup
-> ClientResponse ClientBody
-> m (Either
Error
(ClientResponse (AWSResponse DisassociateUserFromPermissionGroup)))
response =
forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> () -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveEmpty
( \Int
s ResponseHeaders
h ()
x ->
Int -> DisassociateUserFromPermissionGroupResponse
DisassociateUserFromPermissionGroupResponse'
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))
)
instance
Prelude.Hashable
DisassociateUserFromPermissionGroup
where
hashWithSalt :: Int -> DisassociateUserFromPermissionGroup -> Int
hashWithSalt
Int
_salt
DisassociateUserFromPermissionGroup' {Maybe Text
Text
userId :: Text
permissionGroupId :: Text
clientToken :: Maybe Text
$sel:userId:DisassociateUserFromPermissionGroup' :: DisassociateUserFromPermissionGroup -> Text
$sel:permissionGroupId:DisassociateUserFromPermissionGroup' :: DisassociateUserFromPermissionGroup -> Text
$sel:clientToken:DisassociateUserFromPermissionGroup' :: DisassociateUserFromPermissionGroup -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
clientToken
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
permissionGroupId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
userId
instance
Prelude.NFData
DisassociateUserFromPermissionGroup
where
rnf :: DisassociateUserFromPermissionGroup -> ()
rnf DisassociateUserFromPermissionGroup' {Maybe Text
Text
userId :: Text
permissionGroupId :: Text
clientToken :: Maybe Text
$sel:userId:DisassociateUserFromPermissionGroup' :: DisassociateUserFromPermissionGroup -> Text
$sel:permissionGroupId:DisassociateUserFromPermissionGroup' :: DisassociateUserFromPermissionGroup -> Text
$sel:clientToken:DisassociateUserFromPermissionGroup' :: DisassociateUserFromPermissionGroup -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
clientToken
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
permissionGroupId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
userId
instance
Data.ToHeaders
DisassociateUserFromPermissionGroup
where
toHeaders :: DisassociateUserFromPermissionGroup -> ResponseHeaders
toHeaders =
forall a b. a -> b -> a
Prelude.const
( forall a. Monoid a => [a] -> a
Prelude.mconcat
[ HeaderName
"Content-Type"
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# ( ByteString
"application/x-amz-json-1.1" ::
Prelude.ByteString
)
]
)
instance
Data.ToPath
DisassociateUserFromPermissionGroup
where
toPath :: DisassociateUserFromPermissionGroup -> ByteString
toPath DisassociateUserFromPermissionGroup' {Maybe Text
Text
userId :: Text
permissionGroupId :: Text
clientToken :: Maybe Text
$sel:userId:DisassociateUserFromPermissionGroup' :: DisassociateUserFromPermissionGroup -> Text
$sel:permissionGroupId:DisassociateUserFromPermissionGroup' :: DisassociateUserFromPermissionGroup -> Text
$sel:clientToken:DisassociateUserFromPermissionGroup' :: DisassociateUserFromPermissionGroup -> Maybe Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"/permission-group/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
permissionGroupId,
ByteString
"/users/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
userId
]
instance
Data.ToQuery
DisassociateUserFromPermissionGroup
where
toQuery :: DisassociateUserFromPermissionGroup -> QueryString
toQuery DisassociateUserFromPermissionGroup' {Maybe Text
Text
userId :: Text
permissionGroupId :: Text
clientToken :: Maybe Text
$sel:userId:DisassociateUserFromPermissionGroup' :: DisassociateUserFromPermissionGroup -> Text
$sel:permissionGroupId:DisassociateUserFromPermissionGroup' :: DisassociateUserFromPermissionGroup -> Text
$sel:clientToken:DisassociateUserFromPermissionGroup' :: DisassociateUserFromPermissionGroup -> Maybe Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat [ByteString
"clientToken" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Text
clientToken]
data DisassociateUserFromPermissionGroupResponse = DisassociateUserFromPermissionGroupResponse'
{
DisassociateUserFromPermissionGroupResponse -> Int
statusCode :: Prelude.Int
}
deriving (DisassociateUserFromPermissionGroupResponse
-> DisassociateUserFromPermissionGroupResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DisassociateUserFromPermissionGroupResponse
-> DisassociateUserFromPermissionGroupResponse -> Bool
$c/= :: DisassociateUserFromPermissionGroupResponse
-> DisassociateUserFromPermissionGroupResponse -> Bool
== :: DisassociateUserFromPermissionGroupResponse
-> DisassociateUserFromPermissionGroupResponse -> Bool
$c== :: DisassociateUserFromPermissionGroupResponse
-> DisassociateUserFromPermissionGroupResponse -> Bool
Prelude.Eq, ReadPrec [DisassociateUserFromPermissionGroupResponse]
ReadPrec DisassociateUserFromPermissionGroupResponse
Int -> ReadS DisassociateUserFromPermissionGroupResponse
ReadS [DisassociateUserFromPermissionGroupResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DisassociateUserFromPermissionGroupResponse]
$creadListPrec :: ReadPrec [DisassociateUserFromPermissionGroupResponse]
readPrec :: ReadPrec DisassociateUserFromPermissionGroupResponse
$creadPrec :: ReadPrec DisassociateUserFromPermissionGroupResponse
readList :: ReadS [DisassociateUserFromPermissionGroupResponse]
$creadList :: ReadS [DisassociateUserFromPermissionGroupResponse]
readsPrec :: Int -> ReadS DisassociateUserFromPermissionGroupResponse
$creadsPrec :: Int -> ReadS DisassociateUserFromPermissionGroupResponse
Prelude.Read, Int -> DisassociateUserFromPermissionGroupResponse -> ShowS
[DisassociateUserFromPermissionGroupResponse] -> ShowS
DisassociateUserFromPermissionGroupResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DisassociateUserFromPermissionGroupResponse] -> ShowS
$cshowList :: [DisassociateUserFromPermissionGroupResponse] -> ShowS
show :: DisassociateUserFromPermissionGroupResponse -> String
$cshow :: DisassociateUserFromPermissionGroupResponse -> String
showsPrec :: Int -> DisassociateUserFromPermissionGroupResponse -> ShowS
$cshowsPrec :: Int -> DisassociateUserFromPermissionGroupResponse -> ShowS
Prelude.Show, forall x.
Rep DisassociateUserFromPermissionGroupResponse x
-> DisassociateUserFromPermissionGroupResponse
forall x.
DisassociateUserFromPermissionGroupResponse
-> Rep DisassociateUserFromPermissionGroupResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DisassociateUserFromPermissionGroupResponse x
-> DisassociateUserFromPermissionGroupResponse
$cfrom :: forall x.
DisassociateUserFromPermissionGroupResponse
-> Rep DisassociateUserFromPermissionGroupResponse x
Prelude.Generic)
newDisassociateUserFromPermissionGroupResponse ::
Prelude.Int ->
DisassociateUserFromPermissionGroupResponse
newDisassociateUserFromPermissionGroupResponse :: Int -> DisassociateUserFromPermissionGroupResponse
newDisassociateUserFromPermissionGroupResponse
Int
pStatusCode_ =
DisassociateUserFromPermissionGroupResponse'
{ $sel:statusCode:DisassociateUserFromPermissionGroupResponse' :: Int
statusCode =
Int
pStatusCode_
}
disassociateUserFromPermissionGroupResponse_statusCode :: Lens.Lens' DisassociateUserFromPermissionGroupResponse Prelude.Int
disassociateUserFromPermissionGroupResponse_statusCode :: Lens' DisassociateUserFromPermissionGroupResponse Int
disassociateUserFromPermissionGroupResponse_statusCode = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DisassociateUserFromPermissionGroupResponse' {Int
statusCode :: Int
$sel:statusCode:DisassociateUserFromPermissionGroupResponse' :: DisassociateUserFromPermissionGroupResponse -> Int
statusCode} -> Int
statusCode) (\s :: DisassociateUserFromPermissionGroupResponse
s@DisassociateUserFromPermissionGroupResponse' {} Int
a -> DisassociateUserFromPermissionGroupResponse
s {$sel:statusCode:DisassociateUserFromPermissionGroupResponse' :: Int
statusCode = Int
a} :: DisassociateUserFromPermissionGroupResponse)
instance
Prelude.NFData
DisassociateUserFromPermissionGroupResponse
where
rnf :: DisassociateUserFromPermissionGroupResponse -> ()
rnf DisassociateUserFromPermissionGroupResponse' {Int
statusCode :: Int
$sel:statusCode:DisassociateUserFromPermissionGroupResponse' :: DisassociateUserFromPermissionGroupResponse -> Int
..} =
forall a. NFData a => a -> ()
Prelude.rnf Int
statusCode