{-# 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.DirectConnect.Types.Connection where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.DirectConnect.Types.ConnectionState
import Amazonka.DirectConnect.Types.HasLogicalRedundancy
import Amazonka.DirectConnect.Types.MacSecKey
import Amazonka.DirectConnect.Types.Tag
import qualified Amazonka.Prelude as Prelude
data Connection = Connection'
{
Connection -> Maybe Text
awsDevice :: Prelude.Maybe Prelude.Text,
Connection -> Maybe Text
awsDeviceV2 :: Prelude.Maybe Prelude.Text,
Connection -> Maybe Text
awsLogicalDeviceId :: Prelude.Maybe Prelude.Text,
Connection -> Maybe Text
bandwidth :: Prelude.Maybe Prelude.Text,
Connection -> Maybe Text
connectionId :: Prelude.Maybe Prelude.Text,
Connection -> Maybe Text
connectionName :: Prelude.Maybe Prelude.Text,
Connection -> Maybe ConnectionState
connectionState :: Prelude.Maybe ConnectionState,
Connection -> Maybe Text
encryptionMode :: Prelude.Maybe Prelude.Text,
Connection -> Maybe HasLogicalRedundancy
hasLogicalRedundancy :: Prelude.Maybe HasLogicalRedundancy,
Connection -> Maybe Bool
jumboFrameCapable :: Prelude.Maybe Prelude.Bool,
Connection -> Maybe Text
lagId :: Prelude.Maybe Prelude.Text,
Connection -> Maybe POSIX
loaIssueTime :: Prelude.Maybe Data.POSIX,
Connection -> Maybe Text
location :: Prelude.Maybe Prelude.Text,
Connection -> Maybe Bool
macSecCapable :: Prelude.Maybe Prelude.Bool,
Connection -> Maybe [MacSecKey]
macSecKeys :: Prelude.Maybe [MacSecKey],
Connection -> Maybe Text
ownerAccount :: Prelude.Maybe Prelude.Text,
Connection -> Maybe Text
partnerName :: Prelude.Maybe Prelude.Text,
Connection -> Maybe Text
portEncryptionStatus :: Prelude.Maybe Prelude.Text,
Connection -> Maybe Text
providerName :: Prelude.Maybe Prelude.Text,
Connection -> Maybe Text
region :: Prelude.Maybe Prelude.Text,
Connection -> Maybe (NonEmpty Tag)
tags :: Prelude.Maybe (Prelude.NonEmpty Tag),
Connection -> Maybe Int
vlan :: Prelude.Maybe Prelude.Int
}
deriving (Connection -> Connection -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: Connection -> Connection -> Bool
$c/= :: Connection -> Connection -> Bool
== :: Connection -> Connection -> Bool
$c== :: Connection -> Connection -> Bool
Prelude.Eq, ReadPrec [Connection]
ReadPrec Connection
Int -> ReadS Connection
ReadS [Connection]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [Connection]
$creadListPrec :: ReadPrec [Connection]
readPrec :: ReadPrec Connection
$creadPrec :: ReadPrec Connection
readList :: ReadS [Connection]
$creadList :: ReadS [Connection]
readsPrec :: Int -> ReadS Connection
$creadsPrec :: Int -> ReadS Connection
Prelude.Read, Int -> Connection -> ShowS
[Connection] -> ShowS
Connection -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [Connection] -> ShowS
$cshowList :: [Connection] -> ShowS
show :: Connection -> String
$cshow :: Connection -> String
showsPrec :: Int -> Connection -> ShowS
$cshowsPrec :: Int -> Connection -> ShowS
Prelude.Show, forall x. Rep Connection x -> Connection
forall x. Connection -> Rep Connection x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep Connection x -> Connection
$cfrom :: forall x. Connection -> Rep Connection x
Prelude.Generic)
newConnection ::
Connection
newConnection :: Connection
newConnection =
Connection'
{ $sel:awsDevice:Connection' :: Maybe Text
awsDevice = forall a. Maybe a
Prelude.Nothing,
$sel:awsDeviceV2:Connection' :: Maybe Text
awsDeviceV2 = forall a. Maybe a
Prelude.Nothing,
$sel:awsLogicalDeviceId:Connection' :: Maybe Text
awsLogicalDeviceId = forall a. Maybe a
Prelude.Nothing,
$sel:bandwidth:Connection' :: Maybe Text
bandwidth = forall a. Maybe a
Prelude.Nothing,
$sel:connectionId:Connection' :: Maybe Text
connectionId = forall a. Maybe a
Prelude.Nothing,
$sel:connectionName:Connection' :: Maybe Text
connectionName = forall a. Maybe a
Prelude.Nothing,
$sel:connectionState:Connection' :: Maybe ConnectionState
connectionState = forall a. Maybe a
Prelude.Nothing,
$sel:encryptionMode:Connection' :: Maybe Text
encryptionMode = forall a. Maybe a
Prelude.Nothing,
$sel:hasLogicalRedundancy:Connection' :: Maybe HasLogicalRedundancy
hasLogicalRedundancy = forall a. Maybe a
Prelude.Nothing,
$sel:jumboFrameCapable:Connection' :: Maybe Bool
jumboFrameCapable = forall a. Maybe a
Prelude.Nothing,
$sel:lagId:Connection' :: Maybe Text
lagId = forall a. Maybe a
Prelude.Nothing,
$sel:loaIssueTime:Connection' :: Maybe POSIX
loaIssueTime = forall a. Maybe a
Prelude.Nothing,
$sel:location:Connection' :: Maybe Text
location = forall a. Maybe a
Prelude.Nothing,
$sel:macSecCapable:Connection' :: Maybe Bool
macSecCapable = forall a. Maybe a
Prelude.Nothing,
$sel:macSecKeys:Connection' :: Maybe [MacSecKey]
macSecKeys = forall a. Maybe a
Prelude.Nothing,
$sel:ownerAccount:Connection' :: Maybe Text
ownerAccount = forall a. Maybe a
Prelude.Nothing,
$sel:partnerName:Connection' :: Maybe Text
partnerName = forall a. Maybe a
Prelude.Nothing,
$sel:portEncryptionStatus:Connection' :: Maybe Text
portEncryptionStatus = forall a. Maybe a
Prelude.Nothing,
$sel:providerName:Connection' :: Maybe Text
providerName = forall a. Maybe a
Prelude.Nothing,
$sel:region:Connection' :: Maybe Text
region = forall a. Maybe a
Prelude.Nothing,
$sel:tags:Connection' :: Maybe (NonEmpty Tag)
tags = forall a. Maybe a
Prelude.Nothing,
$sel:vlan:Connection' :: Maybe Int
vlan = forall a. Maybe a
Prelude.Nothing
}
connection_awsDevice :: Lens.Lens' Connection (Prelude.Maybe Prelude.Text)
connection_awsDevice :: Lens' Connection (Maybe Text)
connection_awsDevice = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Connection' {Maybe Text
awsDevice :: Maybe Text
$sel:awsDevice:Connection' :: Connection -> Maybe Text
awsDevice} -> Maybe Text
awsDevice) (\s :: Connection
s@Connection' {} Maybe Text
a -> Connection
s {$sel:awsDevice:Connection' :: Maybe Text
awsDevice = Maybe Text
a} :: Connection)
connection_awsDeviceV2 :: Lens.Lens' Connection (Prelude.Maybe Prelude.Text)
connection_awsDeviceV2 :: Lens' Connection (Maybe Text)
connection_awsDeviceV2 = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Connection' {Maybe Text
awsDeviceV2 :: Maybe Text
$sel:awsDeviceV2:Connection' :: Connection -> Maybe Text
awsDeviceV2} -> Maybe Text
awsDeviceV2) (\s :: Connection
s@Connection' {} Maybe Text
a -> Connection
s {$sel:awsDeviceV2:Connection' :: Maybe Text
awsDeviceV2 = Maybe Text
a} :: Connection)
connection_awsLogicalDeviceId :: Lens.Lens' Connection (Prelude.Maybe Prelude.Text)
connection_awsLogicalDeviceId :: Lens' Connection (Maybe Text)
connection_awsLogicalDeviceId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Connection' {Maybe Text
awsLogicalDeviceId :: Maybe Text
$sel:awsLogicalDeviceId:Connection' :: Connection -> Maybe Text
awsLogicalDeviceId} -> Maybe Text
awsLogicalDeviceId) (\s :: Connection
s@Connection' {} Maybe Text
a -> Connection
s {$sel:awsLogicalDeviceId:Connection' :: Maybe Text
awsLogicalDeviceId = Maybe Text
a} :: Connection)
connection_bandwidth :: Lens.Lens' Connection (Prelude.Maybe Prelude.Text)
connection_bandwidth :: Lens' Connection (Maybe Text)
connection_bandwidth = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Connection' {Maybe Text
bandwidth :: Maybe Text
$sel:bandwidth:Connection' :: Connection -> Maybe Text
bandwidth} -> Maybe Text
bandwidth) (\s :: Connection
s@Connection' {} Maybe Text
a -> Connection
s {$sel:bandwidth:Connection' :: Maybe Text
bandwidth = Maybe Text
a} :: Connection)
connection_connectionId :: Lens.Lens' Connection (Prelude.Maybe Prelude.Text)
connection_connectionId :: Lens' Connection (Maybe Text)
connection_connectionId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Connection' {Maybe Text
connectionId :: Maybe Text
$sel:connectionId:Connection' :: Connection -> Maybe Text
connectionId} -> Maybe Text
connectionId) (\s :: Connection
s@Connection' {} Maybe Text
a -> Connection
s {$sel:connectionId:Connection' :: Maybe Text
connectionId = Maybe Text
a} :: Connection)
connection_connectionName :: Lens.Lens' Connection (Prelude.Maybe Prelude.Text)
connection_connectionName :: Lens' Connection (Maybe Text)
connection_connectionName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Connection' {Maybe Text
connectionName :: Maybe Text
$sel:connectionName:Connection' :: Connection -> Maybe Text
connectionName} -> Maybe Text
connectionName) (\s :: Connection
s@Connection' {} Maybe Text
a -> Connection
s {$sel:connectionName:Connection' :: Maybe Text
connectionName = Maybe Text
a} :: Connection)
connection_connectionState :: Lens.Lens' Connection (Prelude.Maybe ConnectionState)
connection_connectionState :: Lens' Connection (Maybe ConnectionState)
connection_connectionState = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Connection' {Maybe ConnectionState
connectionState :: Maybe ConnectionState
$sel:connectionState:Connection' :: Connection -> Maybe ConnectionState
connectionState} -> Maybe ConnectionState
connectionState) (\s :: Connection
s@Connection' {} Maybe ConnectionState
a -> Connection
s {$sel:connectionState:Connection' :: Maybe ConnectionState
connectionState = Maybe ConnectionState
a} :: Connection)
connection_encryptionMode :: Lens.Lens' Connection (Prelude.Maybe Prelude.Text)
connection_encryptionMode :: Lens' Connection (Maybe Text)
connection_encryptionMode = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Connection' {Maybe Text
encryptionMode :: Maybe Text
$sel:encryptionMode:Connection' :: Connection -> Maybe Text
encryptionMode} -> Maybe Text
encryptionMode) (\s :: Connection
s@Connection' {} Maybe Text
a -> Connection
s {$sel:encryptionMode:Connection' :: Maybe Text
encryptionMode = Maybe Text
a} :: Connection)
connection_hasLogicalRedundancy :: Lens.Lens' Connection (Prelude.Maybe HasLogicalRedundancy)
connection_hasLogicalRedundancy :: Lens' Connection (Maybe HasLogicalRedundancy)
connection_hasLogicalRedundancy = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Connection' {Maybe HasLogicalRedundancy
hasLogicalRedundancy :: Maybe HasLogicalRedundancy
$sel:hasLogicalRedundancy:Connection' :: Connection -> Maybe HasLogicalRedundancy
hasLogicalRedundancy} -> Maybe HasLogicalRedundancy
hasLogicalRedundancy) (\s :: Connection
s@Connection' {} Maybe HasLogicalRedundancy
a -> Connection
s {$sel:hasLogicalRedundancy:Connection' :: Maybe HasLogicalRedundancy
hasLogicalRedundancy = Maybe HasLogicalRedundancy
a} :: Connection)
connection_jumboFrameCapable :: Lens.Lens' Connection (Prelude.Maybe Prelude.Bool)
connection_jumboFrameCapable :: Lens' Connection (Maybe Bool)
connection_jumboFrameCapable = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Connection' {Maybe Bool
jumboFrameCapable :: Maybe Bool
$sel:jumboFrameCapable:Connection' :: Connection -> Maybe Bool
jumboFrameCapable} -> Maybe Bool
jumboFrameCapable) (\s :: Connection
s@Connection' {} Maybe Bool
a -> Connection
s {$sel:jumboFrameCapable:Connection' :: Maybe Bool
jumboFrameCapable = Maybe Bool
a} :: Connection)
connection_lagId :: Lens.Lens' Connection (Prelude.Maybe Prelude.Text)
connection_lagId :: Lens' Connection (Maybe Text)
connection_lagId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Connection' {Maybe Text
lagId :: Maybe Text
$sel:lagId:Connection' :: Connection -> Maybe Text
lagId} -> Maybe Text
lagId) (\s :: Connection
s@Connection' {} Maybe Text
a -> Connection
s {$sel:lagId:Connection' :: Maybe Text
lagId = Maybe Text
a} :: Connection)
connection_loaIssueTime :: Lens.Lens' Connection (Prelude.Maybe Prelude.UTCTime)
connection_loaIssueTime :: Lens' Connection (Maybe UTCTime)
connection_loaIssueTime = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Connection' {Maybe POSIX
loaIssueTime :: Maybe POSIX
$sel:loaIssueTime:Connection' :: Connection -> Maybe POSIX
loaIssueTime} -> Maybe POSIX
loaIssueTime) (\s :: Connection
s@Connection' {} Maybe POSIX
a -> Connection
s {$sel:loaIssueTime:Connection' :: Maybe POSIX
loaIssueTime = Maybe POSIX
a} :: Connection) 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 (a :: Format). Iso' (Time a) UTCTime
Data._Time
connection_location :: Lens.Lens' Connection (Prelude.Maybe Prelude.Text)
connection_location :: Lens' Connection (Maybe Text)
connection_location = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Connection' {Maybe Text
location :: Maybe Text
$sel:location:Connection' :: Connection -> Maybe Text
location} -> Maybe Text
location) (\s :: Connection
s@Connection' {} Maybe Text
a -> Connection
s {$sel:location:Connection' :: Maybe Text
location = Maybe Text
a} :: Connection)
connection_macSecCapable :: Lens.Lens' Connection (Prelude.Maybe Prelude.Bool)
connection_macSecCapable :: Lens' Connection (Maybe Bool)
connection_macSecCapable = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Connection' {Maybe Bool
macSecCapable :: Maybe Bool
$sel:macSecCapable:Connection' :: Connection -> Maybe Bool
macSecCapable} -> Maybe Bool
macSecCapable) (\s :: Connection
s@Connection' {} Maybe Bool
a -> Connection
s {$sel:macSecCapable:Connection' :: Maybe Bool
macSecCapable = Maybe Bool
a} :: Connection)
connection_macSecKeys :: Lens.Lens' Connection (Prelude.Maybe [MacSecKey])
connection_macSecKeys :: Lens' Connection (Maybe [MacSecKey])
connection_macSecKeys = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Connection' {Maybe [MacSecKey]
macSecKeys :: Maybe [MacSecKey]
$sel:macSecKeys:Connection' :: Connection -> Maybe [MacSecKey]
macSecKeys} -> Maybe [MacSecKey]
macSecKeys) (\s :: Connection
s@Connection' {} Maybe [MacSecKey]
a -> Connection
s {$sel:macSecKeys:Connection' :: Maybe [MacSecKey]
macSecKeys = Maybe [MacSecKey]
a} :: Connection) 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
connection_ownerAccount :: Lens.Lens' Connection (Prelude.Maybe Prelude.Text)
connection_ownerAccount :: Lens' Connection (Maybe Text)
connection_ownerAccount = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Connection' {Maybe Text
ownerAccount :: Maybe Text
$sel:ownerAccount:Connection' :: Connection -> Maybe Text
ownerAccount} -> Maybe Text
ownerAccount) (\s :: Connection
s@Connection' {} Maybe Text
a -> Connection
s {$sel:ownerAccount:Connection' :: Maybe Text
ownerAccount = Maybe Text
a} :: Connection)
connection_partnerName :: Lens.Lens' Connection (Prelude.Maybe Prelude.Text)
connection_partnerName :: Lens' Connection (Maybe Text)
connection_partnerName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Connection' {Maybe Text
partnerName :: Maybe Text
$sel:partnerName:Connection' :: Connection -> Maybe Text
partnerName} -> Maybe Text
partnerName) (\s :: Connection
s@Connection' {} Maybe Text
a -> Connection
s {$sel:partnerName:Connection' :: Maybe Text
partnerName = Maybe Text
a} :: Connection)
connection_portEncryptionStatus :: Lens.Lens' Connection (Prelude.Maybe Prelude.Text)
connection_portEncryptionStatus :: Lens' Connection (Maybe Text)
connection_portEncryptionStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Connection' {Maybe Text
portEncryptionStatus :: Maybe Text
$sel:portEncryptionStatus:Connection' :: Connection -> Maybe Text
portEncryptionStatus} -> Maybe Text
portEncryptionStatus) (\s :: Connection
s@Connection' {} Maybe Text
a -> Connection
s {$sel:portEncryptionStatus:Connection' :: Maybe Text
portEncryptionStatus = Maybe Text
a} :: Connection)
connection_providerName :: Lens.Lens' Connection (Prelude.Maybe Prelude.Text)
connection_providerName :: Lens' Connection (Maybe Text)
connection_providerName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Connection' {Maybe Text
providerName :: Maybe Text
$sel:providerName:Connection' :: Connection -> Maybe Text
providerName} -> Maybe Text
providerName) (\s :: Connection
s@Connection' {} Maybe Text
a -> Connection
s {$sel:providerName:Connection' :: Maybe Text
providerName = Maybe Text
a} :: Connection)
connection_region :: Lens.Lens' Connection (Prelude.Maybe Prelude.Text)
connection_region :: Lens' Connection (Maybe Text)
connection_region = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Connection' {Maybe Text
region :: Maybe Text
$sel:region:Connection' :: Connection -> Maybe Text
region} -> Maybe Text
region) (\s :: Connection
s@Connection' {} Maybe Text
a -> Connection
s {$sel:region:Connection' :: Maybe Text
region = Maybe Text
a} :: Connection)
connection_tags :: Lens.Lens' Connection (Prelude.Maybe (Prelude.NonEmpty Tag))
connection_tags :: Lens' Connection (Maybe (NonEmpty Tag))
connection_tags = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Connection' {Maybe (NonEmpty Tag)
tags :: Maybe (NonEmpty Tag)
$sel:tags:Connection' :: Connection -> Maybe (NonEmpty Tag)
tags} -> Maybe (NonEmpty Tag)
tags) (\s :: Connection
s@Connection' {} Maybe (NonEmpty Tag)
a -> Connection
s {$sel:tags:Connection' :: Maybe (NonEmpty Tag)
tags = Maybe (NonEmpty Tag)
a} :: Connection) 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
connection_vlan :: Lens.Lens' Connection (Prelude.Maybe Prelude.Int)
connection_vlan :: Lens' Connection (Maybe Int)
connection_vlan = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\Connection' {Maybe Int
vlan :: Maybe Int
$sel:vlan:Connection' :: Connection -> Maybe Int
vlan} -> Maybe Int
vlan) (\s :: Connection
s@Connection' {} Maybe Int
a -> Connection
s {$sel:vlan:Connection' :: Maybe Int
vlan = Maybe Int
a} :: Connection)
instance Data.FromJSON Connection where
parseJSON :: Value -> Parser Connection
parseJSON =
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Data.withObject
String
"Connection"
( \Object
x ->
Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe ConnectionState
-> Maybe Text
-> Maybe HasLogicalRedundancy
-> Maybe Bool
-> Maybe Text
-> Maybe POSIX
-> Maybe Text
-> Maybe Bool
-> Maybe [MacSecKey]
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe Text
-> Maybe (NonEmpty Tag)
-> Maybe Int
-> Connection
Connection'
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"awsDevice")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"awsDeviceV2")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"awsLogicalDeviceId")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"bandwidth")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"connectionId")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"connectionName")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"connectionState")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"encryptionMode")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"hasLogicalRedundancy")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"jumboFrameCapable")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"lagId")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"loaIssueTime")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"location")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"macSecCapable")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"macSecKeys" forall a. Parser (Maybe a) -> a -> Parser a
Data..!= 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 -> Parser (Maybe a)
Data..:? Key
"ownerAccount")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"partnerName")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"portEncryptionStatus")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"providerName")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"region")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"tags")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Parser (Maybe a)
Data..:? Key
"vlan")
)
instance Prelude.Hashable Connection where
hashWithSalt :: Int -> Connection -> Int
hashWithSalt Int
_salt Connection' {Maybe Bool
Maybe Int
Maybe [MacSecKey]
Maybe (NonEmpty Tag)
Maybe Text
Maybe POSIX
Maybe ConnectionState
Maybe HasLogicalRedundancy
vlan :: Maybe Int
tags :: Maybe (NonEmpty Tag)
region :: Maybe Text
providerName :: Maybe Text
portEncryptionStatus :: Maybe Text
partnerName :: Maybe Text
ownerAccount :: Maybe Text
macSecKeys :: Maybe [MacSecKey]
macSecCapable :: Maybe Bool
location :: Maybe Text
loaIssueTime :: Maybe POSIX
lagId :: Maybe Text
jumboFrameCapable :: Maybe Bool
hasLogicalRedundancy :: Maybe HasLogicalRedundancy
encryptionMode :: Maybe Text
connectionState :: Maybe ConnectionState
connectionName :: Maybe Text
connectionId :: Maybe Text
bandwidth :: Maybe Text
awsLogicalDeviceId :: Maybe Text
awsDeviceV2 :: Maybe Text
awsDevice :: Maybe Text
$sel:vlan:Connection' :: Connection -> Maybe Int
$sel:tags:Connection' :: Connection -> Maybe (NonEmpty Tag)
$sel:region:Connection' :: Connection -> Maybe Text
$sel:providerName:Connection' :: Connection -> Maybe Text
$sel:portEncryptionStatus:Connection' :: Connection -> Maybe Text
$sel:partnerName:Connection' :: Connection -> Maybe Text
$sel:ownerAccount:Connection' :: Connection -> Maybe Text
$sel:macSecKeys:Connection' :: Connection -> Maybe [MacSecKey]
$sel:macSecCapable:Connection' :: Connection -> Maybe Bool
$sel:location:Connection' :: Connection -> Maybe Text
$sel:loaIssueTime:Connection' :: Connection -> Maybe POSIX
$sel:lagId:Connection' :: Connection -> Maybe Text
$sel:jumboFrameCapable:Connection' :: Connection -> Maybe Bool
$sel:hasLogicalRedundancy:Connection' :: Connection -> Maybe HasLogicalRedundancy
$sel:encryptionMode:Connection' :: Connection -> Maybe Text
$sel:connectionState:Connection' :: Connection -> Maybe ConnectionState
$sel:connectionName:Connection' :: Connection -> Maybe Text
$sel:connectionId:Connection' :: Connection -> Maybe Text
$sel:bandwidth:Connection' :: Connection -> Maybe Text
$sel:awsLogicalDeviceId:Connection' :: Connection -> Maybe Text
$sel:awsDeviceV2:Connection' :: Connection -> Maybe Text
$sel:awsDevice:Connection' :: Connection -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
awsDevice
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
awsDeviceV2
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
awsLogicalDeviceId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
bandwidth
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
connectionId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
connectionName
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe ConnectionState
connectionState
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
encryptionMode
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe HasLogicalRedundancy
hasLogicalRedundancy
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
jumboFrameCapable
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
lagId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe POSIX
loaIssueTime
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
location
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Bool
macSecCapable
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe [MacSecKey]
macSecKeys
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
ownerAccount
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
partnerName
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
portEncryptionStatus
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
providerName
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
region
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe (NonEmpty Tag)
tags
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Int
vlan
instance Prelude.NFData Connection where
rnf :: Connection -> ()
rnf Connection' {Maybe Bool
Maybe Int
Maybe [MacSecKey]
Maybe (NonEmpty Tag)
Maybe Text
Maybe POSIX
Maybe ConnectionState
Maybe HasLogicalRedundancy
vlan :: Maybe Int
tags :: Maybe (NonEmpty Tag)
region :: Maybe Text
providerName :: Maybe Text
portEncryptionStatus :: Maybe Text
partnerName :: Maybe Text
ownerAccount :: Maybe Text
macSecKeys :: Maybe [MacSecKey]
macSecCapable :: Maybe Bool
location :: Maybe Text
loaIssueTime :: Maybe POSIX
lagId :: Maybe Text
jumboFrameCapable :: Maybe Bool
hasLogicalRedundancy :: Maybe HasLogicalRedundancy
encryptionMode :: Maybe Text
connectionState :: Maybe ConnectionState
connectionName :: Maybe Text
connectionId :: Maybe Text
bandwidth :: Maybe Text
awsLogicalDeviceId :: Maybe Text
awsDeviceV2 :: Maybe Text
awsDevice :: Maybe Text
$sel:vlan:Connection' :: Connection -> Maybe Int
$sel:tags:Connection' :: Connection -> Maybe (NonEmpty Tag)
$sel:region:Connection' :: Connection -> Maybe Text
$sel:providerName:Connection' :: Connection -> Maybe Text
$sel:portEncryptionStatus:Connection' :: Connection -> Maybe Text
$sel:partnerName:Connection' :: Connection -> Maybe Text
$sel:ownerAccount:Connection' :: Connection -> Maybe Text
$sel:macSecKeys:Connection' :: Connection -> Maybe [MacSecKey]
$sel:macSecCapable:Connection' :: Connection -> Maybe Bool
$sel:location:Connection' :: Connection -> Maybe Text
$sel:loaIssueTime:Connection' :: Connection -> Maybe POSIX
$sel:lagId:Connection' :: Connection -> Maybe Text
$sel:jumboFrameCapable:Connection' :: Connection -> Maybe Bool
$sel:hasLogicalRedundancy:Connection' :: Connection -> Maybe HasLogicalRedundancy
$sel:encryptionMode:Connection' :: Connection -> Maybe Text
$sel:connectionState:Connection' :: Connection -> Maybe ConnectionState
$sel:connectionName:Connection' :: Connection -> Maybe Text
$sel:connectionId:Connection' :: Connection -> Maybe Text
$sel:bandwidth:Connection' :: Connection -> Maybe Text
$sel:awsLogicalDeviceId:Connection' :: Connection -> Maybe Text
$sel:awsDeviceV2:Connection' :: Connection -> Maybe Text
$sel:awsDevice:Connection' :: Connection -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
awsDevice
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
awsDeviceV2
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
awsLogicalDeviceId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
bandwidth
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
connectionId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
connectionName
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe ConnectionState
connectionState
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
encryptionMode
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe HasLogicalRedundancy
hasLogicalRedundancy
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
jumboFrameCapable
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
lagId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe POSIX
loaIssueTime
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
location
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
macSecCapable
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe [MacSecKey]
macSecKeys
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
ownerAccount
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
partnerName
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
portEncryptionStatus
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
providerName
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
region
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe (NonEmpty Tag)
tags
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Int
vlan