{-# 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.CreateDefaultVpc
(
CreateDefaultVpc (..),
newCreateDefaultVpc,
createDefaultVpc_dryRun,
CreateDefaultVpcResponse (..),
newCreateDefaultVpcResponse,
createDefaultVpcResponse_vpc,
createDefaultVpcResponse_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 CreateDefaultVpc = CreateDefaultVpc'
{
CreateDefaultVpc -> Maybe Bool
dryRun :: Prelude.Maybe Prelude.Bool
}
deriving (CreateDefaultVpc -> CreateDefaultVpc -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: CreateDefaultVpc -> CreateDefaultVpc -> Bool
$c/= :: CreateDefaultVpc -> CreateDefaultVpc -> Bool
== :: CreateDefaultVpc -> CreateDefaultVpc -> Bool
$c== :: CreateDefaultVpc -> CreateDefaultVpc -> Bool
Prelude.Eq, ReadPrec [CreateDefaultVpc]
ReadPrec CreateDefaultVpc
Int -> ReadS CreateDefaultVpc
ReadS [CreateDefaultVpc]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [CreateDefaultVpc]
$creadListPrec :: ReadPrec [CreateDefaultVpc]
readPrec :: ReadPrec CreateDefaultVpc
$creadPrec :: ReadPrec CreateDefaultVpc
readList :: ReadS [CreateDefaultVpc]
$creadList :: ReadS [CreateDefaultVpc]
readsPrec :: Int -> ReadS CreateDefaultVpc
$creadsPrec :: Int -> ReadS CreateDefaultVpc
Prelude.Read, Int -> CreateDefaultVpc -> ShowS
[CreateDefaultVpc] -> ShowS
CreateDefaultVpc -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [CreateDefaultVpc] -> ShowS
$cshowList :: [CreateDefaultVpc] -> ShowS
show :: CreateDefaultVpc -> String
$cshow :: CreateDefaultVpc -> String
showsPrec :: Int -> CreateDefaultVpc -> ShowS
$cshowsPrec :: Int -> CreateDefaultVpc -> ShowS
Prelude.Show, forall x. Rep CreateDefaultVpc x -> CreateDefaultVpc
forall x. CreateDefaultVpc -> Rep CreateDefaultVpc x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep CreateDefaultVpc x -> CreateDefaultVpc
$cfrom :: forall x. CreateDefaultVpc -> Rep CreateDefaultVpc x
Prelude.Generic)
newCreateDefaultVpc ::
CreateDefaultVpc
newCreateDefaultVpc :: CreateDefaultVpc
newCreateDefaultVpc =
CreateDefaultVpc' {$sel:dryRun:CreateDefaultVpc' :: Maybe Bool
dryRun = forall a. Maybe a
Prelude.Nothing}
createDefaultVpc_dryRun :: Lens.Lens' CreateDefaultVpc (Prelude.Maybe Prelude.Bool)
createDefaultVpc_dryRun :: Lens' CreateDefaultVpc (Maybe Bool)
createDefaultVpc_dryRun = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateDefaultVpc' {Maybe Bool
dryRun :: Maybe Bool
$sel:dryRun:CreateDefaultVpc' :: CreateDefaultVpc -> Maybe Bool
dryRun} -> Maybe Bool
dryRun) (\s :: CreateDefaultVpc
s@CreateDefaultVpc' {} Maybe Bool
a -> CreateDefaultVpc
s {$sel:dryRun:CreateDefaultVpc' :: Maybe Bool
dryRun = Maybe Bool
a} :: CreateDefaultVpc)
instance Core.AWSRequest CreateDefaultVpc where
type
AWSResponse CreateDefaultVpc =
CreateDefaultVpcResponse
request :: (Service -> Service)
-> CreateDefaultVpc -> Request CreateDefaultVpc
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 CreateDefaultVpc
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse CreateDefaultVpc)))
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 Vpc -> Int -> CreateDefaultVpcResponse
CreateDefaultVpcResponse'
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
"vpc")
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 CreateDefaultVpc where
hashWithSalt :: Int -> CreateDefaultVpc -> Int
hashWithSalt Int
_salt CreateDefaultVpc' {Maybe Bool
dryRun :: Maybe Bool
$sel:dryRun:CreateDefaultVpc' :: CreateDefaultVpc -> Maybe Bool
..} =
Int
_salt forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
dryRun
instance Prelude.NFData CreateDefaultVpc where
rnf :: CreateDefaultVpc -> ()
rnf CreateDefaultVpc' {Maybe Bool
dryRun :: Maybe Bool
$sel:dryRun:CreateDefaultVpc' :: CreateDefaultVpc -> Maybe Bool
..} = forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
dryRun
instance Data.ToHeaders CreateDefaultVpc where
toHeaders :: CreateDefaultVpc -> ResponseHeaders
toHeaders = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
instance Data.ToPath CreateDefaultVpc where
toPath :: CreateDefaultVpc -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery CreateDefaultVpc where
toQuery :: CreateDefaultVpc -> QueryString
toQuery CreateDefaultVpc' {Maybe Bool
dryRun :: Maybe Bool
$sel:dryRun:CreateDefaultVpc' :: CreateDefaultVpc -> Maybe Bool
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"Action"
forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: (ByteString
"CreateDefaultVpc" :: 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
]
data CreateDefaultVpcResponse = CreateDefaultVpcResponse'
{
CreateDefaultVpcResponse -> Maybe Vpc
vpc :: Prelude.Maybe Vpc,
CreateDefaultVpcResponse -> Int
httpStatus :: Prelude.Int
}
deriving (CreateDefaultVpcResponse -> CreateDefaultVpcResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: CreateDefaultVpcResponse -> CreateDefaultVpcResponse -> Bool
$c/= :: CreateDefaultVpcResponse -> CreateDefaultVpcResponse -> Bool
== :: CreateDefaultVpcResponse -> CreateDefaultVpcResponse -> Bool
$c== :: CreateDefaultVpcResponse -> CreateDefaultVpcResponse -> Bool
Prelude.Eq, ReadPrec [CreateDefaultVpcResponse]
ReadPrec CreateDefaultVpcResponse
Int -> ReadS CreateDefaultVpcResponse
ReadS [CreateDefaultVpcResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [CreateDefaultVpcResponse]
$creadListPrec :: ReadPrec [CreateDefaultVpcResponse]
readPrec :: ReadPrec CreateDefaultVpcResponse
$creadPrec :: ReadPrec CreateDefaultVpcResponse
readList :: ReadS [CreateDefaultVpcResponse]
$creadList :: ReadS [CreateDefaultVpcResponse]
readsPrec :: Int -> ReadS CreateDefaultVpcResponse
$creadsPrec :: Int -> ReadS CreateDefaultVpcResponse
Prelude.Read, Int -> CreateDefaultVpcResponse -> ShowS
[CreateDefaultVpcResponse] -> ShowS
CreateDefaultVpcResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [CreateDefaultVpcResponse] -> ShowS
$cshowList :: [CreateDefaultVpcResponse] -> ShowS
show :: CreateDefaultVpcResponse -> String
$cshow :: CreateDefaultVpcResponse -> String
showsPrec :: Int -> CreateDefaultVpcResponse -> ShowS
$cshowsPrec :: Int -> CreateDefaultVpcResponse -> ShowS
Prelude.Show, forall x.
Rep CreateDefaultVpcResponse x -> CreateDefaultVpcResponse
forall x.
CreateDefaultVpcResponse -> Rep CreateDefaultVpcResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep CreateDefaultVpcResponse x -> CreateDefaultVpcResponse
$cfrom :: forall x.
CreateDefaultVpcResponse -> Rep CreateDefaultVpcResponse x
Prelude.Generic)
newCreateDefaultVpcResponse ::
Prelude.Int ->
CreateDefaultVpcResponse
newCreateDefaultVpcResponse :: Int -> CreateDefaultVpcResponse
newCreateDefaultVpcResponse Int
pHttpStatus_ =
CreateDefaultVpcResponse'
{ $sel:vpc:CreateDefaultVpcResponse' :: Maybe Vpc
vpc = forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:CreateDefaultVpcResponse' :: Int
httpStatus = Int
pHttpStatus_
}
createDefaultVpcResponse_vpc :: Lens.Lens' CreateDefaultVpcResponse (Prelude.Maybe Vpc)
createDefaultVpcResponse_vpc :: Lens' CreateDefaultVpcResponse (Maybe Vpc)
createDefaultVpcResponse_vpc = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateDefaultVpcResponse' {Maybe Vpc
vpc :: Maybe Vpc
$sel:vpc:CreateDefaultVpcResponse' :: CreateDefaultVpcResponse -> Maybe Vpc
vpc} -> Maybe Vpc
vpc) (\s :: CreateDefaultVpcResponse
s@CreateDefaultVpcResponse' {} Maybe Vpc
a -> CreateDefaultVpcResponse
s {$sel:vpc:CreateDefaultVpcResponse' :: Maybe Vpc
vpc = Maybe Vpc
a} :: CreateDefaultVpcResponse)
createDefaultVpcResponse_httpStatus :: Lens.Lens' CreateDefaultVpcResponse Prelude.Int
createDefaultVpcResponse_httpStatus :: Lens' CreateDefaultVpcResponse Int
createDefaultVpcResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateDefaultVpcResponse' {Int
httpStatus :: Int
$sel:httpStatus:CreateDefaultVpcResponse' :: CreateDefaultVpcResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: CreateDefaultVpcResponse
s@CreateDefaultVpcResponse' {} Int
a -> CreateDefaultVpcResponse
s {$sel:httpStatus:CreateDefaultVpcResponse' :: Int
httpStatus = Int
a} :: CreateDefaultVpcResponse)
instance Prelude.NFData CreateDefaultVpcResponse where
rnf :: CreateDefaultVpcResponse -> ()
rnf CreateDefaultVpcResponse' {Int
Maybe Vpc
httpStatus :: Int
vpc :: Maybe Vpc
$sel:httpStatus:CreateDefaultVpcResponse' :: CreateDefaultVpcResponse -> Int
$sel:vpc:CreateDefaultVpcResponse' :: CreateDefaultVpcResponse -> Maybe Vpc
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Vpc
vpc
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus