{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE TypeFamilies #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Network.AWS.CloudDirectory.DeleteFacet
(
deleteFacet
, DeleteFacet
, dfSchemaARN
, dfName
, deleteFacetResponse
, DeleteFacetResponse
, dfrsResponseStatus
) where
import Network.AWS.CloudDirectory.Types
import Network.AWS.CloudDirectory.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data DeleteFacet = DeleteFacet'
{ _dfSchemaARN :: !Text
, _dfName :: !Text
} deriving (Eq, Read, Show, Data, Typeable, Generic)
deleteFacet
:: Text
-> Text
-> DeleteFacet
deleteFacet pSchemaARN_ pName_ =
DeleteFacet' {_dfSchemaARN = pSchemaARN_, _dfName = pName_}
dfSchemaARN :: Lens' DeleteFacet Text
dfSchemaARN = lens _dfSchemaARN (\ s a -> s{_dfSchemaARN = a})
dfName :: Lens' DeleteFacet Text
dfName = lens _dfName (\ s a -> s{_dfName = a})
instance AWSRequest DeleteFacet where
type Rs DeleteFacet = DeleteFacetResponse
request = putJSON cloudDirectory
response
= receiveEmpty
(\ s h x ->
DeleteFacetResponse' <$> (pure (fromEnum s)))
instance Hashable DeleteFacet where
instance NFData DeleteFacet where
instance ToHeaders DeleteFacet where
toHeaders DeleteFacet'{..}
= mconcat ["x-amz-data-partition" =# _dfSchemaARN]
instance ToJSON DeleteFacet where
toJSON DeleteFacet'{..}
= object (catMaybes [Just ("Name" .= _dfName)])
instance ToPath DeleteFacet where
toPath
= const
"/amazonclouddirectory/2017-01-11/facet/delete"
instance ToQuery DeleteFacet where
toQuery = const mempty
newtype DeleteFacetResponse = DeleteFacetResponse'
{ _dfrsResponseStatus :: Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
deleteFacetResponse
:: Int
-> DeleteFacetResponse
deleteFacetResponse pResponseStatus_ =
DeleteFacetResponse' {_dfrsResponseStatus = pResponseStatus_}
dfrsResponseStatus :: Lens' DeleteFacetResponse Int
dfrsResponseStatus = lens _dfrsResponseStatus (\ s a -> s{_dfrsResponseStatus = a})
instance NFData DeleteFacetResponse where