{-# 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.Transfer.Types.ListedServer where
import qualified Amazonka.Core as Core
import qualified Amazonka.Lens as Lens
import qualified Amazonka.Prelude as Prelude
import Amazonka.Transfer.Types.Domain
import Amazonka.Transfer.Types.EndpointType
import Amazonka.Transfer.Types.IdentityProviderType
import Amazonka.Transfer.Types.State
data ListedServer = ListedServer'
{
ListedServer -> Maybe Text
loggingRole :: Prelude.Maybe Prelude.Text,
ListedServer -> Maybe State
state :: Prelude.Maybe State,
ListedServer -> Maybe IdentityProviderType
identityProviderType :: Prelude.Maybe IdentityProviderType,
ListedServer -> Maybe Text
serverId :: Prelude.Maybe Prelude.Text,
ListedServer -> Maybe Domain
domain :: Prelude.Maybe Domain,
ListedServer -> Maybe EndpointType
endpointType :: Prelude.Maybe EndpointType,
ListedServer -> Maybe Int
userCount :: Prelude.Maybe Prelude.Int,
ListedServer -> Text
arn :: Prelude.Text
}
deriving (ListedServer -> ListedServer -> Bool
(ListedServer -> ListedServer -> Bool)
-> (ListedServer -> ListedServer -> Bool) -> Eq ListedServer
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ListedServer -> ListedServer -> Bool
$c/= :: ListedServer -> ListedServer -> Bool
== :: ListedServer -> ListedServer -> Bool
$c== :: ListedServer -> ListedServer -> Bool
Prelude.Eq, ReadPrec [ListedServer]
ReadPrec ListedServer
Int -> ReadS ListedServer
ReadS [ListedServer]
(Int -> ReadS ListedServer)
-> ReadS [ListedServer]
-> ReadPrec ListedServer
-> ReadPrec [ListedServer]
-> Read ListedServer
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ListedServer]
$creadListPrec :: ReadPrec [ListedServer]
readPrec :: ReadPrec ListedServer
$creadPrec :: ReadPrec ListedServer
readList :: ReadS [ListedServer]
$creadList :: ReadS [ListedServer]
readsPrec :: Int -> ReadS ListedServer
$creadsPrec :: Int -> ReadS ListedServer
Prelude.Read, Int -> ListedServer -> ShowS
[ListedServer] -> ShowS
ListedServer -> String
(Int -> ListedServer -> ShowS)
-> (ListedServer -> String)
-> ([ListedServer] -> ShowS)
-> Show ListedServer
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ListedServer] -> ShowS
$cshowList :: [ListedServer] -> ShowS
show :: ListedServer -> String
$cshow :: ListedServer -> String
showsPrec :: Int -> ListedServer -> ShowS
$cshowsPrec :: Int -> ListedServer -> ShowS
Prelude.Show, (forall x. ListedServer -> Rep ListedServer x)
-> (forall x. Rep ListedServer x -> ListedServer)
-> Generic ListedServer
forall x. Rep ListedServer x -> ListedServer
forall x. ListedServer -> Rep ListedServer x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep ListedServer x -> ListedServer
$cfrom :: forall x. ListedServer -> Rep ListedServer x
Prelude.Generic)
newListedServer ::
Prelude.Text ->
ListedServer
newListedServer :: Text -> ListedServer
newListedServer Text
pArn_ =
ListedServer' :: Maybe Text
-> Maybe State
-> Maybe IdentityProviderType
-> Maybe Text
-> Maybe Domain
-> Maybe EndpointType
-> Maybe Int
-> Text
-> ListedServer
ListedServer'
{ $sel:loggingRole:ListedServer' :: Maybe Text
loggingRole = Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:state:ListedServer' :: Maybe State
state = Maybe State
forall a. Maybe a
Prelude.Nothing,
$sel:identityProviderType:ListedServer' :: Maybe IdentityProviderType
identityProviderType = Maybe IdentityProviderType
forall a. Maybe a
Prelude.Nothing,
$sel:serverId:ListedServer' :: Maybe Text
serverId = Maybe Text
forall a. Maybe a
Prelude.Nothing,
$sel:domain:ListedServer' :: Maybe Domain
domain = Maybe Domain
forall a. Maybe a
Prelude.Nothing,
$sel:endpointType:ListedServer' :: Maybe EndpointType
endpointType = Maybe EndpointType
forall a. Maybe a
Prelude.Nothing,
$sel:userCount:ListedServer' :: Maybe Int
userCount = Maybe Int
forall a. Maybe a
Prelude.Nothing,
$sel:arn:ListedServer' :: Text
arn = Text
pArn_
}
listedServer_loggingRole :: Lens.Lens' ListedServer (Prelude.Maybe Prelude.Text)
listedServer_loggingRole :: (Maybe Text -> f (Maybe Text)) -> ListedServer -> f ListedServer
listedServer_loggingRole = (ListedServer -> Maybe Text)
-> (ListedServer -> Maybe Text -> ListedServer)
-> Lens ListedServer ListedServer (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListedServer' {Maybe Text
loggingRole :: Maybe Text
$sel:loggingRole:ListedServer' :: ListedServer -> Maybe Text
loggingRole} -> Maybe Text
loggingRole) (\s :: ListedServer
s@ListedServer' {} Maybe Text
a -> ListedServer
s {$sel:loggingRole:ListedServer' :: Maybe Text
loggingRole = Maybe Text
a} :: ListedServer)
listedServer_state :: Lens.Lens' ListedServer (Prelude.Maybe State)
listedServer_state :: (Maybe State -> f (Maybe State)) -> ListedServer -> f ListedServer
listedServer_state = (ListedServer -> Maybe State)
-> (ListedServer -> Maybe State -> ListedServer)
-> Lens ListedServer ListedServer (Maybe State) (Maybe State)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListedServer' {Maybe State
state :: Maybe State
$sel:state:ListedServer' :: ListedServer -> Maybe State
state} -> Maybe State
state) (\s :: ListedServer
s@ListedServer' {} Maybe State
a -> ListedServer
s {$sel:state:ListedServer' :: Maybe State
state = Maybe State
a} :: ListedServer)
listedServer_identityProviderType :: Lens.Lens' ListedServer (Prelude.Maybe IdentityProviderType)
listedServer_identityProviderType :: (Maybe IdentityProviderType -> f (Maybe IdentityProviderType))
-> ListedServer -> f ListedServer
listedServer_identityProviderType = (ListedServer -> Maybe IdentityProviderType)
-> (ListedServer -> Maybe IdentityProviderType -> ListedServer)
-> Lens
ListedServer
ListedServer
(Maybe IdentityProviderType)
(Maybe IdentityProviderType)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListedServer' {Maybe IdentityProviderType
identityProviderType :: Maybe IdentityProviderType
$sel:identityProviderType:ListedServer' :: ListedServer -> Maybe IdentityProviderType
identityProviderType} -> Maybe IdentityProviderType
identityProviderType) (\s :: ListedServer
s@ListedServer' {} Maybe IdentityProviderType
a -> ListedServer
s {$sel:identityProviderType:ListedServer' :: Maybe IdentityProviderType
identityProviderType = Maybe IdentityProviderType
a} :: ListedServer)
listedServer_serverId :: Lens.Lens' ListedServer (Prelude.Maybe Prelude.Text)
listedServer_serverId :: (Maybe Text -> f (Maybe Text)) -> ListedServer -> f ListedServer
listedServer_serverId = (ListedServer -> Maybe Text)
-> (ListedServer -> Maybe Text -> ListedServer)
-> Lens ListedServer ListedServer (Maybe Text) (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListedServer' {Maybe Text
serverId :: Maybe Text
$sel:serverId:ListedServer' :: ListedServer -> Maybe Text
serverId} -> Maybe Text
serverId) (\s :: ListedServer
s@ListedServer' {} Maybe Text
a -> ListedServer
s {$sel:serverId:ListedServer' :: Maybe Text
serverId = Maybe Text
a} :: ListedServer)
listedServer_domain :: Lens.Lens' ListedServer (Prelude.Maybe Domain)
listedServer_domain :: (Maybe Domain -> f (Maybe Domain))
-> ListedServer -> f ListedServer
listedServer_domain = (ListedServer -> Maybe Domain)
-> (ListedServer -> Maybe Domain -> ListedServer)
-> Lens ListedServer ListedServer (Maybe Domain) (Maybe Domain)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListedServer' {Maybe Domain
domain :: Maybe Domain
$sel:domain:ListedServer' :: ListedServer -> Maybe Domain
domain} -> Maybe Domain
domain) (\s :: ListedServer
s@ListedServer' {} Maybe Domain
a -> ListedServer
s {$sel:domain:ListedServer' :: Maybe Domain
domain = Maybe Domain
a} :: ListedServer)
listedServer_endpointType :: Lens.Lens' ListedServer (Prelude.Maybe EndpointType)
listedServer_endpointType :: (Maybe EndpointType -> f (Maybe EndpointType))
-> ListedServer -> f ListedServer
listedServer_endpointType = (ListedServer -> Maybe EndpointType)
-> (ListedServer -> Maybe EndpointType -> ListedServer)
-> Lens
ListedServer ListedServer (Maybe EndpointType) (Maybe EndpointType)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListedServer' {Maybe EndpointType
endpointType :: Maybe EndpointType
$sel:endpointType:ListedServer' :: ListedServer -> Maybe EndpointType
endpointType} -> Maybe EndpointType
endpointType) (\s :: ListedServer
s@ListedServer' {} Maybe EndpointType
a -> ListedServer
s {$sel:endpointType:ListedServer' :: Maybe EndpointType
endpointType = Maybe EndpointType
a} :: ListedServer)
listedServer_userCount :: Lens.Lens' ListedServer (Prelude.Maybe Prelude.Int)
listedServer_userCount :: (Maybe Int -> f (Maybe Int)) -> ListedServer -> f ListedServer
listedServer_userCount = (ListedServer -> Maybe Int)
-> (ListedServer -> Maybe Int -> ListedServer)
-> Lens ListedServer ListedServer (Maybe Int) (Maybe Int)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListedServer' {Maybe Int
userCount :: Maybe Int
$sel:userCount:ListedServer' :: ListedServer -> Maybe Int
userCount} -> Maybe Int
userCount) (\s :: ListedServer
s@ListedServer' {} Maybe Int
a -> ListedServer
s {$sel:userCount:ListedServer' :: Maybe Int
userCount = Maybe Int
a} :: ListedServer)
listedServer_arn :: Lens.Lens' ListedServer Prelude.Text
listedServer_arn :: (Text -> f Text) -> ListedServer -> f ListedServer
listedServer_arn = (ListedServer -> Text)
-> (ListedServer -> Text -> ListedServer)
-> Lens ListedServer ListedServer Text Text
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListedServer' {Text
arn :: Text
$sel:arn:ListedServer' :: ListedServer -> Text
arn} -> Text
arn) (\s :: ListedServer
s@ListedServer' {} Text
a -> ListedServer
s {$sel:arn:ListedServer' :: Text
arn = Text
a} :: ListedServer)
instance Core.FromJSON ListedServer where
parseJSON :: Value -> Parser ListedServer
parseJSON =
String
-> (Object -> Parser ListedServer) -> Value -> Parser ListedServer
forall a. String -> (Object -> Parser a) -> Value -> Parser a
Core.withObject
String
"ListedServer"
( \Object
x ->
Maybe Text
-> Maybe State
-> Maybe IdentityProviderType
-> Maybe Text
-> Maybe Domain
-> Maybe EndpointType
-> Maybe Int
-> Text
-> ListedServer
ListedServer'
(Maybe Text
-> Maybe State
-> Maybe IdentityProviderType
-> Maybe Text
-> Maybe Domain
-> Maybe EndpointType
-> Maybe Int
-> Text
-> ListedServer)
-> Parser (Maybe Text)
-> Parser
(Maybe State
-> Maybe IdentityProviderType
-> Maybe Text
-> Maybe Domain
-> Maybe EndpointType
-> Maybe Int
-> Text
-> ListedServer)
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
"LoggingRole")
Parser
(Maybe State
-> Maybe IdentityProviderType
-> Maybe Text
-> Maybe Domain
-> Maybe EndpointType
-> Maybe Int
-> Text
-> ListedServer)
-> Parser (Maybe State)
-> Parser
(Maybe IdentityProviderType
-> Maybe Text
-> Maybe Domain
-> Maybe EndpointType
-> Maybe Int
-> Text
-> ListedServer)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe State)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"State")
Parser
(Maybe IdentityProviderType
-> Maybe Text
-> Maybe Domain
-> Maybe EndpointType
-> Maybe Int
-> Text
-> ListedServer)
-> Parser (Maybe IdentityProviderType)
-> Parser
(Maybe Text
-> Maybe Domain
-> Maybe EndpointType
-> Maybe Int
-> Text
-> ListedServer)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe IdentityProviderType)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"IdentityProviderType")
Parser
(Maybe Text
-> Maybe Domain
-> Maybe EndpointType
-> Maybe Int
-> Text
-> ListedServer)
-> Parser (Maybe Text)
-> Parser
(Maybe Domain
-> Maybe EndpointType -> Maybe Int -> Text -> ListedServer)
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
"ServerId")
Parser
(Maybe Domain
-> Maybe EndpointType -> Maybe Int -> Text -> ListedServer)
-> Parser (Maybe Domain)
-> Parser (Maybe EndpointType -> Maybe Int -> Text -> ListedServer)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Domain)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"Domain")
Parser (Maybe EndpointType -> Maybe Int -> Text -> ListedServer)
-> Parser (Maybe EndpointType)
-> Parser (Maybe Int -> Text -> ListedServer)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe EndpointType)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"EndpointType")
Parser (Maybe Int -> Text -> ListedServer)
-> Parser (Maybe Int) -> Parser (Text -> ListedServer)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser (Maybe Int)
forall a. FromJSON a => Object -> Text -> Parser (Maybe a)
Core..:? Text
"UserCount")
Parser (Text -> ListedServer) -> Parser Text -> Parser ListedServer
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Parser Text
forall a. FromJSON a => Object -> Text -> Parser a
Core..: Text
"Arn")
)
instance Prelude.Hashable ListedServer
instance Prelude.NFData ListedServer