{-# 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.ChimeSDKMessaging.ListSubChannels
(
ListSubChannels (..),
newListSubChannels,
listSubChannels_maxResults,
listSubChannels_nextToken,
listSubChannels_channelArn,
listSubChannels_chimeBearer,
ListSubChannelsResponse (..),
newListSubChannelsResponse,
listSubChannelsResponse_channelArn,
listSubChannelsResponse_nextToken,
listSubChannelsResponse_subChannels,
listSubChannelsResponse_httpStatus,
)
where
import Amazonka.ChimeSDKMessaging.Types
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 qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data ListSubChannels = ListSubChannels'
{
ListSubChannels -> Maybe Natural
maxResults :: Prelude.Maybe Prelude.Natural,
ListSubChannels -> Maybe (Sensitive Text)
nextToken :: Prelude.Maybe (Data.Sensitive Prelude.Text),
ListSubChannels -> Text
channelArn :: Prelude.Text,
ListSubChannels -> Text
chimeBearer :: Prelude.Text
}
deriving (ListSubChannels -> ListSubChannels -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ListSubChannels -> ListSubChannels -> Bool
$c/= :: ListSubChannels -> ListSubChannels -> Bool
== :: ListSubChannels -> ListSubChannels -> Bool
$c== :: ListSubChannels -> ListSubChannels -> Bool
Prelude.Eq, Int -> ListSubChannels -> ShowS
[ListSubChannels] -> ShowS
ListSubChannels -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ListSubChannels] -> ShowS
$cshowList :: [ListSubChannels] -> ShowS
show :: ListSubChannels -> String
$cshow :: ListSubChannels -> String
showsPrec :: Int -> ListSubChannels -> ShowS
$cshowsPrec :: Int -> ListSubChannels -> ShowS
Prelude.Show, forall x. Rep ListSubChannels x -> ListSubChannels
forall x. ListSubChannels -> Rep ListSubChannels x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep ListSubChannels x -> ListSubChannels
$cfrom :: forall x. ListSubChannels -> Rep ListSubChannels x
Prelude.Generic)
newListSubChannels ::
Prelude.Text ->
Prelude.Text ->
ListSubChannels
newListSubChannels :: Text -> Text -> ListSubChannels
newListSubChannels Text
pChannelArn_ Text
pChimeBearer_ =
ListSubChannels'
{ $sel:maxResults:ListSubChannels' :: Maybe Natural
maxResults = forall a. Maybe a
Prelude.Nothing,
$sel:nextToken:ListSubChannels' :: Maybe (Sensitive Text)
nextToken = forall a. Maybe a
Prelude.Nothing,
$sel:channelArn:ListSubChannels' :: Text
channelArn = Text
pChannelArn_,
$sel:chimeBearer:ListSubChannels' :: Text
chimeBearer = Text
pChimeBearer_
}
listSubChannels_maxResults :: Lens.Lens' ListSubChannels (Prelude.Maybe Prelude.Natural)
listSubChannels_maxResults :: Lens' ListSubChannels (Maybe Natural)
listSubChannels_maxResults = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListSubChannels' {Maybe Natural
maxResults :: Maybe Natural
$sel:maxResults:ListSubChannels' :: ListSubChannels -> Maybe Natural
maxResults} -> Maybe Natural
maxResults) (\s :: ListSubChannels
s@ListSubChannels' {} Maybe Natural
a -> ListSubChannels
s {$sel:maxResults:ListSubChannels' :: Maybe Natural
maxResults = Maybe Natural
a} :: ListSubChannels)
listSubChannels_nextToken :: Lens.Lens' ListSubChannels (Prelude.Maybe Prelude.Text)
listSubChannels_nextToken :: Lens' ListSubChannels (Maybe Text)
listSubChannels_nextToken = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListSubChannels' {Maybe (Sensitive Text)
nextToken :: Maybe (Sensitive Text)
$sel:nextToken:ListSubChannels' :: ListSubChannels -> Maybe (Sensitive Text)
nextToken} -> Maybe (Sensitive Text)
nextToken) (\s :: ListSubChannels
s@ListSubChannels' {} Maybe (Sensitive Text)
a -> ListSubChannels
s {$sel:nextToken:ListSubChannels' :: Maybe (Sensitive Text)
nextToken = Maybe (Sensitive Text)
a} :: ListSubChannels) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall a. Iso' (Sensitive a) a
Data._Sensitive
listSubChannels_channelArn :: Lens.Lens' ListSubChannels Prelude.Text
listSubChannels_channelArn :: Lens' ListSubChannels Text
listSubChannels_channelArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListSubChannels' {Text
channelArn :: Text
$sel:channelArn:ListSubChannels' :: ListSubChannels -> Text
channelArn} -> Text
channelArn) (\s :: ListSubChannels
s@ListSubChannels' {} Text
a -> ListSubChannels
s {$sel:channelArn:ListSubChannels' :: Text
channelArn = Text
a} :: ListSubChannels)
listSubChannels_chimeBearer :: Lens.Lens' ListSubChannels Prelude.Text
listSubChannels_chimeBearer :: Lens' ListSubChannels Text
listSubChannels_chimeBearer = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListSubChannels' {Text
chimeBearer :: Text
$sel:chimeBearer:ListSubChannels' :: ListSubChannels -> Text
chimeBearer} -> Text
chimeBearer) (\s :: ListSubChannels
s@ListSubChannels' {} Text
a -> ListSubChannels
s {$sel:chimeBearer:ListSubChannels' :: Text
chimeBearer = Text
a} :: ListSubChannels)
instance Core.AWSRequest ListSubChannels where
type
AWSResponse ListSubChannels =
ListSubChannelsResponse
request :: (Service -> Service) -> ListSubChannels -> Request ListSubChannels
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 ListSubChannels
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse ListSubChannels)))
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 Text
-> Maybe (Sensitive Text)
-> Maybe [SubChannelSummary]
-> Int
-> ListSubChannelsResponse
ListSubChannelsResponse'
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
"ChannelArn")
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
"NextToken")
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
"SubChannels" forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty)
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 ListSubChannels where
hashWithSalt :: Int -> ListSubChannels -> Int
hashWithSalt Int
_salt ListSubChannels' {Maybe Natural
Maybe (Sensitive Text)
Text
chimeBearer :: Text
channelArn :: Text
nextToken :: Maybe (Sensitive Text)
maxResults :: Maybe Natural
$sel:chimeBearer:ListSubChannels' :: ListSubChannels -> Text
$sel:channelArn:ListSubChannels' :: ListSubChannels -> Text
$sel:nextToken:ListSubChannels' :: ListSubChannels -> Maybe (Sensitive Text)
$sel:maxResults:ListSubChannels' :: ListSubChannels -> Maybe Natural
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Natural
maxResults
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe (Sensitive Text)
nextToken
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
channelArn
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
chimeBearer
instance Prelude.NFData ListSubChannels where
rnf :: ListSubChannels -> ()
rnf ListSubChannels' {Maybe Natural
Maybe (Sensitive Text)
Text
chimeBearer :: Text
channelArn :: Text
nextToken :: Maybe (Sensitive Text)
maxResults :: Maybe Natural
$sel:chimeBearer:ListSubChannels' :: ListSubChannels -> Text
$sel:channelArn:ListSubChannels' :: ListSubChannels -> Text
$sel:nextToken:ListSubChannels' :: ListSubChannels -> Maybe (Sensitive Text)
$sel:maxResults:ListSubChannels' :: ListSubChannels -> Maybe Natural
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Natural
maxResults
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe (Sensitive Text)
nextToken
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
channelArn
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
chimeBearer
instance Data.ToHeaders ListSubChannels where
toHeaders :: ListSubChannels -> ResponseHeaders
toHeaders ListSubChannels' {Maybe Natural
Maybe (Sensitive Text)
Text
chimeBearer :: Text
channelArn :: Text
nextToken :: Maybe (Sensitive Text)
maxResults :: Maybe Natural
$sel:chimeBearer:ListSubChannels' :: ListSubChannels -> Text
$sel:channelArn:ListSubChannels' :: ListSubChannels -> Text
$sel:nextToken:ListSubChannels' :: ListSubChannels -> Maybe (Sensitive Text)
$sel:maxResults:ListSubChannels' :: ListSubChannels -> Maybe Natural
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[HeaderName
"x-amz-chime-bearer" forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# Text
chimeBearer]
instance Data.ToPath ListSubChannels where
toPath :: ListSubChannels -> ByteString
toPath ListSubChannels' {Maybe Natural
Maybe (Sensitive Text)
Text
chimeBearer :: Text
channelArn :: Text
nextToken :: Maybe (Sensitive Text)
maxResults :: Maybe Natural
$sel:chimeBearer:ListSubChannels' :: ListSubChannels -> Text
$sel:channelArn:ListSubChannels' :: ListSubChannels -> Text
$sel:nextToken:ListSubChannels' :: ListSubChannels -> Maybe (Sensitive Text)
$sel:maxResults:ListSubChannels' :: ListSubChannels -> Maybe Natural
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ByteString
"/channels/", forall a. ToByteString a => a -> ByteString
Data.toBS Text
channelArn, ByteString
"/subchannels"]
instance Data.ToQuery ListSubChannels where
toQuery :: ListSubChannels -> QueryString
toQuery ListSubChannels' {Maybe Natural
Maybe (Sensitive Text)
Text
chimeBearer :: Text
channelArn :: Text
nextToken :: Maybe (Sensitive Text)
maxResults :: Maybe Natural
$sel:chimeBearer:ListSubChannels' :: ListSubChannels -> Text
$sel:channelArn:ListSubChannels' :: ListSubChannels -> Text
$sel:nextToken:ListSubChannels' :: ListSubChannels -> Maybe (Sensitive Text)
$sel:maxResults:ListSubChannels' :: ListSubChannels -> Maybe Natural
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"max-results" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Natural
maxResults,
ByteString
"next-token" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe (Sensitive Text)
nextToken
]
data ListSubChannelsResponse = ListSubChannelsResponse'
{
ListSubChannelsResponse -> Maybe Text
channelArn :: Prelude.Maybe Prelude.Text,
ListSubChannelsResponse -> Maybe (Sensitive Text)
nextToken :: Prelude.Maybe (Data.Sensitive Prelude.Text),
ListSubChannelsResponse -> Maybe [SubChannelSummary]
subChannels :: Prelude.Maybe [SubChannelSummary],
ListSubChannelsResponse -> Int
httpStatus :: Prelude.Int
}
deriving (ListSubChannelsResponse -> ListSubChannelsResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ListSubChannelsResponse -> ListSubChannelsResponse -> Bool
$c/= :: ListSubChannelsResponse -> ListSubChannelsResponse -> Bool
== :: ListSubChannelsResponse -> ListSubChannelsResponse -> Bool
$c== :: ListSubChannelsResponse -> ListSubChannelsResponse -> Bool
Prelude.Eq, Int -> ListSubChannelsResponse -> ShowS
[ListSubChannelsResponse] -> ShowS
ListSubChannelsResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ListSubChannelsResponse] -> ShowS
$cshowList :: [ListSubChannelsResponse] -> ShowS
show :: ListSubChannelsResponse -> String
$cshow :: ListSubChannelsResponse -> String
showsPrec :: Int -> ListSubChannelsResponse -> ShowS
$cshowsPrec :: Int -> ListSubChannelsResponse -> ShowS
Prelude.Show, forall x. Rep ListSubChannelsResponse x -> ListSubChannelsResponse
forall x. ListSubChannelsResponse -> Rep ListSubChannelsResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep ListSubChannelsResponse x -> ListSubChannelsResponse
$cfrom :: forall x. ListSubChannelsResponse -> Rep ListSubChannelsResponse x
Prelude.Generic)
newListSubChannelsResponse ::
Prelude.Int ->
ListSubChannelsResponse
newListSubChannelsResponse :: Int -> ListSubChannelsResponse
newListSubChannelsResponse Int
pHttpStatus_ =
ListSubChannelsResponse'
{ $sel:channelArn:ListSubChannelsResponse' :: Maybe Text
channelArn =
forall a. Maybe a
Prelude.Nothing,
$sel:nextToken:ListSubChannelsResponse' :: Maybe (Sensitive Text)
nextToken = forall a. Maybe a
Prelude.Nothing,
$sel:subChannels:ListSubChannelsResponse' :: Maybe [SubChannelSummary]
subChannels = forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:ListSubChannelsResponse' :: Int
httpStatus = Int
pHttpStatus_
}
listSubChannelsResponse_channelArn :: Lens.Lens' ListSubChannelsResponse (Prelude.Maybe Prelude.Text)
listSubChannelsResponse_channelArn :: Lens' ListSubChannelsResponse (Maybe Text)
listSubChannelsResponse_channelArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListSubChannelsResponse' {Maybe Text
channelArn :: Maybe Text
$sel:channelArn:ListSubChannelsResponse' :: ListSubChannelsResponse -> Maybe Text
channelArn} -> Maybe Text
channelArn) (\s :: ListSubChannelsResponse
s@ListSubChannelsResponse' {} Maybe Text
a -> ListSubChannelsResponse
s {$sel:channelArn:ListSubChannelsResponse' :: Maybe Text
channelArn = Maybe Text
a} :: ListSubChannelsResponse)
listSubChannelsResponse_nextToken :: Lens.Lens' ListSubChannelsResponse (Prelude.Maybe Prelude.Text)
listSubChannelsResponse_nextToken :: Lens' ListSubChannelsResponse (Maybe Text)
listSubChannelsResponse_nextToken = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListSubChannelsResponse' {Maybe (Sensitive Text)
nextToken :: Maybe (Sensitive Text)
$sel:nextToken:ListSubChannelsResponse' :: ListSubChannelsResponse -> Maybe (Sensitive Text)
nextToken} -> Maybe (Sensitive Text)
nextToken) (\s :: ListSubChannelsResponse
s@ListSubChannelsResponse' {} Maybe (Sensitive Text)
a -> ListSubChannelsResponse
s {$sel:nextToken:ListSubChannelsResponse' :: Maybe (Sensitive Text)
nextToken = Maybe (Sensitive Text)
a} :: ListSubChannelsResponse) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall a. Iso' (Sensitive a) a
Data._Sensitive
listSubChannelsResponse_subChannels :: Lens.Lens' ListSubChannelsResponse (Prelude.Maybe [SubChannelSummary])
listSubChannelsResponse_subChannels :: Lens' ListSubChannelsResponse (Maybe [SubChannelSummary])
listSubChannelsResponse_subChannels = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListSubChannelsResponse' {Maybe [SubChannelSummary]
subChannels :: Maybe [SubChannelSummary]
$sel:subChannels:ListSubChannelsResponse' :: ListSubChannelsResponse -> Maybe [SubChannelSummary]
subChannels} -> Maybe [SubChannelSummary]
subChannels) (\s :: ListSubChannelsResponse
s@ListSubChannelsResponse' {} Maybe [SubChannelSummary]
a -> ListSubChannelsResponse
s {$sel:subChannels:ListSubChannelsResponse' :: Maybe [SubChannelSummary]
subChannels = Maybe [SubChannelSummary]
a} :: ListSubChannelsResponse) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
listSubChannelsResponse_httpStatus :: Lens.Lens' ListSubChannelsResponse Prelude.Int
listSubChannelsResponse_httpStatus :: Lens' ListSubChannelsResponse Int
listSubChannelsResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListSubChannelsResponse' {Int
httpStatus :: Int
$sel:httpStatus:ListSubChannelsResponse' :: ListSubChannelsResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: ListSubChannelsResponse
s@ListSubChannelsResponse' {} Int
a -> ListSubChannelsResponse
s {$sel:httpStatus:ListSubChannelsResponse' :: Int
httpStatus = Int
a} :: ListSubChannelsResponse)
instance Prelude.NFData ListSubChannelsResponse where
rnf :: ListSubChannelsResponse -> ()
rnf ListSubChannelsResponse' {Int
Maybe [SubChannelSummary]
Maybe Text
Maybe (Sensitive Text)
httpStatus :: Int
subChannels :: Maybe [SubChannelSummary]
nextToken :: Maybe (Sensitive Text)
channelArn :: Maybe Text
$sel:httpStatus:ListSubChannelsResponse' :: ListSubChannelsResponse -> Int
$sel:subChannels:ListSubChannelsResponse' :: ListSubChannelsResponse -> Maybe [SubChannelSummary]
$sel:nextToken:ListSubChannelsResponse' :: ListSubChannelsResponse -> Maybe (Sensitive Text)
$sel:channelArn:ListSubChannelsResponse' :: ListSubChannelsResponse -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
channelArn
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe (Sensitive Text)
nextToken
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe [SubChannelSummary]
subChannels
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus