{-# 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.GuardDuty.GetThreatIntelSet
(
GetThreatIntelSet (..),
newGetThreatIntelSet,
getThreatIntelSet_detectorId,
getThreatIntelSet_threatIntelSetId,
GetThreatIntelSetResponse (..),
newGetThreatIntelSetResponse,
getThreatIntelSetResponse_tags,
getThreatIntelSetResponse_httpStatus,
getThreatIntelSetResponse_name,
getThreatIntelSetResponse_format,
getThreatIntelSetResponse_location,
getThreatIntelSetResponse_status,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.GuardDuty.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data GetThreatIntelSet = GetThreatIntelSet'
{
GetThreatIntelSet -> Text
detectorId :: Prelude.Text,
GetThreatIntelSet -> Text
threatIntelSetId :: Prelude.Text
}
deriving (GetThreatIntelSet -> GetThreatIntelSet -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetThreatIntelSet -> GetThreatIntelSet -> Bool
$c/= :: GetThreatIntelSet -> GetThreatIntelSet -> Bool
== :: GetThreatIntelSet -> GetThreatIntelSet -> Bool
$c== :: GetThreatIntelSet -> GetThreatIntelSet -> Bool
Prelude.Eq, ReadPrec [GetThreatIntelSet]
ReadPrec GetThreatIntelSet
Int -> ReadS GetThreatIntelSet
ReadS [GetThreatIntelSet]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetThreatIntelSet]
$creadListPrec :: ReadPrec [GetThreatIntelSet]
readPrec :: ReadPrec GetThreatIntelSet
$creadPrec :: ReadPrec GetThreatIntelSet
readList :: ReadS [GetThreatIntelSet]
$creadList :: ReadS [GetThreatIntelSet]
readsPrec :: Int -> ReadS GetThreatIntelSet
$creadsPrec :: Int -> ReadS GetThreatIntelSet
Prelude.Read, Int -> GetThreatIntelSet -> ShowS
[GetThreatIntelSet] -> ShowS
GetThreatIntelSet -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetThreatIntelSet] -> ShowS
$cshowList :: [GetThreatIntelSet] -> ShowS
show :: GetThreatIntelSet -> String
$cshow :: GetThreatIntelSet -> String
showsPrec :: Int -> GetThreatIntelSet -> ShowS
$cshowsPrec :: Int -> GetThreatIntelSet -> ShowS
Prelude.Show, forall x. Rep GetThreatIntelSet x -> GetThreatIntelSet
forall x. GetThreatIntelSet -> Rep GetThreatIntelSet x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep GetThreatIntelSet x -> GetThreatIntelSet
$cfrom :: forall x. GetThreatIntelSet -> Rep GetThreatIntelSet x
Prelude.Generic)
newGetThreatIntelSet ::
Prelude.Text ->
Prelude.Text ->
GetThreatIntelSet
newGetThreatIntelSet :: Text -> Text -> GetThreatIntelSet
newGetThreatIntelSet Text
pDetectorId_ Text
pThreatIntelSetId_ =
GetThreatIntelSet'
{ $sel:detectorId:GetThreatIntelSet' :: Text
detectorId = Text
pDetectorId_,
$sel:threatIntelSetId:GetThreatIntelSet' :: Text
threatIntelSetId = Text
pThreatIntelSetId_
}
getThreatIntelSet_detectorId :: Lens.Lens' GetThreatIntelSet Prelude.Text
getThreatIntelSet_detectorId :: Lens' GetThreatIntelSet Text
getThreatIntelSet_detectorId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetThreatIntelSet' {Text
detectorId :: Text
$sel:detectorId:GetThreatIntelSet' :: GetThreatIntelSet -> Text
detectorId} -> Text
detectorId) (\s :: GetThreatIntelSet
s@GetThreatIntelSet' {} Text
a -> GetThreatIntelSet
s {$sel:detectorId:GetThreatIntelSet' :: Text
detectorId = Text
a} :: GetThreatIntelSet)
getThreatIntelSet_threatIntelSetId :: Lens.Lens' GetThreatIntelSet Prelude.Text
getThreatIntelSet_threatIntelSetId :: Lens' GetThreatIntelSet Text
getThreatIntelSet_threatIntelSetId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetThreatIntelSet' {Text
threatIntelSetId :: Text
$sel:threatIntelSetId:GetThreatIntelSet' :: GetThreatIntelSet -> Text
threatIntelSetId} -> Text
threatIntelSetId) (\s :: GetThreatIntelSet
s@GetThreatIntelSet' {} Text
a -> GetThreatIntelSet
s {$sel:threatIntelSetId:GetThreatIntelSet' :: Text
threatIntelSetId = Text
a} :: GetThreatIntelSet)
instance Core.AWSRequest GetThreatIntelSet where
type
AWSResponse GetThreatIntelSet =
GetThreatIntelSetResponse
request :: (Service -> Service)
-> GetThreatIntelSet -> Request GetThreatIntelSet
request Service -> Service
overrides =
forall a. ToRequest a => Service -> a -> Request a
Request.get (Service -> Service
overrides Service
defaultService)
response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy GetThreatIntelSet
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse GetThreatIntelSet)))
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 (HashMap Text Text)
-> Int
-> Text
-> ThreatIntelSetFormat
-> Text
-> ThreatIntelSetStatus
-> GetThreatIntelSetResponse
GetThreatIntelSetResponse'
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
"tags" 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))
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String a
Data..:> Key
"name")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String a
Data..:> Key
"format")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String 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 -> Either String a
Data..:> Key
"status")
)
instance Prelude.Hashable GetThreatIntelSet where
hashWithSalt :: Int -> GetThreatIntelSet -> Int
hashWithSalt Int
_salt GetThreatIntelSet' {Text
threatIntelSetId :: Text
detectorId :: Text
$sel:threatIntelSetId:GetThreatIntelSet' :: GetThreatIntelSet -> Text
$sel:detectorId:GetThreatIntelSet' :: GetThreatIntelSet -> Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
detectorId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
threatIntelSetId
instance Prelude.NFData GetThreatIntelSet where
rnf :: GetThreatIntelSet -> ()
rnf GetThreatIntelSet' {Text
threatIntelSetId :: Text
detectorId :: Text
$sel:threatIntelSetId:GetThreatIntelSet' :: GetThreatIntelSet -> Text
$sel:detectorId:GetThreatIntelSet' :: GetThreatIntelSet -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
detectorId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
threatIntelSetId
instance Data.ToHeaders GetThreatIntelSet where
toHeaders :: GetThreatIntelSet -> ResponseHeaders
toHeaders =
forall a b. a -> b -> a
Prelude.const
( forall a. Monoid a => [a] -> a
Prelude.mconcat
[ HeaderName
"Content-Type"
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# ( ByteString
"application/x-amz-json-1.1" ::
Prelude.ByteString
)
]
)
instance Data.ToPath GetThreatIntelSet where
toPath :: GetThreatIntelSet -> ByteString
toPath GetThreatIntelSet' {Text
threatIntelSetId :: Text
detectorId :: Text
$sel:threatIntelSetId:GetThreatIntelSet' :: GetThreatIntelSet -> Text
$sel:detectorId:GetThreatIntelSet' :: GetThreatIntelSet -> Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"/detector/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
detectorId,
ByteString
"/threatintelset/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
threatIntelSetId
]
instance Data.ToQuery GetThreatIntelSet where
toQuery :: GetThreatIntelSet -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data GetThreatIntelSetResponse = GetThreatIntelSetResponse'
{
GetThreatIntelSetResponse -> Maybe (HashMap Text Text)
tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),
GetThreatIntelSetResponse -> Int
httpStatus :: Prelude.Int,
GetThreatIntelSetResponse -> Text
name :: Prelude.Text,
GetThreatIntelSetResponse -> ThreatIntelSetFormat
format :: ThreatIntelSetFormat,
GetThreatIntelSetResponse -> Text
location :: Prelude.Text,
GetThreatIntelSetResponse -> ThreatIntelSetStatus
status :: ThreatIntelSetStatus
}
deriving (GetThreatIntelSetResponse -> GetThreatIntelSetResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetThreatIntelSetResponse -> GetThreatIntelSetResponse -> Bool
$c/= :: GetThreatIntelSetResponse -> GetThreatIntelSetResponse -> Bool
== :: GetThreatIntelSetResponse -> GetThreatIntelSetResponse -> Bool
$c== :: GetThreatIntelSetResponse -> GetThreatIntelSetResponse -> Bool
Prelude.Eq, ReadPrec [GetThreatIntelSetResponse]
ReadPrec GetThreatIntelSetResponse
Int -> ReadS GetThreatIntelSetResponse
ReadS [GetThreatIntelSetResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetThreatIntelSetResponse]
$creadListPrec :: ReadPrec [GetThreatIntelSetResponse]
readPrec :: ReadPrec GetThreatIntelSetResponse
$creadPrec :: ReadPrec GetThreatIntelSetResponse
readList :: ReadS [GetThreatIntelSetResponse]
$creadList :: ReadS [GetThreatIntelSetResponse]
readsPrec :: Int -> ReadS GetThreatIntelSetResponse
$creadsPrec :: Int -> ReadS GetThreatIntelSetResponse
Prelude.Read, Int -> GetThreatIntelSetResponse -> ShowS
[GetThreatIntelSetResponse] -> ShowS
GetThreatIntelSetResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetThreatIntelSetResponse] -> ShowS
$cshowList :: [GetThreatIntelSetResponse] -> ShowS
show :: GetThreatIntelSetResponse -> String
$cshow :: GetThreatIntelSetResponse -> String
showsPrec :: Int -> GetThreatIntelSetResponse -> ShowS
$cshowsPrec :: Int -> GetThreatIntelSetResponse -> ShowS
Prelude.Show, forall x.
Rep GetThreatIntelSetResponse x -> GetThreatIntelSetResponse
forall x.
GetThreatIntelSetResponse -> Rep GetThreatIntelSetResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep GetThreatIntelSetResponse x -> GetThreatIntelSetResponse
$cfrom :: forall x.
GetThreatIntelSetResponse -> Rep GetThreatIntelSetResponse x
Prelude.Generic)
newGetThreatIntelSetResponse ::
Prelude.Int ->
Prelude.Text ->
ThreatIntelSetFormat ->
Prelude.Text ->
ThreatIntelSetStatus ->
GetThreatIntelSetResponse
newGetThreatIntelSetResponse :: Int
-> Text
-> ThreatIntelSetFormat
-> Text
-> ThreatIntelSetStatus
-> GetThreatIntelSetResponse
newGetThreatIntelSetResponse
Int
pHttpStatus_
Text
pName_
ThreatIntelSetFormat
pFormat_
Text
pLocation_
ThreatIntelSetStatus
pStatus_ =
GetThreatIntelSetResponse'
{ $sel:tags:GetThreatIntelSetResponse' :: Maybe (HashMap Text Text)
tags = forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:GetThreatIntelSetResponse' :: Int
httpStatus = Int
pHttpStatus_,
$sel:name:GetThreatIntelSetResponse' :: Text
name = Text
pName_,
$sel:format:GetThreatIntelSetResponse' :: ThreatIntelSetFormat
format = ThreatIntelSetFormat
pFormat_,
$sel:location:GetThreatIntelSetResponse' :: Text
location = Text
pLocation_,
$sel:status:GetThreatIntelSetResponse' :: ThreatIntelSetStatus
status = ThreatIntelSetStatus
pStatus_
}
getThreatIntelSetResponse_tags :: Lens.Lens' GetThreatIntelSetResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))
getThreatIntelSetResponse_tags :: Lens' GetThreatIntelSetResponse (Maybe (HashMap Text Text))
getThreatIntelSetResponse_tags = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetThreatIntelSetResponse' {Maybe (HashMap Text Text)
tags :: Maybe (HashMap Text Text)
$sel:tags:GetThreatIntelSetResponse' :: GetThreatIntelSetResponse -> Maybe (HashMap Text Text)
tags} -> Maybe (HashMap Text Text)
tags) (\s :: GetThreatIntelSetResponse
s@GetThreatIntelSetResponse' {} Maybe (HashMap Text Text)
a -> GetThreatIntelSetResponse
s {$sel:tags:GetThreatIntelSetResponse' :: Maybe (HashMap Text Text)
tags = Maybe (HashMap Text Text)
a} :: GetThreatIntelSetResponse) 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
getThreatIntelSetResponse_httpStatus :: Lens.Lens' GetThreatIntelSetResponse Prelude.Int
getThreatIntelSetResponse_httpStatus :: Lens' GetThreatIntelSetResponse Int
getThreatIntelSetResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetThreatIntelSetResponse' {Int
httpStatus :: Int
$sel:httpStatus:GetThreatIntelSetResponse' :: GetThreatIntelSetResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: GetThreatIntelSetResponse
s@GetThreatIntelSetResponse' {} Int
a -> GetThreatIntelSetResponse
s {$sel:httpStatus:GetThreatIntelSetResponse' :: Int
httpStatus = Int
a} :: GetThreatIntelSetResponse)
getThreatIntelSetResponse_name :: Lens.Lens' GetThreatIntelSetResponse Prelude.Text
getThreatIntelSetResponse_name :: Lens' GetThreatIntelSetResponse Text
getThreatIntelSetResponse_name = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetThreatIntelSetResponse' {Text
name :: Text
$sel:name:GetThreatIntelSetResponse' :: GetThreatIntelSetResponse -> Text
name} -> Text
name) (\s :: GetThreatIntelSetResponse
s@GetThreatIntelSetResponse' {} Text
a -> GetThreatIntelSetResponse
s {$sel:name:GetThreatIntelSetResponse' :: Text
name = Text
a} :: GetThreatIntelSetResponse)
getThreatIntelSetResponse_format :: Lens.Lens' GetThreatIntelSetResponse ThreatIntelSetFormat
getThreatIntelSetResponse_format :: Lens' GetThreatIntelSetResponse ThreatIntelSetFormat
getThreatIntelSetResponse_format = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetThreatIntelSetResponse' {ThreatIntelSetFormat
format :: ThreatIntelSetFormat
$sel:format:GetThreatIntelSetResponse' :: GetThreatIntelSetResponse -> ThreatIntelSetFormat
format} -> ThreatIntelSetFormat
format) (\s :: GetThreatIntelSetResponse
s@GetThreatIntelSetResponse' {} ThreatIntelSetFormat
a -> GetThreatIntelSetResponse
s {$sel:format:GetThreatIntelSetResponse' :: ThreatIntelSetFormat
format = ThreatIntelSetFormat
a} :: GetThreatIntelSetResponse)
getThreatIntelSetResponse_location :: Lens.Lens' GetThreatIntelSetResponse Prelude.Text
getThreatIntelSetResponse_location :: Lens' GetThreatIntelSetResponse Text
getThreatIntelSetResponse_location = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetThreatIntelSetResponse' {Text
location :: Text
$sel:location:GetThreatIntelSetResponse' :: GetThreatIntelSetResponse -> Text
location} -> Text
location) (\s :: GetThreatIntelSetResponse
s@GetThreatIntelSetResponse' {} Text
a -> GetThreatIntelSetResponse
s {$sel:location:GetThreatIntelSetResponse' :: Text
location = Text
a} :: GetThreatIntelSetResponse)
getThreatIntelSetResponse_status :: Lens.Lens' GetThreatIntelSetResponse ThreatIntelSetStatus
getThreatIntelSetResponse_status :: Lens' GetThreatIntelSetResponse ThreatIntelSetStatus
getThreatIntelSetResponse_status = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetThreatIntelSetResponse' {ThreatIntelSetStatus
status :: ThreatIntelSetStatus
$sel:status:GetThreatIntelSetResponse' :: GetThreatIntelSetResponse -> ThreatIntelSetStatus
status} -> ThreatIntelSetStatus
status) (\s :: GetThreatIntelSetResponse
s@GetThreatIntelSetResponse' {} ThreatIntelSetStatus
a -> GetThreatIntelSetResponse
s {$sel:status:GetThreatIntelSetResponse' :: ThreatIntelSetStatus
status = ThreatIntelSetStatus
a} :: GetThreatIntelSetResponse)
instance Prelude.NFData GetThreatIntelSetResponse where
rnf :: GetThreatIntelSetResponse -> ()
rnf GetThreatIntelSetResponse' {Int
Maybe (HashMap Text Text)
Text
ThreatIntelSetFormat
ThreatIntelSetStatus
status :: ThreatIntelSetStatus
location :: Text
format :: ThreatIntelSetFormat
name :: Text
httpStatus :: Int
tags :: Maybe (HashMap Text Text)
$sel:status:GetThreatIntelSetResponse' :: GetThreatIntelSetResponse -> ThreatIntelSetStatus
$sel:location:GetThreatIntelSetResponse' :: GetThreatIntelSetResponse -> Text
$sel:format:GetThreatIntelSetResponse' :: GetThreatIntelSetResponse -> ThreatIntelSetFormat
$sel:name:GetThreatIntelSetResponse' :: GetThreatIntelSetResponse -> Text
$sel:httpStatus:GetThreatIntelSetResponse' :: GetThreatIntelSetResponse -> Int
$sel:tags:GetThreatIntelSetResponse' :: GetThreatIntelSetResponse -> Maybe (HashMap Text Text)
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe (HashMap Text Text)
tags
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
name
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf ThreatIntelSetFormat
format
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
location
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf ThreatIntelSetStatus
status