{-# 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.QuickSight.DescribeGroupMembership
(
DescribeGroupMembership (..),
newDescribeGroupMembership,
describeGroupMembership_memberName,
describeGroupMembership_groupName,
describeGroupMembership_awsAccountId,
describeGroupMembership_namespace,
DescribeGroupMembershipResponse (..),
newDescribeGroupMembershipResponse,
describeGroupMembershipResponse_groupMember,
describeGroupMembershipResponse_requestId,
describeGroupMembershipResponse_status,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import qualified Amazonka.Prelude as Prelude
import Amazonka.QuickSight.Types
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data DescribeGroupMembership = DescribeGroupMembership'
{
DescribeGroupMembership -> Text
memberName :: Prelude.Text,
DescribeGroupMembership -> Text
groupName :: Prelude.Text,
DescribeGroupMembership -> Text
awsAccountId :: Prelude.Text,
DescribeGroupMembership -> Text
namespace :: Prelude.Text
}
deriving (DescribeGroupMembership -> DescribeGroupMembership -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeGroupMembership -> DescribeGroupMembership -> Bool
$c/= :: DescribeGroupMembership -> DescribeGroupMembership -> Bool
== :: DescribeGroupMembership -> DescribeGroupMembership -> Bool
$c== :: DescribeGroupMembership -> DescribeGroupMembership -> Bool
Prelude.Eq, ReadPrec [DescribeGroupMembership]
ReadPrec DescribeGroupMembership
Int -> ReadS DescribeGroupMembership
ReadS [DescribeGroupMembership]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeGroupMembership]
$creadListPrec :: ReadPrec [DescribeGroupMembership]
readPrec :: ReadPrec DescribeGroupMembership
$creadPrec :: ReadPrec DescribeGroupMembership
readList :: ReadS [DescribeGroupMembership]
$creadList :: ReadS [DescribeGroupMembership]
readsPrec :: Int -> ReadS DescribeGroupMembership
$creadsPrec :: Int -> ReadS DescribeGroupMembership
Prelude.Read, Int -> DescribeGroupMembership -> ShowS
[DescribeGroupMembership] -> ShowS
DescribeGroupMembership -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeGroupMembership] -> ShowS
$cshowList :: [DescribeGroupMembership] -> ShowS
show :: DescribeGroupMembership -> String
$cshow :: DescribeGroupMembership -> String
showsPrec :: Int -> DescribeGroupMembership -> ShowS
$cshowsPrec :: Int -> DescribeGroupMembership -> ShowS
Prelude.Show, forall x. Rep DescribeGroupMembership x -> DescribeGroupMembership
forall x. DescribeGroupMembership -> Rep DescribeGroupMembership x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DescribeGroupMembership x -> DescribeGroupMembership
$cfrom :: forall x. DescribeGroupMembership -> Rep DescribeGroupMembership x
Prelude.Generic)
newDescribeGroupMembership ::
Prelude.Text ->
Prelude.Text ->
Prelude.Text ->
Prelude.Text ->
DescribeGroupMembership
newDescribeGroupMembership :: Text -> Text -> Text -> Text -> DescribeGroupMembership
newDescribeGroupMembership
Text
pMemberName_
Text
pGroupName_
Text
pAwsAccountId_
Text
pNamespace_ =
DescribeGroupMembership'
{ $sel:memberName:DescribeGroupMembership' :: Text
memberName = Text
pMemberName_,
$sel:groupName:DescribeGroupMembership' :: Text
groupName = Text
pGroupName_,
$sel:awsAccountId:DescribeGroupMembership' :: Text
awsAccountId = Text
pAwsAccountId_,
$sel:namespace:DescribeGroupMembership' :: Text
namespace = Text
pNamespace_
}
describeGroupMembership_memberName :: Lens.Lens' DescribeGroupMembership Prelude.Text
describeGroupMembership_memberName :: Lens' DescribeGroupMembership Text
describeGroupMembership_memberName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeGroupMembership' {Text
memberName :: Text
$sel:memberName:DescribeGroupMembership' :: DescribeGroupMembership -> Text
memberName} -> Text
memberName) (\s :: DescribeGroupMembership
s@DescribeGroupMembership' {} Text
a -> DescribeGroupMembership
s {$sel:memberName:DescribeGroupMembership' :: Text
memberName = Text
a} :: DescribeGroupMembership)
describeGroupMembership_groupName :: Lens.Lens' DescribeGroupMembership Prelude.Text
describeGroupMembership_groupName :: Lens' DescribeGroupMembership Text
describeGroupMembership_groupName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeGroupMembership' {Text
groupName :: Text
$sel:groupName:DescribeGroupMembership' :: DescribeGroupMembership -> Text
groupName} -> Text
groupName) (\s :: DescribeGroupMembership
s@DescribeGroupMembership' {} Text
a -> DescribeGroupMembership
s {$sel:groupName:DescribeGroupMembership' :: Text
groupName = Text
a} :: DescribeGroupMembership)
describeGroupMembership_awsAccountId :: Lens.Lens' DescribeGroupMembership Prelude.Text
describeGroupMembership_awsAccountId :: Lens' DescribeGroupMembership Text
describeGroupMembership_awsAccountId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeGroupMembership' {Text
awsAccountId :: Text
$sel:awsAccountId:DescribeGroupMembership' :: DescribeGroupMembership -> Text
awsAccountId} -> Text
awsAccountId) (\s :: DescribeGroupMembership
s@DescribeGroupMembership' {} Text
a -> DescribeGroupMembership
s {$sel:awsAccountId:DescribeGroupMembership' :: Text
awsAccountId = Text
a} :: DescribeGroupMembership)
describeGroupMembership_namespace :: Lens.Lens' DescribeGroupMembership Prelude.Text
describeGroupMembership_namespace :: Lens' DescribeGroupMembership Text
describeGroupMembership_namespace = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeGroupMembership' {Text
namespace :: Text
$sel:namespace:DescribeGroupMembership' :: DescribeGroupMembership -> Text
namespace} -> Text
namespace) (\s :: DescribeGroupMembership
s@DescribeGroupMembership' {} Text
a -> DescribeGroupMembership
s {$sel:namespace:DescribeGroupMembership' :: Text
namespace = Text
a} :: DescribeGroupMembership)
instance Core.AWSRequest DescribeGroupMembership where
type
AWSResponse DescribeGroupMembership =
DescribeGroupMembershipResponse
request :: (Service -> Service)
-> DescribeGroupMembership -> Request DescribeGroupMembership
request Service -> Service
overrides =
forall a. ToRequest a => Service -> a -> Request a
Request.get (Service -> Service
overrides Service
defaultService)
response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy DescribeGroupMembership
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse DescribeGroupMembership)))
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 GroupMember
-> Maybe Text -> Int -> DescribeGroupMembershipResponse
DescribeGroupMembershipResponse'
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
"GroupMember")
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
"RequestId")
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 DescribeGroupMembership where
hashWithSalt :: Int -> DescribeGroupMembership -> Int
hashWithSalt Int
_salt DescribeGroupMembership' {Text
namespace :: Text
awsAccountId :: Text
groupName :: Text
memberName :: Text
$sel:namespace:DescribeGroupMembership' :: DescribeGroupMembership -> Text
$sel:awsAccountId:DescribeGroupMembership' :: DescribeGroupMembership -> Text
$sel:groupName:DescribeGroupMembership' :: DescribeGroupMembership -> Text
$sel:memberName:DescribeGroupMembership' :: DescribeGroupMembership -> Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
memberName
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
groupName
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
awsAccountId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
namespace
instance Prelude.NFData DescribeGroupMembership where
rnf :: DescribeGroupMembership -> ()
rnf DescribeGroupMembership' {Text
namespace :: Text
awsAccountId :: Text
groupName :: Text
memberName :: Text
$sel:namespace:DescribeGroupMembership' :: DescribeGroupMembership -> Text
$sel:awsAccountId:DescribeGroupMembership' :: DescribeGroupMembership -> Text
$sel:groupName:DescribeGroupMembership' :: DescribeGroupMembership -> Text
$sel:memberName:DescribeGroupMembership' :: DescribeGroupMembership -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
memberName
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
groupName
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
awsAccountId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
namespace
instance Data.ToHeaders DescribeGroupMembership where
toHeaders :: DescribeGroupMembership -> 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.0" ::
Prelude.ByteString
)
]
)
instance Data.ToPath DescribeGroupMembership where
toPath :: DescribeGroupMembership -> ByteString
toPath DescribeGroupMembership' {Text
namespace :: Text
awsAccountId :: Text
groupName :: Text
memberName :: Text
$sel:namespace:DescribeGroupMembership' :: DescribeGroupMembership -> Text
$sel:awsAccountId:DescribeGroupMembership' :: DescribeGroupMembership -> Text
$sel:groupName:DescribeGroupMembership' :: DescribeGroupMembership -> Text
$sel:memberName:DescribeGroupMembership' :: DescribeGroupMembership -> Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"/accounts/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
awsAccountId,
ByteString
"/namespaces/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
namespace,
ByteString
"/groups/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
groupName,
ByteString
"/members/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
memberName
]
instance Data.ToQuery DescribeGroupMembership where
toQuery :: DescribeGroupMembership -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data DescribeGroupMembershipResponse = DescribeGroupMembershipResponse'
{ DescribeGroupMembershipResponse -> Maybe GroupMember
groupMember :: Prelude.Maybe GroupMember,
DescribeGroupMembershipResponse -> Maybe Text
requestId :: Prelude.Maybe Prelude.Text,
DescribeGroupMembershipResponse -> Int
status :: Prelude.Int
}
deriving (DescribeGroupMembershipResponse
-> DescribeGroupMembershipResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeGroupMembershipResponse
-> DescribeGroupMembershipResponse -> Bool
$c/= :: DescribeGroupMembershipResponse
-> DescribeGroupMembershipResponse -> Bool
== :: DescribeGroupMembershipResponse
-> DescribeGroupMembershipResponse -> Bool
$c== :: DescribeGroupMembershipResponse
-> DescribeGroupMembershipResponse -> Bool
Prelude.Eq, ReadPrec [DescribeGroupMembershipResponse]
ReadPrec DescribeGroupMembershipResponse
Int -> ReadS DescribeGroupMembershipResponse
ReadS [DescribeGroupMembershipResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeGroupMembershipResponse]
$creadListPrec :: ReadPrec [DescribeGroupMembershipResponse]
readPrec :: ReadPrec DescribeGroupMembershipResponse
$creadPrec :: ReadPrec DescribeGroupMembershipResponse
readList :: ReadS [DescribeGroupMembershipResponse]
$creadList :: ReadS [DescribeGroupMembershipResponse]
readsPrec :: Int -> ReadS DescribeGroupMembershipResponse
$creadsPrec :: Int -> ReadS DescribeGroupMembershipResponse
Prelude.Read, Int -> DescribeGroupMembershipResponse -> ShowS
[DescribeGroupMembershipResponse] -> ShowS
DescribeGroupMembershipResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeGroupMembershipResponse] -> ShowS
$cshowList :: [DescribeGroupMembershipResponse] -> ShowS
show :: DescribeGroupMembershipResponse -> String
$cshow :: DescribeGroupMembershipResponse -> String
showsPrec :: Int -> DescribeGroupMembershipResponse -> ShowS
$cshowsPrec :: Int -> DescribeGroupMembershipResponse -> ShowS
Prelude.Show, forall x.
Rep DescribeGroupMembershipResponse x
-> DescribeGroupMembershipResponse
forall x.
DescribeGroupMembershipResponse
-> Rep DescribeGroupMembershipResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DescribeGroupMembershipResponse x
-> DescribeGroupMembershipResponse
$cfrom :: forall x.
DescribeGroupMembershipResponse
-> Rep DescribeGroupMembershipResponse x
Prelude.Generic)
newDescribeGroupMembershipResponse ::
Prelude.Int ->
DescribeGroupMembershipResponse
newDescribeGroupMembershipResponse :: Int -> DescribeGroupMembershipResponse
newDescribeGroupMembershipResponse Int
pStatus_ =
DescribeGroupMembershipResponse'
{ $sel:groupMember:DescribeGroupMembershipResponse' :: Maybe GroupMember
groupMember =
forall a. Maybe a
Prelude.Nothing,
$sel:requestId:DescribeGroupMembershipResponse' :: Maybe Text
requestId = forall a. Maybe a
Prelude.Nothing,
$sel:status:DescribeGroupMembershipResponse' :: Int
status = Int
pStatus_
}
describeGroupMembershipResponse_groupMember :: Lens.Lens' DescribeGroupMembershipResponse (Prelude.Maybe GroupMember)
describeGroupMembershipResponse_groupMember :: Lens' DescribeGroupMembershipResponse (Maybe GroupMember)
describeGroupMembershipResponse_groupMember = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeGroupMembershipResponse' {Maybe GroupMember
groupMember :: Maybe GroupMember
$sel:groupMember:DescribeGroupMembershipResponse' :: DescribeGroupMembershipResponse -> Maybe GroupMember
groupMember} -> Maybe GroupMember
groupMember) (\s :: DescribeGroupMembershipResponse
s@DescribeGroupMembershipResponse' {} Maybe GroupMember
a -> DescribeGroupMembershipResponse
s {$sel:groupMember:DescribeGroupMembershipResponse' :: Maybe GroupMember
groupMember = Maybe GroupMember
a} :: DescribeGroupMembershipResponse)
describeGroupMembershipResponse_requestId :: Lens.Lens' DescribeGroupMembershipResponse (Prelude.Maybe Prelude.Text)
describeGroupMembershipResponse_requestId :: Lens' DescribeGroupMembershipResponse (Maybe Text)
describeGroupMembershipResponse_requestId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeGroupMembershipResponse' {Maybe Text
requestId :: Maybe Text
$sel:requestId:DescribeGroupMembershipResponse' :: DescribeGroupMembershipResponse -> Maybe Text
requestId} -> Maybe Text
requestId) (\s :: DescribeGroupMembershipResponse
s@DescribeGroupMembershipResponse' {} Maybe Text
a -> DescribeGroupMembershipResponse
s {$sel:requestId:DescribeGroupMembershipResponse' :: Maybe Text
requestId = Maybe Text
a} :: DescribeGroupMembershipResponse)
describeGroupMembershipResponse_status :: Lens.Lens' DescribeGroupMembershipResponse Prelude.Int
describeGroupMembershipResponse_status :: Lens' DescribeGroupMembershipResponse Int
describeGroupMembershipResponse_status = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeGroupMembershipResponse' {Int
status :: Int
$sel:status:DescribeGroupMembershipResponse' :: DescribeGroupMembershipResponse -> Int
status} -> Int
status) (\s :: DescribeGroupMembershipResponse
s@DescribeGroupMembershipResponse' {} Int
a -> DescribeGroupMembershipResponse
s {$sel:status:DescribeGroupMembershipResponse' :: Int
status = Int
a} :: DescribeGroupMembershipResponse)
instance
Prelude.NFData
DescribeGroupMembershipResponse
where
rnf :: DescribeGroupMembershipResponse -> ()
rnf DescribeGroupMembershipResponse' {Int
Maybe Text
Maybe GroupMember
status :: Int
requestId :: Maybe Text
groupMember :: Maybe GroupMember
$sel:status:DescribeGroupMembershipResponse' :: DescribeGroupMembershipResponse -> Int
$sel:requestId:DescribeGroupMembershipResponse' :: DescribeGroupMembershipResponse -> Maybe Text
$sel:groupMember:DescribeGroupMembershipResponse' :: DescribeGroupMembershipResponse -> Maybe GroupMember
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe GroupMember
groupMember
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
requestId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
status