{-# 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.AlexaBusiness.AssociateSkillGroupWithRoom
(
associateSkillGroupWithRoom
, AssociateSkillGroupWithRoom
, asgwrSkillGroupARN
, asgwrRoomARN
, associateSkillGroupWithRoomResponse
, AssociateSkillGroupWithRoomResponse
, asgwrrsResponseStatus
) where
import Network.AWS.AlexaBusiness.Types
import Network.AWS.AlexaBusiness.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data AssociateSkillGroupWithRoom = AssociateSkillGroupWithRoom'
{ _asgwrSkillGroupARN :: !(Maybe Text)
, _asgwrRoomARN :: !(Maybe Text)
} deriving (Eq, Read, Show, Data, Typeable, Generic)
associateSkillGroupWithRoom
:: AssociateSkillGroupWithRoom
associateSkillGroupWithRoom =
AssociateSkillGroupWithRoom'
{_asgwrSkillGroupARN = Nothing, _asgwrRoomARN = Nothing}
asgwrSkillGroupARN :: Lens' AssociateSkillGroupWithRoom (Maybe Text)
asgwrSkillGroupARN = lens _asgwrSkillGroupARN (\ s a -> s{_asgwrSkillGroupARN = a})
asgwrRoomARN :: Lens' AssociateSkillGroupWithRoom (Maybe Text)
asgwrRoomARN = lens _asgwrRoomARN (\ s a -> s{_asgwrRoomARN = a})
instance AWSRequest AssociateSkillGroupWithRoom where
type Rs AssociateSkillGroupWithRoom =
AssociateSkillGroupWithRoomResponse
request = postJSON alexaBusiness
response
= receiveEmpty
(\ s h x ->
AssociateSkillGroupWithRoomResponse' <$>
(pure (fromEnum s)))
instance Hashable AssociateSkillGroupWithRoom where
instance NFData AssociateSkillGroupWithRoom where
instance ToHeaders AssociateSkillGroupWithRoom where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("AlexaForBusiness.AssociateSkillGroupWithRoom" ::
ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON AssociateSkillGroupWithRoom where
toJSON AssociateSkillGroupWithRoom'{..}
= object
(catMaybes
[("SkillGroupArn" .=) <$> _asgwrSkillGroupARN,
("RoomArn" .=) <$> _asgwrRoomARN])
instance ToPath AssociateSkillGroupWithRoom where
toPath = const "/"
instance ToQuery AssociateSkillGroupWithRoom where
toQuery = const mempty
newtype AssociateSkillGroupWithRoomResponse = AssociateSkillGroupWithRoomResponse'
{ _asgwrrsResponseStatus :: Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
associateSkillGroupWithRoomResponse
:: Int
-> AssociateSkillGroupWithRoomResponse
associateSkillGroupWithRoomResponse pResponseStatus_ =
AssociateSkillGroupWithRoomResponse'
{_asgwrrsResponseStatus = pResponseStatus_}
asgwrrsResponseStatus :: Lens' AssociateSkillGroupWithRoomResponse Int
asgwrrsResponseStatus = lens _asgwrrsResponseStatus (\ s a -> s{_asgwrrsResponseStatus = a})
instance NFData AssociateSkillGroupWithRoomResponse
where