{-# 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.EC2.DescribeByoipCidrs
(
DescribeByoipCidrs (..),
newDescribeByoipCidrs,
describeByoipCidrs_dryRun,
describeByoipCidrs_nextToken,
describeByoipCidrs_maxResults,
DescribeByoipCidrsResponse (..),
newDescribeByoipCidrsResponse,
describeByoipCidrsResponse_byoipCidrs,
describeByoipCidrsResponse_nextToken,
describeByoipCidrsResponse_httpStatus,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.EC2.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data DescribeByoipCidrs = DescribeByoipCidrs'
{
DescribeByoipCidrs -> Maybe Bool
dryRun :: Prelude.Maybe Prelude.Bool,
DescribeByoipCidrs -> Maybe Text
nextToken :: Prelude.Maybe Prelude.Text,
DescribeByoipCidrs -> Natural
maxResults :: Prelude.Natural
}
deriving (DescribeByoipCidrs -> DescribeByoipCidrs -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeByoipCidrs -> DescribeByoipCidrs -> Bool
$c/= :: DescribeByoipCidrs -> DescribeByoipCidrs -> Bool
== :: DescribeByoipCidrs -> DescribeByoipCidrs -> Bool
$c== :: DescribeByoipCidrs -> DescribeByoipCidrs -> Bool
Prelude.Eq, ReadPrec [DescribeByoipCidrs]
ReadPrec DescribeByoipCidrs
Int -> ReadS DescribeByoipCidrs
ReadS [DescribeByoipCidrs]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeByoipCidrs]
$creadListPrec :: ReadPrec [DescribeByoipCidrs]
readPrec :: ReadPrec DescribeByoipCidrs
$creadPrec :: ReadPrec DescribeByoipCidrs
readList :: ReadS [DescribeByoipCidrs]
$creadList :: ReadS [DescribeByoipCidrs]
readsPrec :: Int -> ReadS DescribeByoipCidrs
$creadsPrec :: Int -> ReadS DescribeByoipCidrs
Prelude.Read, Int -> DescribeByoipCidrs -> ShowS
[DescribeByoipCidrs] -> ShowS
DescribeByoipCidrs -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeByoipCidrs] -> ShowS
$cshowList :: [DescribeByoipCidrs] -> ShowS
show :: DescribeByoipCidrs -> String
$cshow :: DescribeByoipCidrs -> String
showsPrec :: Int -> DescribeByoipCidrs -> ShowS
$cshowsPrec :: Int -> DescribeByoipCidrs -> ShowS
Prelude.Show, forall x. Rep DescribeByoipCidrs x -> DescribeByoipCidrs
forall x. DescribeByoipCidrs -> Rep DescribeByoipCidrs x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DescribeByoipCidrs x -> DescribeByoipCidrs
$cfrom :: forall x. DescribeByoipCidrs -> Rep DescribeByoipCidrs x
Prelude.Generic)
newDescribeByoipCidrs ::
Prelude.Natural ->
DescribeByoipCidrs
newDescribeByoipCidrs :: Natural -> DescribeByoipCidrs
newDescribeByoipCidrs Natural
pMaxResults_ =
DescribeByoipCidrs'
{ $sel:dryRun:DescribeByoipCidrs' :: Maybe Bool
dryRun = forall a. Maybe a
Prelude.Nothing,
$sel:nextToken:DescribeByoipCidrs' :: Maybe Text
nextToken = forall a. Maybe a
Prelude.Nothing,
$sel:maxResults:DescribeByoipCidrs' :: Natural
maxResults = Natural
pMaxResults_
}
describeByoipCidrs_dryRun :: Lens.Lens' DescribeByoipCidrs (Prelude.Maybe Prelude.Bool)
describeByoipCidrs_dryRun :: Lens' DescribeByoipCidrs (Maybe Bool)
describeByoipCidrs_dryRun = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeByoipCidrs' {Maybe Bool
dryRun :: Maybe Bool
$sel:dryRun:DescribeByoipCidrs' :: DescribeByoipCidrs -> Maybe Bool
dryRun} -> Maybe Bool
dryRun) (\s :: DescribeByoipCidrs
s@DescribeByoipCidrs' {} Maybe Bool
a -> DescribeByoipCidrs
s {$sel:dryRun:DescribeByoipCidrs' :: Maybe Bool
dryRun = Maybe Bool
a} :: DescribeByoipCidrs)
describeByoipCidrs_nextToken :: Lens.Lens' DescribeByoipCidrs (Prelude.Maybe Prelude.Text)
describeByoipCidrs_nextToken :: Lens' DescribeByoipCidrs (Maybe Text)
describeByoipCidrs_nextToken = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeByoipCidrs' {Maybe Text
nextToken :: Maybe Text
$sel:nextToken:DescribeByoipCidrs' :: DescribeByoipCidrs -> Maybe Text
nextToken} -> Maybe Text
nextToken) (\s :: DescribeByoipCidrs
s@DescribeByoipCidrs' {} Maybe Text
a -> DescribeByoipCidrs
s {$sel:nextToken:DescribeByoipCidrs' :: Maybe Text
nextToken = Maybe Text
a} :: DescribeByoipCidrs)
describeByoipCidrs_maxResults :: Lens.Lens' DescribeByoipCidrs Prelude.Natural
describeByoipCidrs_maxResults :: Lens' DescribeByoipCidrs Natural
describeByoipCidrs_maxResults = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeByoipCidrs' {Natural
maxResults :: Natural
$sel:maxResults:DescribeByoipCidrs' :: DescribeByoipCidrs -> Natural
maxResults} -> Natural
maxResults) (\s :: DescribeByoipCidrs
s@DescribeByoipCidrs' {} Natural
a -> DescribeByoipCidrs
s {$sel:maxResults:DescribeByoipCidrs' :: Natural
maxResults = Natural
a} :: DescribeByoipCidrs)
instance Core.AWSPager DescribeByoipCidrs where
page :: DescribeByoipCidrs
-> AWSResponse DescribeByoipCidrs -> Maybe DescribeByoipCidrs
page DescribeByoipCidrs
rq AWSResponse DescribeByoipCidrs
rs
| forall a. AWSTruncated a => a -> Bool
Core.stop
( AWSResponse DescribeByoipCidrs
rs
forall s a. s -> Getting (First a) s a -> Maybe a
Lens.^? Lens' DescribeByoipCidrsResponse (Maybe Text)
describeByoipCidrsResponse_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 DescribeByoipCidrs
rs
forall s a. s -> Getting (First a) s a -> Maybe a
Lens.^? Lens' DescribeByoipCidrsResponse (Maybe [ByoipCidr])
describeByoipCidrsResponse_byoipCidrs
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.$ DescribeByoipCidrs
rq
forall a b. a -> (a -> b) -> b
Prelude.& Lens' DescribeByoipCidrs (Maybe Text)
describeByoipCidrs_nextToken
forall s t a b. ASetter s t a b -> b -> s -> t
Lens..~ AWSResponse DescribeByoipCidrs
rs
forall s a. s -> Getting (First a) s a -> Maybe a
Lens.^? Lens' DescribeByoipCidrsResponse (Maybe Text)
describeByoipCidrsResponse_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 DescribeByoipCidrs where
type
AWSResponse DescribeByoipCidrs =
DescribeByoipCidrsResponse
request :: (Service -> Service)
-> DescribeByoipCidrs -> Request DescribeByoipCidrs
request Service -> Service
overrides =
forall a. ToRequest a => Service -> a -> Request a
Request.postQuery (Service -> Service
overrides Service
defaultService)
response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy DescribeByoipCidrs
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse DescribeByoipCidrs)))
response =
forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> [Node] -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveXML
( \Int
s ResponseHeaders
h [Node]
x ->
Maybe [ByoipCidr]
-> Maybe Text -> Int -> DescribeByoipCidrsResponse
DescribeByoipCidrsResponse'
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> ( [Node]
x
forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"byoipCidrSet"
forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
Prelude.>>= forall (f :: * -> *) a b.
Applicative f =>
([a] -> f b) -> [a] -> f (Maybe b)
Core.may (forall a. FromXML a => Text -> [Node] -> Either String [a]
Data.parseXMLList Text
"item")
)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ([Node]
x forall a. FromXML a => [Node] -> Text -> Either String (Maybe a)
Data..@? Text
"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 DescribeByoipCidrs where
hashWithSalt :: Int -> DescribeByoipCidrs -> Int
hashWithSalt Int
_salt DescribeByoipCidrs' {Natural
Maybe Bool
Maybe Text
maxResults :: Natural
nextToken :: Maybe Text
dryRun :: Maybe Bool
$sel:maxResults:DescribeByoipCidrs' :: DescribeByoipCidrs -> Natural
$sel:nextToken:DescribeByoipCidrs' :: DescribeByoipCidrs -> Maybe Text
$sel:dryRun:DescribeByoipCidrs' :: DescribeByoipCidrs -> Maybe Bool
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
dryRun
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
nextToken
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Natural
maxResults
instance Prelude.NFData DescribeByoipCidrs where
rnf :: DescribeByoipCidrs -> ()
rnf DescribeByoipCidrs' {Natural
Maybe Bool
Maybe Text
maxResults :: Natural
nextToken :: Maybe Text
dryRun :: Maybe Bool
$sel:maxResults:DescribeByoipCidrs' :: DescribeByoipCidrs -> Natural
$sel:nextToken:DescribeByoipCidrs' :: DescribeByoipCidrs -> Maybe Text
$sel:dryRun:DescribeByoipCidrs' :: DescribeByoipCidrs -> Maybe Bool
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
dryRun
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 Natural
maxResults
instance Data.ToHeaders DescribeByoipCidrs where
toHeaders :: DescribeByoipCidrs -> ResponseHeaders
toHeaders = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
instance Data.ToPath DescribeByoipCidrs where
toPath :: DescribeByoipCidrs -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery DescribeByoipCidrs where
toQuery :: DescribeByoipCidrs -> QueryString
toQuery DescribeByoipCidrs' {Natural
Maybe Bool
Maybe Text
maxResults :: Natural
nextToken :: Maybe Text
dryRun :: Maybe Bool
$sel:maxResults:DescribeByoipCidrs' :: DescribeByoipCidrs -> Natural
$sel:nextToken:DescribeByoipCidrs' :: DescribeByoipCidrs -> Maybe Text
$sel:dryRun:DescribeByoipCidrs' :: DescribeByoipCidrs -> Maybe Bool
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"Action"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: (ByteString
"DescribeByoipCidrs" :: Prelude.ByteString),
ByteString
"Version"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: (ByteString
"2016-11-15" :: Prelude.ByteString),
ByteString
"DryRun" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Bool
dryRun,
ByteString
"NextToken" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Text
nextToken,
ByteString
"MaxResults" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Natural
maxResults
]
data DescribeByoipCidrsResponse = DescribeByoipCidrsResponse'
{
DescribeByoipCidrsResponse -> Maybe [ByoipCidr]
byoipCidrs :: Prelude.Maybe [ByoipCidr],
DescribeByoipCidrsResponse -> Maybe Text
nextToken :: Prelude.Maybe Prelude.Text,
DescribeByoipCidrsResponse -> Int
httpStatus :: Prelude.Int
}
deriving (DescribeByoipCidrsResponse -> DescribeByoipCidrsResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeByoipCidrsResponse -> DescribeByoipCidrsResponse -> Bool
$c/= :: DescribeByoipCidrsResponse -> DescribeByoipCidrsResponse -> Bool
== :: DescribeByoipCidrsResponse -> DescribeByoipCidrsResponse -> Bool
$c== :: DescribeByoipCidrsResponse -> DescribeByoipCidrsResponse -> Bool
Prelude.Eq, ReadPrec [DescribeByoipCidrsResponse]
ReadPrec DescribeByoipCidrsResponse
Int -> ReadS DescribeByoipCidrsResponse
ReadS [DescribeByoipCidrsResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeByoipCidrsResponse]
$creadListPrec :: ReadPrec [DescribeByoipCidrsResponse]
readPrec :: ReadPrec DescribeByoipCidrsResponse
$creadPrec :: ReadPrec DescribeByoipCidrsResponse
readList :: ReadS [DescribeByoipCidrsResponse]
$creadList :: ReadS [DescribeByoipCidrsResponse]
readsPrec :: Int -> ReadS DescribeByoipCidrsResponse
$creadsPrec :: Int -> ReadS DescribeByoipCidrsResponse
Prelude.Read, Int -> DescribeByoipCidrsResponse -> ShowS
[DescribeByoipCidrsResponse] -> ShowS
DescribeByoipCidrsResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeByoipCidrsResponse] -> ShowS
$cshowList :: [DescribeByoipCidrsResponse] -> ShowS
show :: DescribeByoipCidrsResponse -> String
$cshow :: DescribeByoipCidrsResponse -> String
showsPrec :: Int -> DescribeByoipCidrsResponse -> ShowS
$cshowsPrec :: Int -> DescribeByoipCidrsResponse -> ShowS
Prelude.Show, forall x.
Rep DescribeByoipCidrsResponse x -> DescribeByoipCidrsResponse
forall x.
DescribeByoipCidrsResponse -> Rep DescribeByoipCidrsResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DescribeByoipCidrsResponse x -> DescribeByoipCidrsResponse
$cfrom :: forall x.
DescribeByoipCidrsResponse -> Rep DescribeByoipCidrsResponse x
Prelude.Generic)
newDescribeByoipCidrsResponse ::
Prelude.Int ->
DescribeByoipCidrsResponse
newDescribeByoipCidrsResponse :: Int -> DescribeByoipCidrsResponse
newDescribeByoipCidrsResponse Int
pHttpStatus_ =
DescribeByoipCidrsResponse'
{ $sel:byoipCidrs:DescribeByoipCidrsResponse' :: Maybe [ByoipCidr]
byoipCidrs =
forall a. Maybe a
Prelude.Nothing,
$sel:nextToken:DescribeByoipCidrsResponse' :: Maybe Text
nextToken = forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:DescribeByoipCidrsResponse' :: Int
httpStatus = Int
pHttpStatus_
}
describeByoipCidrsResponse_byoipCidrs :: Lens.Lens' DescribeByoipCidrsResponse (Prelude.Maybe [ByoipCidr])
describeByoipCidrsResponse_byoipCidrs :: Lens' DescribeByoipCidrsResponse (Maybe [ByoipCidr])
describeByoipCidrsResponse_byoipCidrs = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeByoipCidrsResponse' {Maybe [ByoipCidr]
byoipCidrs :: Maybe [ByoipCidr]
$sel:byoipCidrs:DescribeByoipCidrsResponse' :: DescribeByoipCidrsResponse -> Maybe [ByoipCidr]
byoipCidrs} -> Maybe [ByoipCidr]
byoipCidrs) (\s :: DescribeByoipCidrsResponse
s@DescribeByoipCidrsResponse' {} Maybe [ByoipCidr]
a -> DescribeByoipCidrsResponse
s {$sel:byoipCidrs:DescribeByoipCidrsResponse' :: Maybe [ByoipCidr]
byoipCidrs = Maybe [ByoipCidr]
a} :: DescribeByoipCidrsResponse) 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
describeByoipCidrsResponse_nextToken :: Lens.Lens' DescribeByoipCidrsResponse (Prelude.Maybe Prelude.Text)
describeByoipCidrsResponse_nextToken :: Lens' DescribeByoipCidrsResponse (Maybe Text)
describeByoipCidrsResponse_nextToken = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeByoipCidrsResponse' {Maybe Text
nextToken :: Maybe Text
$sel:nextToken:DescribeByoipCidrsResponse' :: DescribeByoipCidrsResponse -> Maybe Text
nextToken} -> Maybe Text
nextToken) (\s :: DescribeByoipCidrsResponse
s@DescribeByoipCidrsResponse' {} Maybe Text
a -> DescribeByoipCidrsResponse
s {$sel:nextToken:DescribeByoipCidrsResponse' :: Maybe Text
nextToken = Maybe Text
a} :: DescribeByoipCidrsResponse)
describeByoipCidrsResponse_httpStatus :: Lens.Lens' DescribeByoipCidrsResponse Prelude.Int
describeByoipCidrsResponse_httpStatus :: Lens' DescribeByoipCidrsResponse Int
describeByoipCidrsResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeByoipCidrsResponse' {Int
httpStatus :: Int
$sel:httpStatus:DescribeByoipCidrsResponse' :: DescribeByoipCidrsResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: DescribeByoipCidrsResponse
s@DescribeByoipCidrsResponse' {} Int
a -> DescribeByoipCidrsResponse
s {$sel:httpStatus:DescribeByoipCidrsResponse' :: Int
httpStatus = Int
a} :: DescribeByoipCidrsResponse)
instance Prelude.NFData DescribeByoipCidrsResponse where
rnf :: DescribeByoipCidrsResponse -> ()
rnf DescribeByoipCidrsResponse' {Int
Maybe [ByoipCidr]
Maybe Text
httpStatus :: Int
nextToken :: Maybe Text
byoipCidrs :: Maybe [ByoipCidr]
$sel:httpStatus:DescribeByoipCidrsResponse' :: DescribeByoipCidrsResponse -> Int
$sel:nextToken:DescribeByoipCidrsResponse' :: DescribeByoipCidrsResponse -> Maybe Text
$sel:byoipCidrs:DescribeByoipCidrsResponse' :: DescribeByoipCidrsResponse -> Maybe [ByoipCidr]
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe [ByoipCidr]
byoipCidrs
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