{-# 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.Greengrass.ListDeployments
(
ListDeployments (..),
newListDeployments,
listDeployments_maxResults,
listDeployments_nextToken,
listDeployments_groupId,
ListDeploymentsResponse (..),
newListDeploymentsResponse,
listDeploymentsResponse_deployments,
listDeploymentsResponse_nextToken,
listDeploymentsResponse_httpStatus,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.Greengrass.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data ListDeployments = ListDeployments'
{
ListDeployments -> Maybe Text
maxResults :: Prelude.Maybe Prelude.Text,
ListDeployments -> Maybe Text
nextToken :: Prelude.Maybe Prelude.Text,
ListDeployments -> Text
groupId :: Prelude.Text
}
deriving (ListDeployments -> ListDeployments -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ListDeployments -> ListDeployments -> Bool
$c/= :: ListDeployments -> ListDeployments -> Bool
== :: ListDeployments -> ListDeployments -> Bool
$c== :: ListDeployments -> ListDeployments -> Bool
Prelude.Eq, ReadPrec [ListDeployments]
ReadPrec ListDeployments
Int -> ReadS ListDeployments
ReadS [ListDeployments]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ListDeployments]
$creadListPrec :: ReadPrec [ListDeployments]
readPrec :: ReadPrec ListDeployments
$creadPrec :: ReadPrec ListDeployments
readList :: ReadS [ListDeployments]
$creadList :: ReadS [ListDeployments]
readsPrec :: Int -> ReadS ListDeployments
$creadsPrec :: Int -> ReadS ListDeployments
Prelude.Read, Int -> ListDeployments -> ShowS
[ListDeployments] -> ShowS
ListDeployments -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ListDeployments] -> ShowS
$cshowList :: [ListDeployments] -> ShowS
show :: ListDeployments -> String
$cshow :: ListDeployments -> String
showsPrec :: Int -> ListDeployments -> ShowS
$cshowsPrec :: Int -> ListDeployments -> ShowS
Prelude.Show, forall x. Rep ListDeployments x -> ListDeployments
forall x. ListDeployments -> Rep ListDeployments x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep ListDeployments x -> ListDeployments
$cfrom :: forall x. ListDeployments -> Rep ListDeployments x
Prelude.Generic)
newListDeployments ::
Prelude.Text ->
ListDeployments
newListDeployments :: Text -> ListDeployments
newListDeployments Text
pGroupId_ =
ListDeployments'
{ $sel:maxResults:ListDeployments' :: Maybe Text
maxResults = forall a. Maybe a
Prelude.Nothing,
$sel:nextToken:ListDeployments' :: Maybe Text
nextToken = forall a. Maybe a
Prelude.Nothing,
$sel:groupId:ListDeployments' :: Text
groupId = Text
pGroupId_
}
listDeployments_maxResults :: Lens.Lens' ListDeployments (Prelude.Maybe Prelude.Text)
listDeployments_maxResults :: Lens' ListDeployments (Maybe Text)
listDeployments_maxResults = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListDeployments' {Maybe Text
maxResults :: Maybe Text
$sel:maxResults:ListDeployments' :: ListDeployments -> Maybe Text
maxResults} -> Maybe Text
maxResults) (\s :: ListDeployments
s@ListDeployments' {} Maybe Text
a -> ListDeployments
s {$sel:maxResults:ListDeployments' :: Maybe Text
maxResults = Maybe Text
a} :: ListDeployments)
listDeployments_nextToken :: Lens.Lens' ListDeployments (Prelude.Maybe Prelude.Text)
listDeployments_nextToken :: Lens' ListDeployments (Maybe Text)
listDeployments_nextToken = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListDeployments' {Maybe Text
nextToken :: Maybe Text
$sel:nextToken:ListDeployments' :: ListDeployments -> Maybe Text
nextToken} -> Maybe Text
nextToken) (\s :: ListDeployments
s@ListDeployments' {} Maybe Text
a -> ListDeployments
s {$sel:nextToken:ListDeployments' :: Maybe Text
nextToken = Maybe Text
a} :: ListDeployments)
listDeployments_groupId :: Lens.Lens' ListDeployments Prelude.Text
listDeployments_groupId :: Lens' ListDeployments Text
listDeployments_groupId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListDeployments' {Text
groupId :: Text
$sel:groupId:ListDeployments' :: ListDeployments -> Text
groupId} -> Text
groupId) (\s :: ListDeployments
s@ListDeployments' {} Text
a -> ListDeployments
s {$sel:groupId:ListDeployments' :: Text
groupId = Text
a} :: ListDeployments)
instance Core.AWSPager ListDeployments where
page :: ListDeployments
-> AWSResponse ListDeployments -> Maybe ListDeployments
page ListDeployments
rq AWSResponse ListDeployments
rs
| forall a. AWSTruncated a => a -> Bool
Core.stop
( AWSResponse ListDeployments
rs
forall s a. s -> Getting (First a) s a -> Maybe a
Lens.^? Lens' ListDeploymentsResponse (Maybe Text)
listDeploymentsResponse_nextToken
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
) =
forall a. Maybe a
Prelude.Nothing
| forall a. AWSTruncated a => a -> Bool
Core.stop
( AWSResponse ListDeployments
rs
forall s a. s -> Getting (First a) s a -> Maybe a
Lens.^? Lens' ListDeploymentsResponse (Maybe [Deployment])
listDeploymentsResponse_deployments
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
) =
forall a. Maybe a
Prelude.Nothing
| Bool
Prelude.otherwise =
forall a. a -> Maybe a
Prelude.Just
forall a b. (a -> b) -> a -> b
Prelude.$ ListDeployments
rq
forall a b. a -> (a -> b) -> b
Prelude.& Lens' ListDeployments (Maybe Text)
listDeployments_nextToken
forall s t a b. ASetter s t a b -> b -> s -> t
Lens..~ AWSResponse ListDeployments
rs
forall s a. s -> Getting (First a) s a -> Maybe a
Lens.^? Lens' ListDeploymentsResponse (Maybe Text)
listDeploymentsResponse_nextToken
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
instance Core.AWSRequest ListDeployments where
type
AWSResponse ListDeployments =
ListDeploymentsResponse
request :: (Service -> Service) -> ListDeployments -> Request ListDeployments
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 ListDeployments
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse ListDeployments)))
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 [Deployment] -> Maybe Text -> Int -> ListDeploymentsResponse
ListDeploymentsResponse'
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
"Deployments" 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.<*> (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.<*> (forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure (forall a. Enum a => a -> Int
Prelude.fromEnum Int
s))
)
instance Prelude.Hashable ListDeployments where
hashWithSalt :: Int -> ListDeployments -> Int
hashWithSalt Int
_salt ListDeployments' {Maybe Text
Text
groupId :: Text
nextToken :: Maybe Text
maxResults :: Maybe Text
$sel:groupId:ListDeployments' :: ListDeployments -> Text
$sel:nextToken:ListDeployments' :: ListDeployments -> Maybe Text
$sel:maxResults:ListDeployments' :: ListDeployments -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
maxResults
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
nextToken
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
groupId
instance Prelude.NFData ListDeployments where
rnf :: ListDeployments -> ()
rnf ListDeployments' {Maybe Text
Text
groupId :: Text
nextToken :: Maybe Text
maxResults :: Maybe Text
$sel:groupId:ListDeployments' :: ListDeployments -> Text
$sel:nextToken:ListDeployments' :: ListDeployments -> Maybe Text
$sel:maxResults:ListDeployments' :: ListDeployments -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
maxResults
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
nextToken
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
groupId
instance Data.ToHeaders ListDeployments where
toHeaders :: ListDeployments -> 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 ListDeployments where
toPath :: ListDeployments -> ByteString
toPath ListDeployments' {Maybe Text
Text
groupId :: Text
nextToken :: Maybe Text
maxResults :: Maybe Text
$sel:groupId:ListDeployments' :: ListDeployments -> Text
$sel:nextToken:ListDeployments' :: ListDeployments -> Maybe Text
$sel:maxResults:ListDeployments' :: ListDeployments -> Maybe Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"/greengrass/groups/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
groupId,
ByteString
"/deployments"
]
instance Data.ToQuery ListDeployments where
toQuery :: ListDeployments -> QueryString
toQuery ListDeployments' {Maybe Text
Text
groupId :: Text
nextToken :: Maybe Text
maxResults :: Maybe Text
$sel:groupId:ListDeployments' :: ListDeployments -> Text
$sel:nextToken:ListDeployments' :: ListDeployments -> Maybe Text
$sel:maxResults:ListDeployments' :: ListDeployments -> Maybe Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"MaxResults" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Text
maxResults,
ByteString
"NextToken" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Text
nextToken
]
data ListDeploymentsResponse = ListDeploymentsResponse'
{
ListDeploymentsResponse -> Maybe [Deployment]
deployments :: Prelude.Maybe [Deployment],
ListDeploymentsResponse -> Maybe Text
nextToken :: Prelude.Maybe Prelude.Text,
ListDeploymentsResponse -> Int
httpStatus :: Prelude.Int
}
deriving (ListDeploymentsResponse -> ListDeploymentsResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ListDeploymentsResponse -> ListDeploymentsResponse -> Bool
$c/= :: ListDeploymentsResponse -> ListDeploymentsResponse -> Bool
== :: ListDeploymentsResponse -> ListDeploymentsResponse -> Bool
$c== :: ListDeploymentsResponse -> ListDeploymentsResponse -> Bool
Prelude.Eq, ReadPrec [ListDeploymentsResponse]
ReadPrec ListDeploymentsResponse
Int -> ReadS ListDeploymentsResponse
ReadS [ListDeploymentsResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ListDeploymentsResponse]
$creadListPrec :: ReadPrec [ListDeploymentsResponse]
readPrec :: ReadPrec ListDeploymentsResponse
$creadPrec :: ReadPrec ListDeploymentsResponse
readList :: ReadS [ListDeploymentsResponse]
$creadList :: ReadS [ListDeploymentsResponse]
readsPrec :: Int -> ReadS ListDeploymentsResponse
$creadsPrec :: Int -> ReadS ListDeploymentsResponse
Prelude.Read, Int -> ListDeploymentsResponse -> ShowS
[ListDeploymentsResponse] -> ShowS
ListDeploymentsResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ListDeploymentsResponse] -> ShowS
$cshowList :: [ListDeploymentsResponse] -> ShowS
show :: ListDeploymentsResponse -> String
$cshow :: ListDeploymentsResponse -> String
showsPrec :: Int -> ListDeploymentsResponse -> ShowS
$cshowsPrec :: Int -> ListDeploymentsResponse -> ShowS
Prelude.Show, forall x. Rep ListDeploymentsResponse x -> ListDeploymentsResponse
forall x. ListDeploymentsResponse -> Rep ListDeploymentsResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep ListDeploymentsResponse x -> ListDeploymentsResponse
$cfrom :: forall x. ListDeploymentsResponse -> Rep ListDeploymentsResponse x
Prelude.Generic)
newListDeploymentsResponse ::
Prelude.Int ->
ListDeploymentsResponse
newListDeploymentsResponse :: Int -> ListDeploymentsResponse
newListDeploymentsResponse Int
pHttpStatus_ =
ListDeploymentsResponse'
{ $sel:deployments:ListDeploymentsResponse' :: Maybe [Deployment]
deployments =
forall a. Maybe a
Prelude.Nothing,
$sel:nextToken:ListDeploymentsResponse' :: Maybe Text
nextToken = forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:ListDeploymentsResponse' :: Int
httpStatus = Int
pHttpStatus_
}
listDeploymentsResponse_deployments :: Lens.Lens' ListDeploymentsResponse (Prelude.Maybe [Deployment])
listDeploymentsResponse_deployments :: Lens' ListDeploymentsResponse (Maybe [Deployment])
listDeploymentsResponse_deployments = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListDeploymentsResponse' {Maybe [Deployment]
deployments :: Maybe [Deployment]
$sel:deployments:ListDeploymentsResponse' :: ListDeploymentsResponse -> Maybe [Deployment]
deployments} -> Maybe [Deployment]
deployments) (\s :: ListDeploymentsResponse
s@ListDeploymentsResponse' {} Maybe [Deployment]
a -> ListDeploymentsResponse
s {$sel:deployments:ListDeploymentsResponse' :: Maybe [Deployment]
deployments = Maybe [Deployment]
a} :: ListDeploymentsResponse) 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
listDeploymentsResponse_nextToken :: Lens.Lens' ListDeploymentsResponse (Prelude.Maybe Prelude.Text)
listDeploymentsResponse_nextToken :: Lens' ListDeploymentsResponse (Maybe Text)
listDeploymentsResponse_nextToken = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListDeploymentsResponse' {Maybe Text
nextToken :: Maybe Text
$sel:nextToken:ListDeploymentsResponse' :: ListDeploymentsResponse -> Maybe Text
nextToken} -> Maybe Text
nextToken) (\s :: ListDeploymentsResponse
s@ListDeploymentsResponse' {} Maybe Text
a -> ListDeploymentsResponse
s {$sel:nextToken:ListDeploymentsResponse' :: Maybe Text
nextToken = Maybe Text
a} :: ListDeploymentsResponse)
listDeploymentsResponse_httpStatus :: Lens.Lens' ListDeploymentsResponse Prelude.Int
listDeploymentsResponse_httpStatus :: Lens' ListDeploymentsResponse Int
listDeploymentsResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListDeploymentsResponse' {Int
httpStatus :: Int
$sel:httpStatus:ListDeploymentsResponse' :: ListDeploymentsResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: ListDeploymentsResponse
s@ListDeploymentsResponse' {} Int
a -> ListDeploymentsResponse
s {$sel:httpStatus:ListDeploymentsResponse' :: Int
httpStatus = Int
a} :: ListDeploymentsResponse)
instance Prelude.NFData ListDeploymentsResponse where
rnf :: ListDeploymentsResponse -> ()
rnf ListDeploymentsResponse' {Int
Maybe [Deployment]
Maybe Text
httpStatus :: Int
nextToken :: Maybe Text
deployments :: Maybe [Deployment]
$sel:httpStatus:ListDeploymentsResponse' :: ListDeploymentsResponse -> Int
$sel:nextToken:ListDeploymentsResponse' :: ListDeploymentsResponse -> Maybe Text
$sel:deployments:ListDeploymentsResponse' :: ListDeploymentsResponse -> Maybe [Deployment]
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe [Deployment]
deployments
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
nextToken
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus