{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Amazonka.DeviceFarm.Types.VPCEConfiguration where
import qualified Amazonka.Core as Core
import qualified Amazonka.Lens as Lens
import qualified Amazonka.Prelude as Prelude
data VPCEConfiguration = VPCEConfiguration'
{
VPCEConfiguration -> Maybe Text
vpceServiceName :: Prelude.Maybe Prelude.Text,
VPCEConfiguration -> Maybe Text
arn :: Prelude.Maybe Prelude.Text,
VPCEConfiguration -> Maybe Text
vpceConfigurationName :: Prelude.Maybe Prelude.Text,
VPCEConfiguration -> Maybe Text
serviceDnsName :: Prelude.Maybe Prelude.Text,
VPCEConfiguration -> Maybe Text
vpceConfigurationDescription :: Prelude.Maybe Prelude.Text
}
deriving (VPCEConfiguration -> VPCEConfiguration -> Bool
(VPCEConfiguration -> VPCEConfiguration -> Bool)
-> (VPCEConfiguration -> VPCEConfiguration -> Bool)
-> Eq VPCEConfiguration
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: VPCEConfiguration -> VPCEConfiguration -> Bool
$c/= :: VPCEConfiguration -> VPCEConfiguration -> Bool
== :: VPCEConfiguration -> VPCEConfiguration -> Bool
$c== :: VPCEConfiguration -> VPCEConfiguration -> Bool
Prelude.Eq, ReadPrec [VPCEConfiguration]
ReadPrec VPCEConfiguration
Int -> ReadS VPCEConfiguration
ReadS [VPCEConfiguration]
(Int -> ReadS VPCEConfiguration)
-> ReadS [VPCEConfiguration]
-> ReadPrec VPCEConfiguration
-> ReadPrec [VPCEConfiguration]
-> Read VPCEConfiguration
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [VPCEConfiguration]
$creadListPrec :: ReadPrec [VPCEConfiguration]
readPrec :: ReadPrec VPCEConfiguration
$creadPrec :: ReadPrec VPCEConfiguration
readList :: ReadS [VPCEConfiguration]
$creadList :: ReadS [VPCEConfiguration]
readsPrec :: Int -> ReadS VPCEConfiguration
$creadsPrec :: Int -> ReadS VPCEConfiguration
Prelude.Read, Int -> VPCEConfiguration -> ShowS
[VPCEConfiguration] -> ShowS
VPCEConfiguration -> String
(Int -> VPCEConfiguration -> ShowS)
-> (VPCEConfiguration -> String)
-> ([VPCEConfiguration] -> ShowS)
-> Show VPCEConfiguration
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [VPCEConfiguration] -> ShowS
$cshowList :: [VPCEConfiguration] -> ShowS
show :: VPCEConfiguration -> String
$cshow :: VPCEConfiguration -> String
showsPrec :: Int -> VPCEConfiguration -> ShowS
$cshowsPrec :: Int -> VPCEConfiguration -> ShowS
Prelude.Show, (forall x. VPCEConfiguration -> Rep VPCEConfiguration x)
-> (forall x. Rep VPCEConfiguration x -> VPCEConfiguration)
-> Generic VPCEConfiguration
forall x. Rep VPCEConfiguration x -> VPCEConfiguration
forall x. VPCEConfiguration -> Rep VPCEConfiguration x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep VPCEConfiguration x -> VPCEConfiguration
$cfrom :: forall x. VPCEConfiguration -> Rep VPCEConfiguration x
Prelude.Generic)
newVPCEConfiguration ::
VPCEConfiguration
newVPCEConfiguration :: VPCEConfiguration
newVPCEConfiguration =
VPCEConfiguration' :: Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> VPCEConfiguration
VPCEConfiguration'
{ $sel:vpceServiceName:VPCEConfiguration' :: Maybe Text
vpceServiceName =
Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:arn:VPCEConfiguration' :: Maybe Text
arn = Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:vpceConfigurationName:VPCEConfiguration' :: Maybe Text
vpceConfigurationName = Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:serviceDnsName:VPCEConfiguration' :: Maybe Text
serviceDnsName = Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:vpceConfigurationDescription:VPCEConfiguration' :: Maybe Text
vpceConfigurationDescription = Maybe Text
forall a. Maybe a
Prelude.Nothing
}
vPCEConfiguration_vpceServiceName :: Lens.Lens' VPCEConfiguration (Prelude.Maybe Prelude.Text)
vPCEConfiguration_vpceServiceName :: (Maybe Text -> f (Maybe Text))
-> VPCEConfiguration -> f VPCEConfiguration
vPCEConfiguration_vpceServiceName = (VPCEConfiguration -> Maybe Text)
-> (VPCEConfiguration -> Maybe Text -> VPCEConfiguration)
-> Lens
VPCEConfiguration VPCEConfiguration (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\VPCEConfiguration' {Maybe Text
vpceServiceName :: Maybe Text
$sel:vpceServiceName:VPCEConfiguration' :: VPCEConfiguration -> Maybe Text
vpceServiceName} -> Maybe Text
vpceServiceName) (\s :: VPCEConfiguration
s@VPCEConfiguration' {} Maybe Text
a -> VPCEConfiguration
s {$sel:vpceServiceName:VPCEConfiguration' :: Maybe Text
vpceServiceName = Maybe Text
a} :: VPCEConfiguration)
vPCEConfiguration_arn :: Lens.Lens' VPCEConfiguration (Prelude.Maybe Prelude.Text)
vPCEConfiguration_arn :: (Maybe Text -> f (Maybe Text))
-> VPCEConfiguration -> f VPCEConfiguration
vPCEConfiguration_arn = (VPCEConfiguration -> Maybe Text)
-> (VPCEConfiguration -> Maybe Text -> VPCEConfiguration)
-> Lens
VPCEConfiguration VPCEConfiguration (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\VPCEConfiguration' {Maybe Text
arn :: Maybe Text
$sel:arn:VPCEConfiguration' :: VPCEConfiguration -> Maybe Text
arn} -> Maybe Text
arn) (\s :: VPCEConfiguration
s@VPCEConfiguration' {} Maybe Text
a -> VPCEConfiguration
s {$sel:arn:VPCEConfiguration' :: Maybe Text
arn = Maybe Text
a} :: VPCEConfiguration)
vPCEConfiguration_vpceConfigurationName :: Lens.Lens' VPCEConfiguration (Prelude.Maybe Prelude.Text)
vPCEConfiguration_vpceConfigurationName :: (Maybe Text -> f (Maybe Text))
-> VPCEConfiguration -> f VPCEConfiguration
vPCEConfiguration_vpceConfigurationName = (VPCEConfiguration -> Maybe Text)
-> (VPCEConfiguration -> Maybe Text -> VPCEConfiguration)
-> Lens
VPCEConfiguration VPCEConfiguration (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\VPCEConfiguration' {Maybe Text
vpceConfigurationName :: Maybe Text
$sel:vpceConfigurationName:VPCEConfiguration' :: VPCEConfiguration -> Maybe Text
vpceConfigurationName} -> Maybe Text
vpceConfigurationName) (\s :: VPCEConfiguration
s@VPCEConfiguration' {} Maybe Text
a -> VPCEConfiguration
s {$sel:vpceConfigurationName:VPCEConfiguration' :: Maybe Text
vpceConfigurationName = Maybe Text
a} :: VPCEConfiguration)
vPCEConfiguration_serviceDnsName :: Lens.Lens' VPCEConfiguration (Prelude.Maybe Prelude.Text)
vPCEConfiguration_serviceDnsName :: (Maybe Text -> f (Maybe Text))
-> VPCEConfiguration -> f VPCEConfiguration
vPCEConfiguration_serviceDnsName = (VPCEConfiguration -> Maybe Text)
-> (VPCEConfiguration -> Maybe Text -> VPCEConfiguration)
-> Lens
VPCEConfiguration VPCEConfiguration (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\VPCEConfiguration' {Maybe Text
serviceDnsName :: Maybe Text
$sel:serviceDnsName:VPCEConfiguration' :: VPCEConfiguration -> Maybe Text
serviceDnsName} -> Maybe Text
serviceDnsName) (\s :: VPCEConfiguration
s@VPCEConfiguration' {} Maybe Text
a -> VPCEConfiguration
s {$sel:serviceDnsName:VPCEConfiguration' :: Maybe Text
serviceDnsName = Maybe Text
a} :: VPCEConfiguration)
vPCEConfiguration_vpceConfigurationDescription :: Lens.Lens' VPCEConfiguration (Prelude.Maybe Prelude.Text)
vPCEConfiguration_vpceConfigurationDescription :: (Maybe Text -> f (Maybe Text))
-> VPCEConfiguration -> f VPCEConfiguration
vPCEConfiguration_vpceConfigurationDescription = (VPCEConfiguration -> Maybe Text)
-> (VPCEConfiguration -> Maybe Text -> VPCEConfiguration)
-> Lens
VPCEConfiguration VPCEConfiguration (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\VPCEConfiguration' {Maybe Text
vpceConfigurationDescription :: Maybe Text
$sel:vpceConfigurationDescription:VPCEConfiguration' :: VPCEConfiguration -> Maybe Text
vpceConfigurationDescription} -> Maybe Text
vpceConfigurationDescription) (\s :: VPCEConfiguration
s@VPCEConfiguration' {} Maybe Text
a -> VPCEConfiguration
s {$sel:vpceConfigurationDescription:VPCEConfiguration' :: Maybe Text
vpceConfigurationDescription = Maybe Text
a} :: VPCEConfiguration)
instance Core.FromJSON VPCEConfiguration where
parseJSON :: Value -> Parser VPCEConfiguration
parseJSON =
String
-> (Object -> Parser VPCEConfiguration)
-> Value
-> Parser VPCEConfiguration
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Core.withObject
String
"VPCEConfiguration"
( \Object
x ->
Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> VPCEConfiguration
VPCEConfiguration'
(Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> VPCEConfiguration)
-> Parser (Maybe Text)
-> Parser
(Maybe Text
-> Maybe Text -> Maybe Text -> Maybe Text -> VPCEConfiguration)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"vpceServiceName")
Parser
(Maybe Text
-> Maybe Text -> Maybe Text -> Maybe Text -> VPCEConfiguration)
-> Parser (Maybe Text)
-> Parser
(Maybe Text -> Maybe Text -> Maybe Text -> VPCEConfiguration)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"arn")
Parser
(Maybe Text -> Maybe Text -> Maybe Text -> VPCEConfiguration)
-> Parser (Maybe Text)
-> Parser (Maybe Text -> Maybe Text -> VPCEConfiguration)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"vpceConfigurationName")
Parser (Maybe Text -> Maybe Text -> VPCEConfiguration)
-> Parser (Maybe Text) -> Parser (Maybe Text -> VPCEConfiguration)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"serviceDnsName")
Parser (Maybe Text -> VPCEConfiguration)
-> Parser (Maybe Text) -> Parser VPCEConfiguration
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Text)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"vpceConfigurationDescription")
)
instance Prelude.Hashable VPCEConfiguration
instance Prelude.NFData VPCEConfiguration