{-# 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.EMR.ListSecurityConfigurations
(
ListSecurityConfigurations (..),
newListSecurityConfigurations,
listSecurityConfigurations_marker,
ListSecurityConfigurationsResponse (..),
newListSecurityConfigurationsResponse,
listSecurityConfigurationsResponse_marker,
listSecurityConfigurationsResponse_securityConfigurations,
listSecurityConfigurationsResponse_httpStatus,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.EMR.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data ListSecurityConfigurations = ListSecurityConfigurations'
{
ListSecurityConfigurations -> Maybe Text
marker :: Prelude.Maybe Prelude.Text
}
deriving (ListSecurityConfigurations -> ListSecurityConfigurations -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ListSecurityConfigurations -> ListSecurityConfigurations -> Bool
$c/= :: ListSecurityConfigurations -> ListSecurityConfigurations -> Bool
== :: ListSecurityConfigurations -> ListSecurityConfigurations -> Bool
$c== :: ListSecurityConfigurations -> ListSecurityConfigurations -> Bool
Prelude.Eq, ReadPrec [ListSecurityConfigurations]
ReadPrec ListSecurityConfigurations
Int -> ReadS ListSecurityConfigurations
ReadS [ListSecurityConfigurations]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ListSecurityConfigurations]
$creadListPrec :: ReadPrec [ListSecurityConfigurations]
readPrec :: ReadPrec ListSecurityConfigurations
$creadPrec :: ReadPrec ListSecurityConfigurations
readList :: ReadS [ListSecurityConfigurations]
$creadList :: ReadS [ListSecurityConfigurations]
readsPrec :: Int -> ReadS ListSecurityConfigurations
$creadsPrec :: Int -> ReadS ListSecurityConfigurations
Prelude.Read, Int -> ListSecurityConfigurations -> ShowS
[ListSecurityConfigurations] -> ShowS
ListSecurityConfigurations -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ListSecurityConfigurations] -> ShowS
$cshowList :: [ListSecurityConfigurations] -> ShowS
show :: ListSecurityConfigurations -> String
$cshow :: ListSecurityConfigurations -> String
showsPrec :: Int -> ListSecurityConfigurations -> ShowS
$cshowsPrec :: Int -> ListSecurityConfigurations -> ShowS
Prelude.Show, forall x.
Rep ListSecurityConfigurations x -> ListSecurityConfigurations
forall x.
ListSecurityConfigurations -> Rep ListSecurityConfigurations x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep ListSecurityConfigurations x -> ListSecurityConfigurations
$cfrom :: forall x.
ListSecurityConfigurations -> Rep ListSecurityConfigurations x
Prelude.Generic)
newListSecurityConfigurations ::
ListSecurityConfigurations
newListSecurityConfigurations :: ListSecurityConfigurations
newListSecurityConfigurations =
ListSecurityConfigurations'
{ $sel:marker:ListSecurityConfigurations' :: Maybe Text
marker =
forall a. Maybe a
Prelude.Nothing
}
listSecurityConfigurations_marker :: Lens.Lens' ListSecurityConfigurations (Prelude.Maybe Prelude.Text)
listSecurityConfigurations_marker :: Lens' ListSecurityConfigurations (Maybe Text)
listSecurityConfigurations_marker = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListSecurityConfigurations' {Maybe Text
marker :: Maybe Text
$sel:marker:ListSecurityConfigurations' :: ListSecurityConfigurations -> Maybe Text
marker} -> Maybe Text
marker) (\s :: ListSecurityConfigurations
s@ListSecurityConfigurations' {} Maybe Text
a -> ListSecurityConfigurations
s {$sel:marker:ListSecurityConfigurations' :: Maybe Text
marker = Maybe Text
a} :: ListSecurityConfigurations)
instance Core.AWSPager ListSecurityConfigurations where
page :: ListSecurityConfigurations
-> AWSResponse ListSecurityConfigurations
-> Maybe ListSecurityConfigurations
page ListSecurityConfigurations
rq AWSResponse ListSecurityConfigurations
rs
| forall a. AWSTruncated a => a -> Bool
Core.stop
( AWSResponse ListSecurityConfigurations
rs
forall s a. s -> Getting (First a) s a -> Maybe a
Lens.^? Lens' ListSecurityConfigurationsResponse (Maybe Text)
listSecurityConfigurationsResponse_marker
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 ListSecurityConfigurations
rs
forall s a. s -> Getting (First a) s a -> Maybe a
Lens.^? Lens'
ListSecurityConfigurationsResponse
(Maybe [SecurityConfigurationSummary])
listSecurityConfigurationsResponse_securityConfigurations
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.$ ListSecurityConfigurations
rq
forall a b. a -> (a -> b) -> b
Prelude.& Lens' ListSecurityConfigurations (Maybe Text)
listSecurityConfigurations_marker
forall s t a b. ASetter s t a b -> b -> s -> t
Lens..~ AWSResponse ListSecurityConfigurations
rs
forall s a. s -> Getting (First a) s a -> Maybe a
Lens.^? Lens' ListSecurityConfigurationsResponse (Maybe Text)
listSecurityConfigurationsResponse_marker
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 ListSecurityConfigurations where
type
AWSResponse ListSecurityConfigurations =
ListSecurityConfigurationsResponse
request :: (Service -> Service)
-> ListSecurityConfigurations -> Request ListSecurityConfigurations
request Service -> Service
overrides =
forall a. (ToRequest a, ToJSON a) => Service -> a -> Request a
Request.postJSON (Service -> Service
overrides Service
defaultService)
response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy ListSecurityConfigurations
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse ListSecurityConfigurations)))
response =
forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> Object -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveJSON
( \Int
s ResponseHeaders
h Object
x ->
Maybe Text
-> Maybe [SecurityConfigurationSummary]
-> Int
-> ListSecurityConfigurationsResponse
ListSecurityConfigurationsResponse'
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"Marker")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ( Object
x
forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"SecurityConfigurations"
forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty
)
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 ListSecurityConfigurations where
hashWithSalt :: Int -> ListSecurityConfigurations -> Int
hashWithSalt Int
_salt ListSecurityConfigurations' {Maybe Text
marker :: Maybe Text
$sel:marker:ListSecurityConfigurations' :: ListSecurityConfigurations -> Maybe Text
..} =
Int
_salt forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
marker
instance Prelude.NFData ListSecurityConfigurations where
rnf :: ListSecurityConfigurations -> ()
rnf ListSecurityConfigurations' {Maybe Text
marker :: Maybe Text
$sel:marker:ListSecurityConfigurations' :: ListSecurityConfigurations -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
marker
instance Data.ToHeaders ListSecurityConfigurations where
toHeaders :: ListSecurityConfigurations -> ResponseHeaders
toHeaders =
forall a b. a -> b -> a
Prelude.const
( forall a. Monoid a => [a] -> a
Prelude.mconcat
[ HeaderName
"X-Amz-Target"
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# ( ByteString
"ElasticMapReduce.ListSecurityConfigurations" ::
Prelude.ByteString
),
HeaderName
"Content-Type"
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# ( ByteString
"application/x-amz-json-1.1" ::
Prelude.ByteString
)
]
)
instance Data.ToJSON ListSecurityConfigurations where
toJSON :: ListSecurityConfigurations -> Value
toJSON ListSecurityConfigurations' {Maybe Text
marker :: Maybe Text
$sel:marker:ListSecurityConfigurations' :: ListSecurityConfigurations -> Maybe Text
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[(Key
"Marker" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
marker]
)
instance Data.ToPath ListSecurityConfigurations where
toPath :: ListSecurityConfigurations -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery ListSecurityConfigurations where
toQuery :: ListSecurityConfigurations -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data ListSecurityConfigurationsResponse = ListSecurityConfigurationsResponse'
{
ListSecurityConfigurationsResponse -> Maybe Text
marker :: Prelude.Maybe Prelude.Text,
ListSecurityConfigurationsResponse
-> Maybe [SecurityConfigurationSummary]
securityConfigurations :: Prelude.Maybe [SecurityConfigurationSummary],
ListSecurityConfigurationsResponse -> Int
httpStatus :: Prelude.Int
}
deriving (ListSecurityConfigurationsResponse
-> ListSecurityConfigurationsResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ListSecurityConfigurationsResponse
-> ListSecurityConfigurationsResponse -> Bool
$c/= :: ListSecurityConfigurationsResponse
-> ListSecurityConfigurationsResponse -> Bool
== :: ListSecurityConfigurationsResponse
-> ListSecurityConfigurationsResponse -> Bool
$c== :: ListSecurityConfigurationsResponse
-> ListSecurityConfigurationsResponse -> Bool
Prelude.Eq, ReadPrec [ListSecurityConfigurationsResponse]
ReadPrec ListSecurityConfigurationsResponse
Int -> ReadS ListSecurityConfigurationsResponse
ReadS [ListSecurityConfigurationsResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ListSecurityConfigurationsResponse]
$creadListPrec :: ReadPrec [ListSecurityConfigurationsResponse]
readPrec :: ReadPrec ListSecurityConfigurationsResponse
$creadPrec :: ReadPrec ListSecurityConfigurationsResponse
readList :: ReadS [ListSecurityConfigurationsResponse]
$creadList :: ReadS [ListSecurityConfigurationsResponse]
readsPrec :: Int -> ReadS ListSecurityConfigurationsResponse
$creadsPrec :: Int -> ReadS ListSecurityConfigurationsResponse
Prelude.Read, Int -> ListSecurityConfigurationsResponse -> ShowS
[ListSecurityConfigurationsResponse] -> ShowS
ListSecurityConfigurationsResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ListSecurityConfigurationsResponse] -> ShowS
$cshowList :: [ListSecurityConfigurationsResponse] -> ShowS
show :: ListSecurityConfigurationsResponse -> String
$cshow :: ListSecurityConfigurationsResponse -> String
showsPrec :: Int -> ListSecurityConfigurationsResponse -> ShowS
$cshowsPrec :: Int -> ListSecurityConfigurationsResponse -> ShowS
Prelude.Show, forall x.
Rep ListSecurityConfigurationsResponse x
-> ListSecurityConfigurationsResponse
forall x.
ListSecurityConfigurationsResponse
-> Rep ListSecurityConfigurationsResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep ListSecurityConfigurationsResponse x
-> ListSecurityConfigurationsResponse
$cfrom :: forall x.
ListSecurityConfigurationsResponse
-> Rep ListSecurityConfigurationsResponse x
Prelude.Generic)
newListSecurityConfigurationsResponse ::
Prelude.Int ->
ListSecurityConfigurationsResponse
newListSecurityConfigurationsResponse :: Int -> ListSecurityConfigurationsResponse
newListSecurityConfigurationsResponse Int
pHttpStatus_ =
ListSecurityConfigurationsResponse'
{ $sel:marker:ListSecurityConfigurationsResponse' :: Maybe Text
marker =
forall a. Maybe a
Prelude.Nothing,
$sel:securityConfigurations:ListSecurityConfigurationsResponse' :: Maybe [SecurityConfigurationSummary]
securityConfigurations =
forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:ListSecurityConfigurationsResponse' :: Int
httpStatus = Int
pHttpStatus_
}
listSecurityConfigurationsResponse_marker :: Lens.Lens' ListSecurityConfigurationsResponse (Prelude.Maybe Prelude.Text)
listSecurityConfigurationsResponse_marker :: Lens' ListSecurityConfigurationsResponse (Maybe Text)
listSecurityConfigurationsResponse_marker = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListSecurityConfigurationsResponse' {Maybe Text
marker :: Maybe Text
$sel:marker:ListSecurityConfigurationsResponse' :: ListSecurityConfigurationsResponse -> Maybe Text
marker} -> Maybe Text
marker) (\s :: ListSecurityConfigurationsResponse
s@ListSecurityConfigurationsResponse' {} Maybe Text
a -> ListSecurityConfigurationsResponse
s {$sel:marker:ListSecurityConfigurationsResponse' :: Maybe Text
marker = Maybe Text
a} :: ListSecurityConfigurationsResponse)
listSecurityConfigurationsResponse_securityConfigurations :: Lens.Lens' ListSecurityConfigurationsResponse (Prelude.Maybe [SecurityConfigurationSummary])
listSecurityConfigurationsResponse_securityConfigurations :: Lens'
ListSecurityConfigurationsResponse
(Maybe [SecurityConfigurationSummary])
listSecurityConfigurationsResponse_securityConfigurations = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListSecurityConfigurationsResponse' {Maybe [SecurityConfigurationSummary]
securityConfigurations :: Maybe [SecurityConfigurationSummary]
$sel:securityConfigurations:ListSecurityConfigurationsResponse' :: ListSecurityConfigurationsResponse
-> Maybe [SecurityConfigurationSummary]
securityConfigurations} -> Maybe [SecurityConfigurationSummary]
securityConfigurations) (\s :: ListSecurityConfigurationsResponse
s@ListSecurityConfigurationsResponse' {} Maybe [SecurityConfigurationSummary]
a -> ListSecurityConfigurationsResponse
s {$sel:securityConfigurations:ListSecurityConfigurationsResponse' :: Maybe [SecurityConfigurationSummary]
securityConfigurations = Maybe [SecurityConfigurationSummary]
a} :: ListSecurityConfigurationsResponse) 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
listSecurityConfigurationsResponse_httpStatus :: Lens.Lens' ListSecurityConfigurationsResponse Prelude.Int
listSecurityConfigurationsResponse_httpStatus :: Lens' ListSecurityConfigurationsResponse Int
listSecurityConfigurationsResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListSecurityConfigurationsResponse' {Int
httpStatus :: Int
$sel:httpStatus:ListSecurityConfigurationsResponse' :: ListSecurityConfigurationsResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: ListSecurityConfigurationsResponse
s@ListSecurityConfigurationsResponse' {} Int
a -> ListSecurityConfigurationsResponse
s {$sel:httpStatus:ListSecurityConfigurationsResponse' :: Int
httpStatus = Int
a} :: ListSecurityConfigurationsResponse)
instance
Prelude.NFData
ListSecurityConfigurationsResponse
where
rnf :: ListSecurityConfigurationsResponse -> ()
rnf ListSecurityConfigurationsResponse' {Int
Maybe [SecurityConfigurationSummary]
Maybe Text
httpStatus :: Int
securityConfigurations :: Maybe [SecurityConfigurationSummary]
marker :: Maybe Text
$sel:httpStatus:ListSecurityConfigurationsResponse' :: ListSecurityConfigurationsResponse -> Int
$sel:securityConfigurations:ListSecurityConfigurationsResponse' :: ListSecurityConfigurationsResponse
-> Maybe [SecurityConfigurationSummary]
$sel:marker:ListSecurityConfigurationsResponse' :: ListSecurityConfigurationsResponse -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
marker
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe [SecurityConfigurationSummary]
securityConfigurations
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus