{-# 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.AppMesh.ListMeshes
(
ListMeshes (..),
newListMeshes,
listMeshes_limit,
listMeshes_nextToken,
ListMeshesResponse (..),
newListMeshesResponse,
listMeshesResponse_nextToken,
listMeshesResponse_httpStatus,
listMeshesResponse_meshes,
)
where
import Amazonka.AppMesh.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 ListMeshes = ListMeshes'
{
ListMeshes -> Maybe Natural
limit :: Prelude.Maybe Prelude.Natural,
ListMeshes -> Maybe Text
nextToken :: Prelude.Maybe Prelude.Text
}
deriving (ListMeshes -> ListMeshes -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ListMeshes -> ListMeshes -> Bool
$c/= :: ListMeshes -> ListMeshes -> Bool
== :: ListMeshes -> ListMeshes -> Bool
$c== :: ListMeshes -> ListMeshes -> Bool
Prelude.Eq, ReadPrec [ListMeshes]
ReadPrec ListMeshes
Int -> ReadS ListMeshes
ReadS [ListMeshes]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ListMeshes]
$creadListPrec :: ReadPrec [ListMeshes]
readPrec :: ReadPrec ListMeshes
$creadPrec :: ReadPrec ListMeshes
readList :: ReadS [ListMeshes]
$creadList :: ReadS [ListMeshes]
readsPrec :: Int -> ReadS ListMeshes
$creadsPrec :: Int -> ReadS ListMeshes
Prelude.Read, Int -> ListMeshes -> ShowS
[ListMeshes] -> ShowS
ListMeshes -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ListMeshes] -> ShowS
$cshowList :: [ListMeshes] -> ShowS
show :: ListMeshes -> String
$cshow :: ListMeshes -> String
showsPrec :: Int -> ListMeshes -> ShowS
$cshowsPrec :: Int -> ListMeshes -> ShowS
Prelude.Show, forall x. Rep ListMeshes x -> ListMeshes
forall x. ListMeshes -> Rep ListMeshes x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep ListMeshes x -> ListMeshes
$cfrom :: forall x. ListMeshes -> Rep ListMeshes x
Prelude.Generic)
newListMeshes ::
ListMeshes
newListMeshes :: ListMeshes
newListMeshes =
ListMeshes'
{ $sel:limit:ListMeshes' :: Maybe Natural
limit = forall a. Maybe a
Prelude.Nothing,
$sel:nextToken:ListMeshes' :: Maybe Text
nextToken = forall a. Maybe a
Prelude.Nothing
}
listMeshes_limit :: Lens.Lens' ListMeshes (Prelude.Maybe Prelude.Natural)
listMeshes_limit :: Lens' ListMeshes (Maybe Natural)
listMeshes_limit = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListMeshes' {Maybe Natural
limit :: Maybe Natural
$sel:limit:ListMeshes' :: ListMeshes -> Maybe Natural
limit} -> Maybe Natural
limit) (\s :: ListMeshes
s@ListMeshes' {} Maybe Natural
a -> ListMeshes
s {$sel:limit:ListMeshes' :: Maybe Natural
limit = Maybe Natural
a} :: ListMeshes)
listMeshes_nextToken :: Lens.Lens' ListMeshes (Prelude.Maybe Prelude.Text)
listMeshes_nextToken :: Lens' ListMeshes (Maybe Text)
listMeshes_nextToken = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListMeshes' {Maybe Text
nextToken :: Maybe Text
$sel:nextToken:ListMeshes' :: ListMeshes -> Maybe Text
nextToken} -> Maybe Text
nextToken) (\s :: ListMeshes
s@ListMeshes' {} Maybe Text
a -> ListMeshes
s {$sel:nextToken:ListMeshes' :: Maybe Text
nextToken = Maybe Text
a} :: ListMeshes)
instance Core.AWSPager ListMeshes where
page :: ListMeshes -> AWSResponse ListMeshes -> Maybe ListMeshes
page ListMeshes
rq AWSResponse ListMeshes
rs
| forall a. AWSTruncated a => a -> Bool
Core.stop
( AWSResponse ListMeshes
rs
forall s a. s -> Getting (First a) s a -> Maybe a
Lens.^? Lens' ListMeshesResponse (Maybe Text)
listMeshesResponse_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 ListMeshes
rs forall s a. s -> Getting a s a -> a
Lens.^. Lens' ListMeshesResponse [MeshRef]
listMeshesResponse_meshes) =
forall a. Maybe a
Prelude.Nothing
| Bool
Prelude.otherwise =
forall a. a -> Maybe a
Prelude.Just
forall a b. (a -> b) -> a -> b
Prelude.$ ListMeshes
rq
forall a b. a -> (a -> b) -> b
Prelude.& Lens' ListMeshes (Maybe Text)
listMeshes_nextToken
forall s t a b. ASetter s t a b -> b -> s -> t
Lens..~ AWSResponse ListMeshes
rs
forall s a. s -> Getting (First a) s a -> Maybe a
Lens.^? Lens' ListMeshesResponse (Maybe Text)
listMeshesResponse_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 ListMeshes where
type AWSResponse ListMeshes = ListMeshesResponse
request :: (Service -> Service) -> ListMeshes -> Request ListMeshes
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 ListMeshes
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse ListMeshes)))
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 -> Int -> [MeshRef] -> ListMeshesResponse
ListMeshesResponse'
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
"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))
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
"meshes" forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty)
)
instance Prelude.Hashable ListMeshes where
hashWithSalt :: Int -> ListMeshes -> Int
hashWithSalt Int
_salt ListMeshes' {Maybe Natural
Maybe Text
nextToken :: Maybe Text
limit :: Maybe Natural
$sel:nextToken:ListMeshes' :: ListMeshes -> Maybe Text
$sel:limit:ListMeshes' :: ListMeshes -> Maybe Natural
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Natural
limit
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
nextToken
instance Prelude.NFData ListMeshes where
rnf :: ListMeshes -> ()
rnf ListMeshes' {Maybe Natural
Maybe Text
nextToken :: Maybe Text
limit :: Maybe Natural
$sel:nextToken:ListMeshes' :: ListMeshes -> Maybe Text
$sel:limit:ListMeshes' :: ListMeshes -> Maybe Natural
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Natural
limit
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
nextToken
instance Data.ToHeaders ListMeshes where
toHeaders :: ListMeshes -> 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 ListMeshes where
toPath :: ListMeshes -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/v20190125/meshes"
instance Data.ToQuery ListMeshes where
toQuery :: ListMeshes -> QueryString
toQuery ListMeshes' {Maybe Natural
Maybe Text
nextToken :: Maybe Text
limit :: Maybe Natural
$sel:nextToken:ListMeshes' :: ListMeshes -> Maybe Text
$sel:limit:ListMeshes' :: ListMeshes -> Maybe Natural
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"limit" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Natural
limit,
ByteString
"nextToken" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Text
nextToken
]
data ListMeshesResponse = ListMeshesResponse'
{
ListMeshesResponse -> Maybe Text
nextToken :: Prelude.Maybe Prelude.Text,
ListMeshesResponse -> Int
httpStatus :: Prelude.Int,
ListMeshesResponse -> [MeshRef]
meshes :: [MeshRef]
}
deriving (ListMeshesResponse -> ListMeshesResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ListMeshesResponse -> ListMeshesResponse -> Bool
$c/= :: ListMeshesResponse -> ListMeshesResponse -> Bool
== :: ListMeshesResponse -> ListMeshesResponse -> Bool
$c== :: ListMeshesResponse -> ListMeshesResponse -> Bool
Prelude.Eq, ReadPrec [ListMeshesResponse]
ReadPrec ListMeshesResponse
Int -> ReadS ListMeshesResponse
ReadS [ListMeshesResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ListMeshesResponse]
$creadListPrec :: ReadPrec [ListMeshesResponse]
readPrec :: ReadPrec ListMeshesResponse
$creadPrec :: ReadPrec ListMeshesResponse
readList :: ReadS [ListMeshesResponse]
$creadList :: ReadS [ListMeshesResponse]
readsPrec :: Int -> ReadS ListMeshesResponse
$creadsPrec :: Int -> ReadS ListMeshesResponse
Prelude.Read, Int -> ListMeshesResponse -> ShowS
[ListMeshesResponse] -> ShowS
ListMeshesResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ListMeshesResponse] -> ShowS
$cshowList :: [ListMeshesResponse] -> ShowS
show :: ListMeshesResponse -> String
$cshow :: ListMeshesResponse -> String
showsPrec :: Int -> ListMeshesResponse -> ShowS
$cshowsPrec :: Int -> ListMeshesResponse -> ShowS
Prelude.Show, forall x. Rep ListMeshesResponse x -> ListMeshesResponse
forall x. ListMeshesResponse -> Rep ListMeshesResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep ListMeshesResponse x -> ListMeshesResponse
$cfrom :: forall x. ListMeshesResponse -> Rep ListMeshesResponse x
Prelude.Generic)
newListMeshesResponse ::
Prelude.Int ->
ListMeshesResponse
newListMeshesResponse :: Int -> ListMeshesResponse
newListMeshesResponse Int
pHttpStatus_ =
ListMeshesResponse'
{ $sel:nextToken:ListMeshesResponse' :: Maybe Text
nextToken = forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:ListMeshesResponse' :: Int
httpStatus = Int
pHttpStatus_,
$sel:meshes:ListMeshesResponse' :: [MeshRef]
meshes = forall a. Monoid a => a
Prelude.mempty
}
listMeshesResponse_nextToken :: Lens.Lens' ListMeshesResponse (Prelude.Maybe Prelude.Text)
listMeshesResponse_nextToken :: Lens' ListMeshesResponse (Maybe Text)
listMeshesResponse_nextToken = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListMeshesResponse' {Maybe Text
nextToken :: Maybe Text
$sel:nextToken:ListMeshesResponse' :: ListMeshesResponse -> Maybe Text
nextToken} -> Maybe Text
nextToken) (\s :: ListMeshesResponse
s@ListMeshesResponse' {} Maybe Text
a -> ListMeshesResponse
s {$sel:nextToken:ListMeshesResponse' :: Maybe Text
nextToken = Maybe Text
a} :: ListMeshesResponse)
listMeshesResponse_httpStatus :: Lens.Lens' ListMeshesResponse Prelude.Int
listMeshesResponse_httpStatus :: Lens' ListMeshesResponse Int
listMeshesResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListMeshesResponse' {Int
httpStatus :: Int
$sel:httpStatus:ListMeshesResponse' :: ListMeshesResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: ListMeshesResponse
s@ListMeshesResponse' {} Int
a -> ListMeshesResponse
s {$sel:httpStatus:ListMeshesResponse' :: Int
httpStatus = Int
a} :: ListMeshesResponse)
listMeshesResponse_meshes :: Lens.Lens' ListMeshesResponse [MeshRef]
listMeshesResponse_meshes :: Lens' ListMeshesResponse [MeshRef]
listMeshesResponse_meshes = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListMeshesResponse' {[MeshRef]
meshes :: [MeshRef]
$sel:meshes:ListMeshesResponse' :: ListMeshesResponse -> [MeshRef]
meshes} -> [MeshRef]
meshes) (\s :: ListMeshesResponse
s@ListMeshesResponse' {} [MeshRef]
a -> ListMeshesResponse
s {$sel:meshes:ListMeshesResponse' :: [MeshRef]
meshes = [MeshRef]
a} :: ListMeshesResponse) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
instance Prelude.NFData ListMeshesResponse where
rnf :: ListMeshesResponse -> ()
rnf ListMeshesResponse' {Int
[MeshRef]
Maybe Text
meshes :: [MeshRef]
httpStatus :: Int
nextToken :: Maybe Text
$sel:meshes:ListMeshesResponse' :: ListMeshesResponse -> [MeshRef]
$sel:httpStatus:ListMeshesResponse' :: ListMeshesResponse -> Int
$sel:nextToken:ListMeshesResponse' :: ListMeshesResponse -> Maybe Text
..} =
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
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf [MeshRef]
meshes