{-# 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.CloudWatchLogs.DeleteLogGroup
(
DeleteLogGroup (..),
newDeleteLogGroup,
deleteLogGroup_logGroupName,
DeleteLogGroupResponse (..),
newDeleteLogGroupResponse,
)
where
import Amazonka.CloudWatchLogs.Types
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data DeleteLogGroup = DeleteLogGroup'
{
DeleteLogGroup -> Text
logGroupName :: Prelude.Text
}
deriving (DeleteLogGroup -> DeleteLogGroup -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteLogGroup -> DeleteLogGroup -> Bool
$c/= :: DeleteLogGroup -> DeleteLogGroup -> Bool
== :: DeleteLogGroup -> DeleteLogGroup -> Bool
$c== :: DeleteLogGroup -> DeleteLogGroup -> Bool
Prelude.Eq, ReadPrec [DeleteLogGroup]
ReadPrec DeleteLogGroup
Int -> ReadS DeleteLogGroup
ReadS [DeleteLogGroup]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeleteLogGroup]
$creadListPrec :: ReadPrec [DeleteLogGroup]
readPrec :: ReadPrec DeleteLogGroup
$creadPrec :: ReadPrec DeleteLogGroup
readList :: ReadS [DeleteLogGroup]
$creadList :: ReadS [DeleteLogGroup]
readsPrec :: Int -> ReadS DeleteLogGroup
$creadsPrec :: Int -> ReadS DeleteLogGroup
Prelude.Read, Int -> DeleteLogGroup -> ShowS
[DeleteLogGroup] -> ShowS
DeleteLogGroup -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteLogGroup] -> ShowS
$cshowList :: [DeleteLogGroup] -> ShowS
show :: DeleteLogGroup -> String
$cshow :: DeleteLogGroup -> String
showsPrec :: Int -> DeleteLogGroup -> ShowS
$cshowsPrec :: Int -> DeleteLogGroup -> ShowS
Prelude.Show, forall x. Rep DeleteLogGroup x -> DeleteLogGroup
forall x. DeleteLogGroup -> Rep DeleteLogGroup x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DeleteLogGroup x -> DeleteLogGroup
$cfrom :: forall x. DeleteLogGroup -> Rep DeleteLogGroup x
Prelude.Generic)
newDeleteLogGroup ::
Prelude.Text ->
DeleteLogGroup
newDeleteLogGroup :: Text -> DeleteLogGroup
newDeleteLogGroup Text
pLogGroupName_ =
DeleteLogGroup' {$sel:logGroupName:DeleteLogGroup' :: Text
logGroupName = Text
pLogGroupName_}
deleteLogGroup_logGroupName :: Lens.Lens' DeleteLogGroup Prelude.Text
deleteLogGroup_logGroupName :: Lens' DeleteLogGroup Text
deleteLogGroup_logGroupName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteLogGroup' {Text
logGroupName :: Text
$sel:logGroupName:DeleteLogGroup' :: DeleteLogGroup -> Text
logGroupName} -> Text
logGroupName) (\s :: DeleteLogGroup
s@DeleteLogGroup' {} Text
a -> DeleteLogGroup
s {$sel:logGroupName:DeleteLogGroup' :: Text
logGroupName = Text
a} :: DeleteLogGroup)
instance Core.AWSRequest DeleteLogGroup where
type
AWSResponse DeleteLogGroup =
DeleteLogGroupResponse
request :: (Service -> Service) -> DeleteLogGroup -> Request DeleteLogGroup
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 DeleteLogGroup
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse DeleteLogGroup)))
response =
forall (m :: * -> *) a.
MonadResource m =>
AWSResponse a
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveNull DeleteLogGroupResponse
DeleteLogGroupResponse'
instance Prelude.Hashable DeleteLogGroup where
hashWithSalt :: Int -> DeleteLogGroup -> Int
hashWithSalt Int
_salt DeleteLogGroup' {Text
logGroupName :: Text
$sel:logGroupName:DeleteLogGroup' :: DeleteLogGroup -> Text
..} =
Int
_salt forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
logGroupName
instance Prelude.NFData DeleteLogGroup where
rnf :: DeleteLogGroup -> ()
rnf DeleteLogGroup' {Text
logGroupName :: Text
$sel:logGroupName:DeleteLogGroup' :: DeleteLogGroup -> Text
..} = forall a. NFData a => a -> ()
Prelude.rnf Text
logGroupName
instance Data.ToHeaders DeleteLogGroup where
toHeaders :: DeleteLogGroup -> [Header]
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 -> [Header]
Data.=# ( ByteString
"Logs_20140328.DeleteLogGroup" ::
Prelude.ByteString
),
HeaderName
"Content-Type"
forall a. ToHeader a => HeaderName -> a -> [Header]
Data.=# ( ByteString
"application/x-amz-json-1.1" ::
Prelude.ByteString
)
]
)
instance Data.ToJSON DeleteLogGroup where
toJSON :: DeleteLogGroup -> Value
toJSON DeleteLogGroup' {Text
logGroupName :: Text
$sel:logGroupName:DeleteLogGroup' :: DeleteLogGroup -> Text
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[forall a. a -> Maybe a
Prelude.Just (Key
"logGroupName" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
logGroupName)]
)
instance Data.ToPath DeleteLogGroup where
toPath :: DeleteLogGroup -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery DeleteLogGroup where
toQuery :: DeleteLogGroup -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data DeleteLogGroupResponse = DeleteLogGroupResponse'
{
}
deriving (DeleteLogGroupResponse -> DeleteLogGroupResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteLogGroupResponse -> DeleteLogGroupResponse -> Bool
$c/= :: DeleteLogGroupResponse -> DeleteLogGroupResponse -> Bool
== :: DeleteLogGroupResponse -> DeleteLogGroupResponse -> Bool
$c== :: DeleteLogGroupResponse -> DeleteLogGroupResponse -> Bool
Prelude.Eq, ReadPrec [DeleteLogGroupResponse]
ReadPrec DeleteLogGroupResponse
Int -> ReadS DeleteLogGroupResponse
ReadS [DeleteLogGroupResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeleteLogGroupResponse]
$creadListPrec :: ReadPrec [DeleteLogGroupResponse]
readPrec :: ReadPrec DeleteLogGroupResponse
$creadPrec :: ReadPrec DeleteLogGroupResponse
readList :: ReadS [DeleteLogGroupResponse]
$creadList :: ReadS [DeleteLogGroupResponse]
readsPrec :: Int -> ReadS DeleteLogGroupResponse
$creadsPrec :: Int -> ReadS DeleteLogGroupResponse
Prelude.Read, Int -> DeleteLogGroupResponse -> ShowS
[DeleteLogGroupResponse] -> ShowS
DeleteLogGroupResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteLogGroupResponse] -> ShowS
$cshowList :: [DeleteLogGroupResponse] -> ShowS
show :: DeleteLogGroupResponse -> String
$cshow :: DeleteLogGroupResponse -> String
showsPrec :: Int -> DeleteLogGroupResponse -> ShowS
$cshowsPrec :: Int -> DeleteLogGroupResponse -> ShowS
Prelude.Show, forall x. Rep DeleteLogGroupResponse x -> DeleteLogGroupResponse
forall x. DeleteLogGroupResponse -> Rep DeleteLogGroupResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DeleteLogGroupResponse x -> DeleteLogGroupResponse
$cfrom :: forall x. DeleteLogGroupResponse -> Rep DeleteLogGroupResponse x
Prelude.Generic)
newDeleteLogGroupResponse ::
DeleteLogGroupResponse
newDeleteLogGroupResponse :: DeleteLogGroupResponse
newDeleteLogGroupResponse = DeleteLogGroupResponse
DeleteLogGroupResponse'
instance Prelude.NFData DeleteLogGroupResponse where
rnf :: DeleteLogGroupResponse -> ()
rnf DeleteLogGroupResponse
_ = ()