{-# 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.WorkMail.DeleteAvailabilityConfiguration
(
DeleteAvailabilityConfiguration (..),
newDeleteAvailabilityConfiguration,
deleteAvailabilityConfiguration_organizationId,
deleteAvailabilityConfiguration_domainName,
DeleteAvailabilityConfigurationResponse (..),
newDeleteAvailabilityConfigurationResponse,
deleteAvailabilityConfigurationResponse_httpStatus,
)
where
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
import Amazonka.WorkMail.Types
data DeleteAvailabilityConfiguration = DeleteAvailabilityConfiguration'
{
DeleteAvailabilityConfiguration -> Text
organizationId :: Prelude.Text,
DeleteAvailabilityConfiguration -> Text
domainName :: Prelude.Text
}
deriving (DeleteAvailabilityConfiguration
-> DeleteAvailabilityConfiguration -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteAvailabilityConfiguration
-> DeleteAvailabilityConfiguration -> Bool
$c/= :: DeleteAvailabilityConfiguration
-> DeleteAvailabilityConfiguration -> Bool
== :: DeleteAvailabilityConfiguration
-> DeleteAvailabilityConfiguration -> Bool
$c== :: DeleteAvailabilityConfiguration
-> DeleteAvailabilityConfiguration -> Bool
Prelude.Eq, ReadPrec [DeleteAvailabilityConfiguration]
ReadPrec DeleteAvailabilityConfiguration
Int -> ReadS DeleteAvailabilityConfiguration
ReadS [DeleteAvailabilityConfiguration]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeleteAvailabilityConfiguration]
$creadListPrec :: ReadPrec [DeleteAvailabilityConfiguration]
readPrec :: ReadPrec DeleteAvailabilityConfiguration
$creadPrec :: ReadPrec DeleteAvailabilityConfiguration
readList :: ReadS [DeleteAvailabilityConfiguration]
$creadList :: ReadS [DeleteAvailabilityConfiguration]
readsPrec :: Int -> ReadS DeleteAvailabilityConfiguration
$creadsPrec :: Int -> ReadS DeleteAvailabilityConfiguration
Prelude.Read, Int -> DeleteAvailabilityConfiguration -> ShowS
[DeleteAvailabilityConfiguration] -> ShowS
DeleteAvailabilityConfiguration -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteAvailabilityConfiguration] -> ShowS
$cshowList :: [DeleteAvailabilityConfiguration] -> ShowS
show :: DeleteAvailabilityConfiguration -> String
$cshow :: DeleteAvailabilityConfiguration -> String
showsPrec :: Int -> DeleteAvailabilityConfiguration -> ShowS
$cshowsPrec :: Int -> DeleteAvailabilityConfiguration -> ShowS
Prelude.Show, forall x.
Rep DeleteAvailabilityConfiguration x
-> DeleteAvailabilityConfiguration
forall x.
DeleteAvailabilityConfiguration
-> Rep DeleteAvailabilityConfiguration x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DeleteAvailabilityConfiguration x
-> DeleteAvailabilityConfiguration
$cfrom :: forall x.
DeleteAvailabilityConfiguration
-> Rep DeleteAvailabilityConfiguration x
Prelude.Generic)
newDeleteAvailabilityConfiguration ::
Prelude.Text ->
Prelude.Text ->
DeleteAvailabilityConfiguration
newDeleteAvailabilityConfiguration :: Text -> Text -> DeleteAvailabilityConfiguration
newDeleteAvailabilityConfiguration
Text
pOrganizationId_
Text
pDomainName_ =
DeleteAvailabilityConfiguration'
{ $sel:organizationId:DeleteAvailabilityConfiguration' :: Text
organizationId =
Text
pOrganizationId_,
$sel:domainName:DeleteAvailabilityConfiguration' :: Text
domainName = Text
pDomainName_
}
deleteAvailabilityConfiguration_organizationId :: Lens.Lens' DeleteAvailabilityConfiguration Prelude.Text
deleteAvailabilityConfiguration_organizationId :: Lens' DeleteAvailabilityConfiguration Text
deleteAvailabilityConfiguration_organizationId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteAvailabilityConfiguration' {Text
organizationId :: Text
$sel:organizationId:DeleteAvailabilityConfiguration' :: DeleteAvailabilityConfiguration -> Text
organizationId} -> Text
organizationId) (\s :: DeleteAvailabilityConfiguration
s@DeleteAvailabilityConfiguration' {} Text
a -> DeleteAvailabilityConfiguration
s {$sel:organizationId:DeleteAvailabilityConfiguration' :: Text
organizationId = Text
a} :: DeleteAvailabilityConfiguration)
deleteAvailabilityConfiguration_domainName :: Lens.Lens' DeleteAvailabilityConfiguration Prelude.Text
deleteAvailabilityConfiguration_domainName :: Lens' DeleteAvailabilityConfiguration Text
deleteAvailabilityConfiguration_domainName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteAvailabilityConfiguration' {Text
domainName :: Text
$sel:domainName:DeleteAvailabilityConfiguration' :: DeleteAvailabilityConfiguration -> Text
domainName} -> Text
domainName) (\s :: DeleteAvailabilityConfiguration
s@DeleteAvailabilityConfiguration' {} Text
a -> DeleteAvailabilityConfiguration
s {$sel:domainName:DeleteAvailabilityConfiguration' :: Text
domainName = Text
a} :: DeleteAvailabilityConfiguration)
instance
Core.AWSRequest
DeleteAvailabilityConfiguration
where
type
AWSResponse DeleteAvailabilityConfiguration =
DeleteAvailabilityConfigurationResponse
request :: (Service -> Service)
-> DeleteAvailabilityConfiguration
-> Request DeleteAvailabilityConfiguration
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 DeleteAvailabilityConfiguration
-> ClientResponse ClientBody
-> m (Either
Error
(ClientResponse (AWSResponse DeleteAvailabilityConfiguration)))
response =
forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> () -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveEmpty
( \Int
s ResponseHeaders
h ()
x ->
Int -> DeleteAvailabilityConfigurationResponse
DeleteAvailabilityConfigurationResponse'
forall (f :: * -> *) a b. Functor 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
DeleteAvailabilityConfiguration
where
hashWithSalt :: Int -> DeleteAvailabilityConfiguration -> Int
hashWithSalt
Int
_salt
DeleteAvailabilityConfiguration' {Text
domainName :: Text
organizationId :: Text
$sel:domainName:DeleteAvailabilityConfiguration' :: DeleteAvailabilityConfiguration -> Text
$sel:organizationId:DeleteAvailabilityConfiguration' :: DeleteAvailabilityConfiguration -> Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
organizationId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
domainName
instance
Prelude.NFData
DeleteAvailabilityConfiguration
where
rnf :: DeleteAvailabilityConfiguration -> ()
rnf DeleteAvailabilityConfiguration' {Text
domainName :: Text
organizationId :: Text
$sel:domainName:DeleteAvailabilityConfiguration' :: DeleteAvailabilityConfiguration -> Text
$sel:organizationId:DeleteAvailabilityConfiguration' :: DeleteAvailabilityConfiguration -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
organizationId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
domainName
instance
Data.ToHeaders
DeleteAvailabilityConfiguration
where
toHeaders :: DeleteAvailabilityConfiguration -> 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
"WorkMailService.DeleteAvailabilityConfiguration" ::
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 DeleteAvailabilityConfiguration where
toJSON :: DeleteAvailabilityConfiguration -> Value
toJSON DeleteAvailabilityConfiguration' {Text
domainName :: Text
organizationId :: Text
$sel:domainName:DeleteAvailabilityConfiguration' :: DeleteAvailabilityConfiguration -> Text
$sel:organizationId:DeleteAvailabilityConfiguration' :: DeleteAvailabilityConfiguration -> Text
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ forall a. a -> Maybe a
Prelude.Just
(Key
"OrganizationId" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
organizationId),
forall a. a -> Maybe a
Prelude.Just (Key
"DomainName" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
domainName)
]
)
instance Data.ToPath DeleteAvailabilityConfiguration where
toPath :: DeleteAvailabilityConfiguration -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery DeleteAvailabilityConfiguration where
toQuery :: DeleteAvailabilityConfiguration -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data DeleteAvailabilityConfigurationResponse = DeleteAvailabilityConfigurationResponse'
{
DeleteAvailabilityConfigurationResponse -> Int
httpStatus :: Prelude.Int
}
deriving (DeleteAvailabilityConfigurationResponse
-> DeleteAvailabilityConfigurationResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DeleteAvailabilityConfigurationResponse
-> DeleteAvailabilityConfigurationResponse -> Bool
$c/= :: DeleteAvailabilityConfigurationResponse
-> DeleteAvailabilityConfigurationResponse -> Bool
== :: DeleteAvailabilityConfigurationResponse
-> DeleteAvailabilityConfigurationResponse -> Bool
$c== :: DeleteAvailabilityConfigurationResponse
-> DeleteAvailabilityConfigurationResponse -> Bool
Prelude.Eq, ReadPrec [DeleteAvailabilityConfigurationResponse]
ReadPrec DeleteAvailabilityConfigurationResponse
Int -> ReadS DeleteAvailabilityConfigurationResponse
ReadS [DeleteAvailabilityConfigurationResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DeleteAvailabilityConfigurationResponse]
$creadListPrec :: ReadPrec [DeleteAvailabilityConfigurationResponse]
readPrec :: ReadPrec DeleteAvailabilityConfigurationResponse
$creadPrec :: ReadPrec DeleteAvailabilityConfigurationResponse
readList :: ReadS [DeleteAvailabilityConfigurationResponse]
$creadList :: ReadS [DeleteAvailabilityConfigurationResponse]
readsPrec :: Int -> ReadS DeleteAvailabilityConfigurationResponse
$creadsPrec :: Int -> ReadS DeleteAvailabilityConfigurationResponse
Prelude.Read, Int -> DeleteAvailabilityConfigurationResponse -> ShowS
[DeleteAvailabilityConfigurationResponse] -> ShowS
DeleteAvailabilityConfigurationResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DeleteAvailabilityConfigurationResponse] -> ShowS
$cshowList :: [DeleteAvailabilityConfigurationResponse] -> ShowS
show :: DeleteAvailabilityConfigurationResponse -> String
$cshow :: DeleteAvailabilityConfigurationResponse -> String
showsPrec :: Int -> DeleteAvailabilityConfigurationResponse -> ShowS
$cshowsPrec :: Int -> DeleteAvailabilityConfigurationResponse -> ShowS
Prelude.Show, forall x.
Rep DeleteAvailabilityConfigurationResponse x
-> DeleteAvailabilityConfigurationResponse
forall x.
DeleteAvailabilityConfigurationResponse
-> Rep DeleteAvailabilityConfigurationResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DeleteAvailabilityConfigurationResponse x
-> DeleteAvailabilityConfigurationResponse
$cfrom :: forall x.
DeleteAvailabilityConfigurationResponse
-> Rep DeleteAvailabilityConfigurationResponse x
Prelude.Generic)
newDeleteAvailabilityConfigurationResponse ::
Prelude.Int ->
DeleteAvailabilityConfigurationResponse
newDeleteAvailabilityConfigurationResponse :: Int -> DeleteAvailabilityConfigurationResponse
newDeleteAvailabilityConfigurationResponse
Int
pHttpStatus_ =
DeleteAvailabilityConfigurationResponse'
{ $sel:httpStatus:DeleteAvailabilityConfigurationResponse' :: Int
httpStatus =
Int
pHttpStatus_
}
deleteAvailabilityConfigurationResponse_httpStatus :: Lens.Lens' DeleteAvailabilityConfigurationResponse Prelude.Int
deleteAvailabilityConfigurationResponse_httpStatus :: Lens' DeleteAvailabilityConfigurationResponse Int
deleteAvailabilityConfigurationResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DeleteAvailabilityConfigurationResponse' {Int
httpStatus :: Int
$sel:httpStatus:DeleteAvailabilityConfigurationResponse' :: DeleteAvailabilityConfigurationResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: DeleteAvailabilityConfigurationResponse
s@DeleteAvailabilityConfigurationResponse' {} Int
a -> DeleteAvailabilityConfigurationResponse
s {$sel:httpStatus:DeleteAvailabilityConfigurationResponse' :: Int
httpStatus = Int
a} :: DeleteAvailabilityConfigurationResponse)
instance
Prelude.NFData
DeleteAvailabilityConfigurationResponse
where
rnf :: DeleteAvailabilityConfigurationResponse -> ()
rnf DeleteAvailabilityConfigurationResponse' {Int
httpStatus :: Int
$sel:httpStatus:DeleteAvailabilityConfigurationResponse' :: DeleteAvailabilityConfigurationResponse -> Int
..} =
forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus